---
Fuzzer filename: '/src/strongswan/fuzz/fuzz_vici.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/fuzz/../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/strongswan/fuzz/fuzz_vici.c'
      linkageType:     externalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          143
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create
        - vici_message_create_from_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz_vici.c:43,9'
          Dst:             chunk_create
        - Src:             'fuzz_vici.c:44,8'
          Dst:             vici_message_create_from_data
    - functionName:    LLVMFuzzerInitialize
      functionSourceFile: '/src/strongswan/fuzz/fuzz_vici.c'
      linkageType:     externalLinkage
      functionLinenumber: 22
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbg_default_set_level
        - libcharon_init
        - library_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fuzz_vici.c:23,2'
          Dst:             dbg_default_set_level
        - Src:             'fuzz_vici.c:24,2'
          Dst:             library_init
        - Src:             'fuzz_vici.c:25,2'
          Dst:             libcharon_init
    - functionName:    unregister_plugins
      functionSourceFile: '/src/strongswan/src/libcharon/./plugin_constructors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - plugin_constructor_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './plugin_constructors.c:34,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:35,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:36,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:37,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:38,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:39,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:40,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:41,2'
          Dst:             plugin_constructor_register
    - functionName:    register_plugins
      functionSourceFile: '/src/strongswan/src/libcharon/./plugin_constructors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - attr_plugin_create
        - counters_plugin_create
        - eap_radius_plugin_create
        - kernel_netlink_plugin_create
        - plugin_constructor_register
        - resolve_plugin_create
        - socket_default_plugin_create
        - updown_plugin_create
        - vici_plugin_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './plugin_constructors.c:21,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:21,2'
          Dst:             attr_plugin_create
        - Src:             './plugin_constructors.c:22,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:22,2'
          Dst:             kernel_netlink_plugin_create
        - Src:             './plugin_constructors.c:23,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:23,2'
          Dst:             resolve_plugin_create
        - Src:             './plugin_constructors.c:24,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:24,2'
          Dst:             socket_default_plugin_create
        - Src:             './plugin_constructors.c:25,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:25,2'
          Dst:             vici_plugin_create
        - Src:             './plugin_constructors.c:26,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:26,2'
          Dst:             updown_plugin_create
        - Src:             './plugin_constructors.c:27,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:27,2'
          Dst:             eap_radius_plugin_create
        - Src:             './plugin_constructors.c:28,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:28,2'
          Dst:             counters_plugin_create
    - functionName:    set_level
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 703
      functionLinenumberEnd: 734
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          179
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'daemon.c:712,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    set_default_loggers
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 677
      functionLinenumberEnd: 699
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          108
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - calloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:690,19'
          Dst:             calloc
    - functionName:    calloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_logger_entry_match
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:315,31'
          Dst:             streq
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    strcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    49
      BranchProfiles:  []
      Callsites:       []
    - functionName:    logger_entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          104
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'daemon.c:271,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_logger_entry
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          131
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - file_logger_create
        - get_syslog_facility
        - logger_entry_destroy
        - strdup
        - sys_logger_create
      functionUses:    3
      BranchProfiles:
        - Branch String:   'daemon.c:384,3'
          Branch Sides:    []
      Callsites:
        - Src:             'daemon.c:380,3'
          Dst:             strdup
        - Src:             'daemon.c:387,26'
          Dst:             file_logger_create
        - Src:             'daemon.c:392,13'
          Dst:             get_syslog_facility
        - Src:             'daemon.c:391,25'
          Dst:             sys_logger_create
        - Src:             'daemon.c:405,6'
          Dst:             logger_entry_destroy
    - functionName:    strdup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    98
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_syslog_facility
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          37
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - streq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:355,6'
          Dst:             streq
        - Src:             'daemon.c:359,11'
          Dst:             streq
    - functionName:    add_custom_logger
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 465
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_logger_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:459,10'
          Dst:             get_logger_entry
    - functionName:    logger_entry_unregister_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - logger_entry_destroy
      functionUses:    1
      BranchProfiles:
        - Branch String:   'daemon.c:292,2'
          Branch Sides:    []
      Callsites:
        - Src:             'daemon.c:305,2'
          Dst:             logger_entry_destroy
    - functionName:    add_file_logger
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_logger_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:442,10'
          Dst:             get_logger_entry
    - functionName:    add_sys_logger
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_logger_entry
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:426,10'
          Dst:             get_logger_entry
    - functionName:    load_custom_logger
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 600
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          126
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - add_custom_logger
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:581,18'
          Dst:             add_custom_logger
    - functionName:    load_file_logger
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 568
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          302
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - add_file_logger
        - file_logger_time_precision_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:526,27'
          Dst:             file_logger_time_precision_parse
        - Src:             'daemon.c:550,16'
          Dst:             add_file_logger
    - functionName:    load_sys_logger
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          179
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_sys_logger
        - get_syslog_facility
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:480,6'
          Dst:             get_syslog_facility
        - Src:             'daemon.c:485,15'
          Dst:             add_sys_logger
    - functionName:    handle_syslog_identifier
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          84
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - closelog
        - openlog
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:333,5'
          Dst:             streq
        - Src:             'daemon.c:335,4'
          Dst:             closelog
        - Src:             'daemon.c:337,4'
          Dst:             openlog
        - Src:             'daemon.c:342,3'
          Dst:             closelog
    - functionName:    closelog
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openlog
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_loggers
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 604
      functionLinenumberEnd: 673
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          341
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - add_file_logger
        - add_sys_logger
        - handle_syslog_identifier
        - linked_list_create
        - load_custom_logger
        - load_file_logger
        - load_sys_logger
        - logger_entry_unregister_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:611,2'
          Dst:             handle_syslog_identifier
        - Src:             'daemon.c:613,18'
          Dst:             linked_list_create
        - Src:             'daemon.c:618,3'
          Dst:             load_sys_logger
        - Src:             'daemon.c:626,3'
          Dst:             load_file_logger
        - Src:             'daemon.c:632,3'
          Dst:             load_custom_logger
        - Src:             'daemon.c:641,16'
          Dst:             add_sys_logger
        - Src:             'daemon.c:642,17'
          Dst:             add_file_logger
        - Src:             'daemon.c:662,16'
          Dst:             add_sys_logger
        - Src:             'daemon.c:670,2'
          Dst:             logger_entry_unregister_destroy
    - functionName:    start
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 866
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - run_scripts
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:872,2'
          Dst:             run_scripts
    - functionName:    run_scripts
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 799
      functionLinenumberEnd: 862
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          178
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - array_create_enumerator
        - array_destroy
        - array_insert_create
        - ferror
        - fgets
        - pclose
        - popen
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:818,3'
          Dst:             array_insert_create
        - Src:             'daemon.c:822,15'
          Dst:             array_create_enumerator
        - Src:             'daemon.c:827,9'
          Dst:             popen
        - Src:             'daemon.c:837,10'
          Dst:             fgets
        - Src:             'daemon.c:839,10'
          Dst:             ferror
        - Src:             'daemon.c:848,18'
          Dst:             strlen
        - Src:             'daemon.c:856,4'
          Dst:             pclose
        - Src:             'daemon.c:861,2'
          Dst:             array_destroy
    - functionName:    popen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fgets
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ferror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    138
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sa_managers_cb
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 903
      functionLinenumberEnd: 919
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          107
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - child_sa_manager_create
        - ike_sa_manager_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:906,33'
          Dst:             ike_sa_manager_create
        - Src:             'daemon.c:911,35'
          Dst:             child_sa_manager_create
    - functionName:    sender_receiver_cb
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 880
      functionLinenumberEnd: 896
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          107
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - receiver_create
        - sender_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:883,27'
          Dst:             receiver_create
        - Src:             'daemon.c:888,25'
          Dst:             sender_create
    - functionName:    initialize
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 923
      functionLinenumberEnd: 963
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          206
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - start_action_job_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:951,52'
          Dst:             start_action_job_create
    - functionName:    dbg_bus
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libcharon_init
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1029
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         18
      ICount:          131
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - daemon_create
        - getpid
        - libcharon_init
        - srandom
        - time
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:1040,9'
          Dst:             daemon_create
        - Src:             'daemon.c:1043,10'
          Dst:             time
        - Src:             'daemon.c:1043,23'
          Dst:             getpid
        - Src:             'daemon.c:1043,2'
          Dst:             srandom
        - Src:             'daemon.c:1050,4'
          Dst:             libcharon_init
    - functionName:    daemon_create
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 969
      functionLinenumberEnd: 998
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          148
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - attribute_manager_create
        - backend_manager_create
        - bus_create
        - controller_create
        - eap_manager_create
        - kernel_handler_create
        - kernel_interface_create
        - linked_list_create
        - mutex_create
        - redirect_manager_create
        - shunt_manager_create
        - socket_manager_create
        - trap_manager_create
        - xauth_manager_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:972,2'
          Dst:             bus_create
        - Src:             'daemon.c:972,2'
          Dst:             linked_list_create
        - Src:             'daemon.c:972,2'
          Dst:             mutex_create
        - Src:             'daemon.c:986,24'
          Dst:             kernel_interface_create
        - Src:             'daemon.c:987,28'
          Dst:             attribute_manager_create
        - Src:             'daemon.c:988,28'
          Dst:             controller_create
        - Src:             'daemon.c:989,21'
          Dst:             eap_manager_create
        - Src:             'daemon.c:990,23'
          Dst:             xauth_manager_create
        - Src:             'daemon.c:991,26'
          Dst:             backend_manager_create
        - Src:             'daemon.c:992,24'
          Dst:             socket_manager_create
        - Src:             'daemon.c:993,23'
          Dst:             trap_manager_create
        - Src:             'daemon.c:994,24'
          Dst:             shunt_manager_create
        - Src:             'daemon.c:995,26'
          Dst:             redirect_manager_create
        - Src:             'daemon.c:996,25'
          Dst:             kernel_handler_create
    - functionName:    time
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getpid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    srandom
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 740
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         51
      ICount:          538
      EdgeCount:       67
      CyclomaticComplexity: 18
      functionsReached:
        - logger_entry_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:789,2'
          Dst:             logger_entry_destroy
    - functionName:    libcharon_deinit
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1005
      functionLinenumberEnd: 1023
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - destroy
        - run_scripts
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:1014,2'
          Dst:             run_scripts
        - Src:             'daemon.c:1021,2'
          Dst:             destroy
    - functionName:    libcharon_init_register
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:215,3'
          Dst:             fprintf
    - functionName:    fprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    59
      BranchProfiles:  []
      Callsites:       []
    - functionName:    register_custom_logger
      functionSourceFile: '/src/strongswan/src/libcharon/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'daemon.c:191,3'
          Dst:             fprintf
    - functionName:    ts_array_equals
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          109
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - array_count
        - array_create_enumerator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:319,6'
          Dst:             array_count
        - Src:             'kernel/kernel_interface.c:319,24'
          Dst:             array_count
        - Src:             'kernel/kernel_interface.c:324,7'
          Dst:             array_create_enumerator
        - Src:             'kernel/kernel_interface.c:325,7'
          Dst:             array_create_enumerator
    - functionName:    entry_hash_selectors
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          102
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - chunk_hash
        - chunk_hash_inc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:241,24'
          Dst:             chunk_create
        - Src:             'kernel/kernel_interface.c:242,20'
          Dst:             chunk_create
        - Src:             'kernel/kernel_interface.c:243,21'
          Dst:             chunk_create
        - Src:             'kernel/kernel_interface.c:244,18'
          Dst:             chunk_create
        - Src:             'kernel/kernel_interface.c:244,7'
          Dst:             chunk_hash
        - Src:             'kernel/kernel_interface.c:243,6'
          Dst:             chunk_hash_inc
        - Src:             'kernel/kernel_interface.c:242,5'
          Dst:             chunk_hash_inc
        - Src:             'kernel/kernel_interface.c:241,9'
          Dst:             chunk_hash_inc
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_ts_array
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:290,15'
          Dst:             array_create_enumerator
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1030
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          182
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:1046,2'
          Dst:             array_destroy
    - functionName:    lookup_algorithm
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1025
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - short
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          140
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    register_algorithm
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 982
      functionLinenumberEnd: 995
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - short
        - int
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          78
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:985,2'
          Dst:             strdup
    - functionName:    tun
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 962
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          114
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    call_roam
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 949
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    roam
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 958
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - call_roam
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:956,2'
          Dst:             call_roam
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 929
      functionLinenumberEnd: 945
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          124
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mapping
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 907
      functionLinenumberEnd: 923
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          118
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    expire
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 886
      functionLinenumberEnd: 902
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          120
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    acquire
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 867
      functionLinenumberEnd: 881
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          112
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_listener
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 858
      functionLinenumberEnd: 862
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_listener
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 854
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_net_interface
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 838
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_net_interface
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 826
      functionLinenumberEnd: 834
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_ipsec_interface
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 814
      functionLinenumberEnd: 822
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_ipsec_interface
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 802
      functionLinenumberEnd: 810
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_address_by_ts
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          237
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - create_address_enumerator
        - host_create_any
        - host_create_from_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:731,10'
          Dst:             host_create_from_string
        - Src:             'kernel/kernel_interface.c:735,10'
          Dst:             host_create_from_string
        - Src:             'kernel/kernel_interface.c:740,9'
          Dst:             host_create_any
        - Src:             'kernel/kernel_interface.c:752,10'
          Dst:             create_address_enumerator
        - Src:             'kernel/kernel_interface.c:771,11'
          Dst:             create_address_enumerator
    - functionName:    create_address_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 612
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - enumerator_create_empty
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:615,10'
          Dst:             enumerator_create_empty
    - functionName:    all_interfaces_usable
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_interface_usable
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 706
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - linked_list_match_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:704,9'
          Dst:             linked_list_match_str
    - functionName:    enable_udp_decap
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bypass_socket
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 685
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    del_route
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 675
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - char
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_route
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 662
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - char
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    del_ip
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 643
      functionLinenumberEnd: 649
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_ip
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 639
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_local_subnet_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - enumerator_create_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:625,10'
          Dst:             enumerator_create_empty
    - functionName:    get_interface
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 602
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_nexthop
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 592
      functionLinenumberEnd: 598
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_source_addr
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 587
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flush_policies
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    del_policy
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 561
      functionLinenumberEnd: 567
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    query_policy
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 556
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_policy
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flush_sas
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    del_sa
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 524
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    query_sa
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update_sa
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 501
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_sa
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    release_reqid
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          121
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - array_insert_create_value
        - reqid_entry_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:471,3'
          Dst:             array_insert_create_value
        - Src:             'kernel/kernel_interface.c:475,3'
          Dst:             reqid_entry_destroy
    - functionName:    reqid_entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_destroy_offset
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:228,2'
          Dst:             array_destroy_offset
        - Src:             'kernel/kernel_interface.c:229,2'
          Dst:             array_destroy_offset
    - functionName:    ref_reqid
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          83
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sec_labels_equal
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/selectors/sec_label.h'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    entry_equals_selectors
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          113
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - sec_labels_equal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:263,6'
          Dst:             sec_labels_equal
    - functionName:    array_from_ts_list
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create
        - array_insert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:358,10'
          Dst:             array_create
        - Src:             'kernel/kernel_interface.c:363,3'
          Dst:             array_insert
    - functionName:    alloc_reqid
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          290
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - array_from_ts_list
        - array_remove
        - entry_equals_selectors
        - get_features
        - reqid_entry_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:378,2'
          Dst:             array_from_ts_list
        - Src:             'kernel/kernel_interface.c:378,2'
          Dst:             array_from_ts_list
        - Src:             'kernel/kernel_interface.c:405,27'
          Dst:             get_features
        - Src:             'kernel/kernel_interface.c:406,3'
          Dst:             entry_equals_selectors
        - Src:             'kernel/kernel_interface.c:408,3'
          Dst:             reqid_entry_destroy
        - Src:             'kernel/kernel_interface.c:416,4'
          Dst:             reqid_entry_destroy
        - Src:             'kernel/kernel_interface.c:422,9'
          Dst:             array_remove
        - Src:             'kernel/kernel_interface.c:427,6'
          Dst:             reqid_entry_destroy
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_cpi
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_spi
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals_reqid_by_ts
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - entry_equals_selectors
        - ts_array_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:341,6'
          Dst:             ts_array_equals
        - Src:             'kernel/kernel_interface.c:342,3'
          Dst:             ts_array_equals
        - Src:             'kernel/kernel_interface.c:344,10'
          Dst:             entry_equals_selectors
    - functionName:    hash_reqid_by_ts
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - entry_hash_selectors
        - hash_ts_array
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:307,8'
          Dst:             entry_hash_selectors
        - Src:             'kernel/kernel_interface.c:306,5'
          Dst:             hash_ts_array
        - Src:             'kernel/kernel_interface.c:305,9'
          Dst:             hash_ts_array
    - functionName:    equals_reqid
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_reqid
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:271,20'
          Dst:             chunk_create
        - Src:             'kernel/kernel_interface.c:271,9'
          Dst:             chunk_hash
    - functionName:    kernel_interface_create
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_interface.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1056
      functionLinenumberEnd: 1147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         18
      ICount:          328
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - enumerator_create_token
        - equals_reqid
        - equals_reqid_by_ts
        - hash_reqid
        - hash_reqid_by_ts
        - hashtable_create
        - linked_list_create
        - mutex_create
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_interface.c:1060,2'
          Dst:             mutex_create
        - Src:             'kernel/kernel_interface.c:1060,2'
          Dst:             linked_list_create
        - Src:             'kernel/kernel_interface.c:1060,2'
          Dst:             hashtable_create
        - Src:             'kernel/kernel_interface.c:1060,2'
          Dst:             hash_reqid
        - Src:             'kernel/kernel_interface.c:1060,2'
          Dst:             equals_reqid
        - Src:             'kernel/kernel_interface.c:1060,2'
          Dst:             hashtable_create
        - Src:             'kernel/kernel_interface.c:1060,2'
          Dst:             hash_reqid_by_ts
        - Src:             'kernel/kernel_interface.c:1060,2'
          Dst:             equals_reqid_by_ts
        - Src:             'kernel/kernel_interface.c:1060,2'
          Dst:             mutex_create
        - Src:             'kernel/kernel_interface.c:1060,2'
          Dst:             linked_list_create
        - Src:             'kernel/kernel_interface.c:1134,16'
          Dst:             enumerator_create_token
        - Src:             'kernel/kernel_interface.c:1139,27'
          Dst:             linked_list_create
        - Src:             'kernel/kernel_interface.c:1142,13'
          Dst:             strdup
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    roam
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - roam_job_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_handler.c:146,52'
          Dst:             roam_job_create
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - migrate_job_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_handler.c:135,15'
          Dst:             migrate_job_create
    - functionName:    mapping
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - proto_ip2ike
        - update_sa_job_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_handler.c:115,24'
          Dst:             proto_ip2ike
        - Src:             'kernel/kernel_handler.c:122,15'
          Dst:             update_sa_job_create
    - functionName:    proto_ip2ike
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          30
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'kernel/kernel_handler.c:45,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    expire
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - delete_child_sa_job_create
        - proto_ip2ike
        - rekey_child_sa_job_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_handler.c:93,24'
          Dst:             proto_ip2ike
        - Src:             'kernel/kernel_handler.c:101,13'
          Dst:             delete_child_sa_job_create
        - Src:             'kernel/kernel_handler.c:106,13'
          Dst:             rekey_child_sa_job_create
    - functionName:    acquire
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          124
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - acquire_job_create
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel/kernel_handler.c:63,3'
          Dst:             snprintf
        - Src:             'kernel/kernel_handler.c:68,3'
          Dst:             snprintf
        - Src:             'kernel/kernel_handler.c:72,3'
          Dst:             snprintf
        - Src:             'kernel/kernel_handler.c:85,18'
          Dst:             acquire_job_create
    - functionName:    snprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    125
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kernel_handler_create
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    cookie_verify
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          147
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
        - chunk_equals_const
        - chunk_free
        - cookie_build
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'network/receiver.c:233,8'
          Dst:             time_monotonic
        - Src:             'network/receiver.c:247,12'
          Dst:             chunk_create
        - Src:             'network/receiver.c:251,12'
          Dst:             chunk_create
        - Src:             'network/receiver.c:255,7'
          Dst:             cookie_build
        - Src:             'network/receiver.c:259,6'
          Dst:             chunk_equals_const
        - Src:             'network/receiver.c:261,3'
          Dst:             chunk_free
        - Src:             'network/receiver.c:264,2'
          Dst:             chunk_free
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cookie_build
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          243
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'network/receiver.c:212,10'
          Dst:             chunk_create
        - Src:             'network/receiver.c:212,10'
          Dst:             chunk_create
        - Src:             'network/receiver.c:212,10'
          Dst:             chunk_length
        - Src:             'network/receiver.c:212,10'
          Dst:             chunk_create
        - Src:             'network/receiver.c:212,10'
          Dst:             chunk_create
        - Src:             'network/receiver.c:212,10'
          Dst:             chunk_create_cat
        - Src:             'network/receiver.c:214,9'
          Dst:             chunk_create
        - Src:             'network/receiver.c:219,12'
          Dst:             chunk_create
        - Src:             'network/receiver.c:219,12'
          Dst:             chunk_length
        - Src:             'network/receiver.c:219,12'
          Dst:             chunk_create
        - Src:             'network/receiver.c:219,12'
          Dst:             chunk_create_cat
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    untoh16
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:162,9'
          Dst:             ntohs
    - functionName:    ntohs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    41
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_half_open_count
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    explicit_bzero
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    54
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_cookie
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          117
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - cookie_verify
        - untoh16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'network/receiver.c:284,3'
          Dst:             untoh16
        - Src:             'network/receiver.c:291,7'
          Dst:             cookie_verify
    - functionName:    cookie_required
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          141
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_hash
        - get_half_open_count
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'network/receiver.c:340,14'
          Dst:             chunk_hash
        - Src:             'network/receiver.c:342,6'
          Dst:             get_half_open_count
    - functionName:    drop_ike_sa_init
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          300
      EdgeCount:       59
      CyclomaticComplexity: 17
      functionsReached:
        - check_cookie
        - chunk_create
        - chunk_free
        - cookie_build
        - cookie_required
        - get_half_open_count
        - memcpy_noop
        - memwipe
        - send_notify
        - time_monotonic
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'network/receiver.c:376,8'
          Dst:             time_monotonic
        - Src:             'network/receiver.c:380,4'
          Dst:             cookie_required
        - Src:             'network/receiver.c:381,4'
          Dst:             cookie_required
        - Src:             'network/receiver.c:382,4'
          Dst:             check_cookie
        - Src:             'network/receiver.c:402,5'
          Dst:             memcpy_noop
        - Src:             'network/receiver.c:403,5'
          Dst:             memcpy_noop
        - Src:             'network/receiver.c:404,5'
          Dst:             memwipe
        - Src:             'network/receiver.c:413,9'
          Dst:             chunk_create
        - Src:             'network/receiver.c:412,8'
          Dst:             cookie_build
        - Src:             'network/receiver.c:418,3'
          Dst:             send_notify
        - Src:             'network/receiver.c:419,3'
          Dst:             chunk_free
        - Src:             'network/receiver.c:425,3'
          Dst:             get_half_open_count
        - Src:             'network/receiver.c:435,6'
          Dst:             get_half_open_count
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_notify
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          189
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - message_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'network/receiver.c:179,13'
          Dst:             message_create
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    memcmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    51
      BranchProfiles:  []
      Callsites:       []
    - functionName:    del_esp_cb
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 646
      functionLinenumberEnd: 654
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_esp_cb
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 642
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    receive_packets
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 633
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         93
      ICount:          762
      EdgeCount:       124
      CyclomaticComplexity: 33
      functionsReached:
        - drop_ike_sa_init
        - memeq
        - message_create_from_packet
        - process_message_job_create
        - send_notify
      functionUses:    1
      BranchProfiles:
        - Branch String:   'network/receiver.c:546,2'
          Branch Sides:    []
      Callsites:
        - Src:             'network/receiver.c:515,7'
          Dst:             memeq
        - Src:             'network/receiver.c:536,12'
          Dst:             message_create_from_packet
        - Src:             'network/receiver.c:564,5'
          Dst:             send_notify
        - Src:             'network/receiver.c:572,4'
          Dst:             send_notify
        - Src:             'network/receiver.c:595,4'
          Dst:             drop_ike_sa_init
        - Src:             'network/receiver.c:606,31'
          Dst:             drop_ike_sa_init
        - Src:             'network/receiver.c:624,17'
          Dst:             process_message_job_create
        - Src:             'network/receiver.c:631,18'
          Dst:             process_message_job_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 663
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    receiver_create
      functionSourceFile: '/src/strongswan/src/libcharon/network/receiver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 743
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         19
      ICount:          396
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - callback_job_cancel_thread
        - callback_job_create_with_prio
        - destroy
        - memcpy_noop
        - mutex_create
        - random
        - receive_packets
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'network/receiver.c:671,17'
          Dst:             time_monotonic
        - Src:             'network/receiver.c:673,2'
          Dst:             mutex_create
        - Src:             'network/receiver.c:673,2'
          Dst:             random
        - Src:             'network/receiver.c:720,3'
          Dst:             destroy
        - Src:             'network/receiver.c:727,3'
          Dst:             destroy
        - Src:             'network/receiver.c:733,3'
          Dst:             destroy
        - Src:             'network/receiver.c:736,2'
          Dst:             memcpy_noop
        - Src:             'network/receiver.c:739,11'
          Dst:             callback_job_create_with_prio
        - Src:             'network/receiver.c:739,11'
          Dst:             receive_packets
        - Src:             'network/receiver.c:739,11'
          Dst:             callback_job_cancel_thread
    - functionName:    random
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/network/sender.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flush
      functionSourceFile: '/src/strongswan/src/libcharon/network/sender.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_no_marker
      functionSourceFile: '/src/strongswan/src/libcharon/network/sender.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_
      functionSourceFile: '/src/strongswan/src/libcharon/network/sender.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          282
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - chunk_create_cat
        - chunk_length
        - message_create_from_packet
        - send_no_marker
        - usleep
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'network/sender.c:108,13'
          Dst:             message_create_from_packet
        - Src:             'network/sender.c:118,6'
          Dst:             usleep
        - Src:             'network/sender.c:131,10'
          Dst:             chunk_length
        - Src:             'network/sender.c:131,10'
          Dst:             chunk_create_cat
        - Src:             'network/sender.c:135,2'
          Dst:             send_no_marker
    - functionName:    usleep
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_packets
      functionSourceFile: '/src/strongswan/src/libcharon/network/sender.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          134
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - thread_cancelability
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'network/sender.c:150,3'
          Dst:             thread_cleanup_push
        - Src:             'network/sender.c:151,14'
          Dst:             thread_cancelability
        - Src:             'network/sender.c:155,3'
          Dst:             thread_cancelability
        - Src:             'network/sender.c:156,3'
          Dst:             thread_cleanup_pop
    - functionName:    sender_create
      functionSourceFile: '/src/strongswan/src/libcharon/network/sender.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          129
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - callback_job_cancel_thread
        - callback_job_create_with_prio
        - condvar_create
        - linked_list_create
        - mutex_create
        - send_packets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'network/sender.c:196,2'
          Dst:             linked_list_create
        - Src:             'network/sender.c:196,2'
          Dst:             mutex_create
        - Src:             'network/sender.c:196,2'
          Dst:             condvar_create
        - Src:             'network/sender.c:196,2'
          Dst:             condvar_create
        - Src:             'network/sender.c:218,11'
          Dst:             callback_job_create_with_prio
        - Src:             'network/sender.c:218,11'
          Dst:             send_packets
        - Src:             'network/sender.c:218,11'
          Dst:             callback_job_cancel_thread
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/network/socket_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_socket
      functionSourceFile: '/src/strongswan/src/libcharon/network/socket_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          82
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - create_socket
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'network/socket_manager.c:157,3'
          Dst:             create_socket
    - functionName:    create_socket
      functionSourceFile: '/src/strongswan/src/libcharon/network/socket_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_socket
      functionSourceFile: '/src/strongswan/src/libcharon/network/socket_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - create_socket
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'network/socket_manager.c:142,3'
          Dst:             create_socket
    - functionName:    supported_families
      functionSourceFile: '/src/strongswan/src/libcharon/network/socket_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_port
      functionSourceFile: '/src/strongswan/src/libcharon/network/socket_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sender
      functionSourceFile: '/src/strongswan/src/libcharon/network/socket_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          80
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    receiver
      functionSourceFile: '/src/strongswan/src/libcharon/network/socket_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'network/socket_manager.c:70,2'
          Dst:             thread_cleanup_push
        - Src:             'network/socket_manager.c:72,2'
          Dst:             thread_cleanup_pop
    - functionName:    socket_manager_create
      functionSourceFile: '/src/strongswan/src/libcharon/network/socket_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'network/socket_manager.c:178,2'
          Dst:             linked_list_create
        - Src:             'network/socket_manager.c:178,2'
          Dst:             rwlock_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/acquire_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - kernel_acquire_data_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/jobs/acquire_job.c:48,2'
          Dst:             kernel_acquire_data_destroy
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/acquire_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/acquire_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    acquire_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/acquire_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - kernel_acquire_data_clone
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/jobs/acquire_job.c:72,2'
          Dst:             kernel_acquire_data_clone
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/delete_child_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/delete_child_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/delete_child_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          146
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    delete_child_sa_job_create_id
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/delete_child_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    delete_child_sa_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/delete_child_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          73
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/migrate_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          111
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/migrate_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/migrate_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          295
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - linked_list_create_from_enumerator
      functionUses:    0
      BranchProfiles:
        - Branch String:   'processing/jobs/migrate_job.c:119,3'
          Branch Sides:    []
      Callsites:
        - Src:             'processing/jobs/migrate_job.c:114,10'
          Dst:             linked_list_create_from_enumerator
    - functionName:    migrate_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/migrate_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          97
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/process_message_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/process_message_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          76
      EdgeCount:       35
      CyclomaticComplexity: 19
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'processing/jobs/process_message_job.c:91,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/process_message_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_message_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/process_message_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          171
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/rekey_child_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/rekey_child_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/rekey_child_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          91
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rekey_child_sa_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/rekey_child_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/start_action_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/start_action_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/start_action_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          201
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'processing/jobs/start_action_job.c:66,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    start_action_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/start_action_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/roam_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/roam_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/roam_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          174
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/jobs/roam_job.c:58,9'
          Dst:             linked_list_create
    - functionName:    roam_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/roam_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/update_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/update_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/update_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          73
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update_sa_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/update_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          72
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/eap/eap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_instance
      functionSourceFile: '/src/strongswan/src/libcharon/sa/eap/eap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          136
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_filter_methods
      functionSourceFile: '/src/strongswan/src/libcharon/sa/eap/eap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          184
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/eap/eap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_cleaner
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/eap/eap_manager.c:148,5'
          Dst:             enumerator_create_filter
        - Src:             'sa/eap/eap_manager.c:147,9'
          Dst:             enumerator_create_cleaner
    - functionName:    remove_method
      functionSourceFile: '/src/strongswan/src/libcharon/sa/eap/eap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_method
      functionSourceFile: '/src/strongswan/src/libcharon/sa/eap/eap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          74
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eap_manager_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/eap/eap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/eap/eap_manager.c:196,2'
          Dst:             linked_list_create
        - Src:             'sa/eap/eap_manager.c:196,2'
          Dst:             rwlock_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/xauth/xauth_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    create_instance
      functionSourceFile: '/src/strongswan/src/libcharon/sa/xauth/xauth_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          202
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - strchr
        - streq
        - strndup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/xauth/xauth_manager.c:118,13'
          Dst:             strchr
        - Src:             'sa/xauth/xauth_manager.c:121,11'
          Dst:             strndup
        - Src:             'sa/xauth/xauth_manager.c:130,16'
          Dst:             streq
        - Src:             'sa/xauth/xauth_manager.c:134,40'
          Dst:             streq
    - functionName:    strchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    36
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strndup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_method
      functionSourceFile: '/src/strongswan/src/libcharon/sa/xauth/xauth_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_method
      functionSourceFile: '/src/strongswan/src/libcharon/sa/xauth/xauth_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          74
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xauth_manager_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/xauth/xauth_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/xauth/xauth_manager.c:167,2'
          Dst:             linked_list_create
        - Src:             'sa/xauth/xauth_manager.c:167,2'
          Dst:             rwlock_create
    - functionName:    destroy_all_entries
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2443
      functionLinenumberEnd: 2456
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - create_table_enumerator
        - remove_and_destroy_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2448,15'
          Dst:             create_table_enumerator
        - Src:             'sa/ike_sa_manager.c:2452,3'
          Dst:             remove_and_destroy_entry
    - functionName:    create_table_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 604
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_and_destroy_entry
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2421
      functionLinenumberEnd: 2437
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          97
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - entry_destroy
        - remove_connected_peers
        - remove_entry_at
        - remove_half_open
        - remove_init_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2424,3'
          Dst:             remove_half_open
        - Src:             'sa/ike_sa_manager.c:2429,3'
          Dst:             remove_connected_peers
        - Src:             'sa/ike_sa_manager.c:2433,3'
          Dst:             remove_init_hash
        - Src:             'sa/ike_sa_manager.c:2435,2'
          Dst:             remove_entry_at
        - Src:             'sa/ike_sa_manager.c:2436,2'
          Dst:             entry_destroy
    - functionName:    remove_half_open
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 860
      functionLinenumberEnd: 904
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          239
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_equals
        - chunk_hash
        - half_open_destroy
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:867,8'
          Dst:             chunk_hash
        - Src:             'sa/ike_sa_manager.c:876,7'
          Dst:             chunk_equals
        - Src:             'sa/ike_sa_manager.c:894,5'
          Dst:             half_open_destroy
    - functionName:    remove_connected_peers
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1058
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          292
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_hash
        - chunk_hash_inc
        - connected_peers_destroy
        - connected_peers_match
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1011,33'
          Dst:             chunk_hash
        - Src:             'sa/ike_sa_manager.c:1011,8'
          Dst:             chunk_hash_inc
        - Src:             'sa/ike_sa_manager.c:1021,7'
          Dst:             connected_peers_match
        - Src:             'sa/ike_sa_manager.c:1049,5'
          Dst:             connected_peers_destroy
    - functionName:    remove_init_hash
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1195
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          138
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
        - chunk_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1200,8'
          Dst:             chunk_hash
        - Src:             'sa/ike_sa_manager.c:1209,7'
          Dst:             chunk_equals
    - functionName:    remove_entry_at
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          149
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - unlock_single_segment
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:715,4'
          Dst:             unlock_single_segment
    - functionName:    entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          123
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:123,2'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unlock_single_segment
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    connected_peers_match
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          70
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    connected_peers_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    half_open_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:219,2'
          Dst:             chunk_free
    - functionName:    enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 588
      functionLinenumberEnd: 598
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - unlock_single_segment
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:595,3'
          Dst:             unlock_single_segment
    - functionName:    enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 584
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          245
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - lock_single_segment
        - unlock_single_segment
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:568,5'
          Dst:             lock_single_segment
        - Src:             'sa/ike_sa_manager.c:577,4'
          Dst:             unlock_single_segment
    - functionName:    lock_single_segment
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2514
      functionLinenumberEnd: 2544
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          195
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - array_destroy
        - destroy_all_entries
        - lock_all_segments
        - unlock_all_segments
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2518,2'
          Dst:             lock_all_segments
        - Src:             'sa/ike_sa_manager.c:2519,2'
          Dst:             destroy_all_entries
        - Src:             'sa/ike_sa_manager.c:2520,2'
          Dst:             unlock_all_segments
        - Src:             'sa/ike_sa_manager.c:2538,2'
          Dst:             array_destroy
    - functionName:    lock_all_segments
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          55
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unlock_all_segments
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          55
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flush
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2460
      functionLinenumberEnd: 2510
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          241
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - create_table_enumerator
        - lock_all_segments
        - remove_and_destroy_entry
        - unlock_all_segments
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2473,2'
          Dst:             lock_all_segments
        - Src:             'sa/ike_sa_manager.c:2475,15'
          Dst:             create_table_enumerator
        - Src:             'sa/ike_sa_manager.c:2491,16'
          Dst:             create_table_enumerator
        - Src:             'sa/ike_sa_manager.c:2504,4'
          Dst:             remove_and_destroy_entry
        - Src:             'sa/ike_sa_manager.c:2509,2'
          Dst:             unlock_all_segments
    - functionName:    set_spi_cb
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2409
      functionLinenumberEnd: 2414
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_half_open_count
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2364
      functionLinenumberEnd: 2398
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          171
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_equals
        - chunk_hash
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2374,9'
          Dst:             chunk_hash
        - Src:             'sa/ike_sa_manager.c:2383,8'
          Dst:             chunk_equals
    - functionName:    get_count
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2358
      functionLinenumberEnd: 2359
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_reset_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1914
      functionLinenumberEnd: 1916
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_enumerator_filter_skip
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1892
      functionLinenumberEnd: 1910
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_enumerator_filter_wait
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1871
      functionLinenumberEnd: 1888
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          100
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - wait_for_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1880,7'
          Dst:             wait_for_entry
    - functionName:    wait_for_entry
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 802
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          109
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1920
      functionLinenumberEnd: 1923
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - create_table_enumerator
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1921,34'
          Dst:             create_table_enumerator
        - Src:             'sa/ike_sa_manager.c:1921,9'
          Dst:             enumerator_create_filter
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    checkout_by_name
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1689
      functionLinenumberEnd: 1744
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          193
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - create_table_enumerator
        - streq
        - thread_current
        - wait_for_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1698,15'
          Dst:             create_table_enumerator
        - Src:             'sa/ike_sa_manager.c:1701,7'
          Dst:             wait_for_entry
        - Src:             'sa/ike_sa_manager.c:1709,10'
          Dst:             streq
        - Src:             'sa/ike_sa_manager.c:1719,9'
          Dst:             streq
        - Src:             'sa/ike_sa_manager.c:1727,26'
          Dst:             thread_current
    - functionName:    checkout_by_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1649
      functionLinenumberEnd: 1684
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          119
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - create_table_enumerator
        - thread_current
        - wait_for_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1657,15'
          Dst:             create_table_enumerator
        - Src:             'sa/ike_sa_manager.c:1660,7'
          Dst:             wait_for_entry
        - Src:             'sa/ike_sa_manager.c:1665,26'
          Dst:             thread_current
    - functionName:    has_contact
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2330
      functionLinenumberEnd: 2353
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          136
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_hash
        - chunk_hash_inc
        - connected_peers_match
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2337,8'
          Dst:             chunk_hash
        - Src:             'sa/ike_sa_manager.c:2336,8'
          Dst:             chunk_hash_inc
        - Src:             'sa/ike_sa_manager.c:2344,7'
          Dst:             connected_peers_match
    - functionName:    _cb_id_matches
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 931
      functionLinenumberEnd: 935
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_connected_peers
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 942
      functionLinenumberEnd: 994
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          302
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_hash
        - chunk_hash_inc
        - connected_peers_match
        - linked_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:953,33'
          Dst:             chunk_hash
        - Src:             'sa/ike_sa_manager.c:953,8'
          Dst:             chunk_hash_inc
        - Src:             'sa/ike_sa_manager.c:962,7'
          Dst:             connected_peers_match
        - Src:             'sa/ike_sa_manager.c:978,3'
          Dst:             linked_list_create
    - functionName:    adopt_children_and_vips
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2163
      functionLinenumberEnd: 2203
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          216
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_entry
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 677
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          116
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - ike_sa_id_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:656,8'
          Dst:             ike_sa_id_hash
    - functionName:    ike_sa_id_hash
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_enumerator_cleanup
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2117
      functionLinenumberEnd: 2119
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    checkin
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1928
      functionLinenumberEnd: 2043
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         45
      ICount:          482
      EdgeCount:       60
      CyclomaticComplexity: 17
      functionsReached:
        - create_and_put_entry
        - get_entry_by_sa
        - lock_single_segment
        - put_connected_peers
        - put_half_open
        - remove_half_open
        - thread_current
        - unlock_single_segment
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1954,6'
          Dst:             get_entry_by_sa
        - Src:             'sa/ike_sa_manager.c:1966,4'
          Dst:             remove_half_open
        - Src:             'sa/ike_sa_manager.c:1972,4'
          Dst:             remove_half_open
        - Src:             'sa/ike_sa_manager.c:1976,4'
          Dst:             put_half_open
        - Src:             'sa/ike_sa_manager.c:1985,4'
          Dst:             put_half_open
        - Src:             'sa/ike_sa_manager.c:1992,13'
          Dst:             create_and_put_entry
        - Src:             'sa/ike_sa_manager.c:2013,26'
          Dst:             thread_current
        - Src:             'sa/ike_sa_manager.c:2014,5'
          Dst:             unlock_single_segment
        - Src:             'sa/ike_sa_manager.c:2023,5'
          Dst:             lock_single_segment
        - Src:             'sa/ike_sa_manager.c:2037,3'
          Dst:             put_connected_peers
        - Src:             'sa/ike_sa_manager.c:2040,2'
          Dst:             unlock_single_segment
    - functionName:    get_entry_by_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 769
      functionLinenumberEnd: 771
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - entry_match_by_sa
        - get_entry_by_match_function
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:770,9'
          Dst:             get_entry_by_match_function
        - Src:             'sa/ike_sa_manager.c:770,9'
          Dst:             entry_match_by_sa
    - functionName:    put_half_open
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 809
      functionLinenumberEnd: 853
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          254
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create_clone
        - chunk_equals
        - chunk_hash
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:817,8'
          Dst:             chunk_hash
        - Src:             'sa/ike_sa_manager.c:826,7'
          Dst:             chunk_equals
        - Src:             'sa/ike_sa_manager.c:835,3'
          Dst:             chunk_create_clone
    - functionName:    create_and_put_entry
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 912
      functionLinenumberEnd: 926
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          104
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - entry_create
        - put_entry
        - put_half_open
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:916,11'
          Dst:             entry_create
        - Src:             'sa/ike_sa_manager.c:924,3'
          Dst:             put_half_open
        - Src:             'sa/ike_sa_manager.c:926,9'
          Dst:             put_entry
    - functionName:    entry_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - condvar_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:139,2'
          Dst:             condvar_create
    - functionName:    put_entry
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 623
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          101
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ike_sa_id_hash
        - lock_single_segment
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:631,8'
          Dst:             ike_sa_id_hash
        - Src:             'sa/ike_sa_manager.c:634,2'
          Dst:             lock_single_segment
    - functionName:    entry_match_by_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_entry_by_match_function
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          94
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ike_sa_id_hash
        - lock_single_segment
        - unlock_single_segment
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:732,8'
          Dst:             ike_sa_id_hash
        - Src:             'sa/ike_sa_manager.c:735,2'
          Dst:             lock_single_segment
        - Src:             'sa/ike_sa_manager.c:748,2'
          Dst:             unlock_single_segment
    - functionName:    enforce_replace
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2211
      functionLinenumberEnd: 2237
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          115
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - adopt_children_and_vips
        - delete_ike_sa_job_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2222,4'
          Dst:             adopt_children_and_vips
        - Src:             'sa/ike_sa_manager.c:2229,4'
          Dst:             delete_ike_sa_job_create
    - functionName:    checkin_and_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2047
      functionLinenumberEnd: 2111
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          210
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - entry_destroy
        - get_entry_by_sa
        - remove_connected_peers
        - remove_entry
        - remove_half_open
        - remove_init_hash
        - unlock_single_segment
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2062,6'
          Dst:             get_entry_by_sa
        - Src:             'sa/ike_sa_manager.c:2070,4'
          Dst:             unlock_single_segment
        - Src:             'sa/ike_sa_manager.c:2084,3'
          Dst:             remove_entry
        - Src:             'sa/ike_sa_manager.c:2085,3'
          Dst:             unlock_single_segment
        - Src:             'sa/ike_sa_manager.c:2089,4'
          Dst:             remove_half_open
        - Src:             'sa/ike_sa_manager.c:2094,4'
          Dst:             remove_connected_peers
        - Src:             'sa/ike_sa_manager.c:2098,4'
          Dst:             remove_init_hash
        - Src:             'sa/ike_sa_manager.c:2101,3'
          Dst:             entry_destroy
    - functionName:    create_id_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2124
      functionLinenumberEnd: 2157
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          173
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_hash
        - chunk_hash_inc
        - connected_peers_match
        - enumerator_create_cleaner
        - enumerator_create_empty
        - id_enumerator_cleanup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2131,8'
          Dst:             chunk_hash
        - Src:             'sa/ike_sa_manager.c:2130,8'
          Dst:             chunk_hash_inc
        - Src:             'sa/ike_sa_manager.c:2141,7'
          Dst:             connected_peers_match
        - Src:             'sa/ike_sa_manager.c:2153,10'
          Dst:             enumerator_create_empty
        - Src:             'sa/ike_sa_manager.c:2155,9'
          Dst:             enumerator_create_cleaner
        - Src:             'sa/ike_sa_manager.c:2155,9'
          Dst:             id_enumerator_cleanup
    - functionName:    check_uniqueness
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2241
      functionLinenumberEnd: 2325
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          304
      EdgeCount:       47
      CyclomaticComplexity: 10
      functionsReached:
        - checkin
        - checkin_and_destroy
        - checkout
        - create_id_enumerator
        - enforce_replace
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ike_sa_manager.c:2283,4'
          Branch Sides:    []
        - Branch String:   'sa/ike_sa_manager.c:2287,6'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2260,15'
          Dst:             create_id_enumerator
        - Src:             'sa/ike_sa_manager.c:2267,15'
          Dst:             checkout
        - Src:             'sa/ike_sa_manager.c:2277,4'
          Dst:             checkin_and_destroy
        - Src:             'sa/ike_sa_manager.c:2290,17'
          Dst:             enforce_replace
        - Src:             'sa/ike_sa_manager.c:2314,4'
          Dst:             checkin_and_destroy
        - Src:             'sa/ike_sa_manager.c:2318,4'
          Dst:             checkin
    - functionName:    checkout
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_entry_by_id
        - thread_current
        - unlock_single_segment
        - wait_for_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1241,6'
          Dst:             get_entry_by_id
        - Src:             'sa/ike_sa_manager.c:1243,7'
          Dst:             wait_for_entry
        - Src:             'sa/ike_sa_manager.c:1245,25'
          Dst:             thread_current
        - Src:             'sa/ike_sa_manager.c:1250,3'
          Dst:             unlock_single_segment
    - functionName:    get_entry_by_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 758
      functionLinenumberEnd: 760
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - entry_match_by_id
        - get_entry_by_match_function
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:759,9'
          Dst:             get_entry_by_match_function
        - Src:             'sa/ike_sa_manager.c:759,9'
          Dst:             entry_match_by_id
    - functionName:    entry_match_by_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          150
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    new_initiator_spi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1749
      functionLinenumberEnd: 1867
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          333
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - get_entry_by_sa
        - get_spi
        - lock_single_segment
        - unlock_single_segment
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1778,12'
          Dst:             get_spi
        - Src:             'sa/ike_sa_manager.c:1785,6'
          Dst:             get_entry_by_sa
        - Src:             'sa/ike_sa_manager.c:1791,4'
          Dst:             unlock_single_segment
        - Src:             'sa/ike_sa_manager.c:1830,3'
          Dst:             unlock_single_segment
        - Src:             'sa/ike_sa_manager.c:1856,3'
          Dst:             lock_single_segment
        - Src:             'sa/ike_sa_manager.c:1865,2'
          Dst:             unlock_single_segment
    - functionName:    get_spi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1064
      functionLinenumberEnd: 1083
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          114
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    checkout_by_config
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1519
      functionLinenumberEnd: 1644
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         69
      ICount:          626
      EdgeCount:       92
      CyclomaticComplexity: 25
      functionsReached:
        - array_count
        - array_get
        - array_insert_create
        - array_remove
        - checkout_new
        - create_new
        - create_table_enumerator
        - ike_sa_is_delete_queued
        - thread_current
        - wait_for_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1533,12'
          Dst:             create_new
        - Src:             'sa/ike_sa_manager.c:1537,4'
          Dst:             checkout_new
        - Src:             'sa/ike_sa_manager.c:1544,18'
          Dst:             array_count
        - Src:             'sa/ike_sa_manager.c:1546,3'
          Dst:             array_get
        - Src:             'sa/ike_sa_manager.c:1563,3'
          Dst:             array_insert_create
        - Src:             'sa/ike_sa_manager.c:1573,15'
          Dst:             create_table_enumerator
        - Src:             'sa/ike_sa_manager.c:1576,8'
          Dst:             wait_for_entry
        - Src:             'sa/ike_sa_manager.c:1583,4'
          Dst:             ike_sa_is_delete_queued
        - Src:             'sa/ike_sa_manager.c:1595,26'
          Dst:             thread_current
        - Src:             'sa/ike_sa_manager.c:1610,12'
          Dst:             create_new
        - Src:             'sa/ike_sa_manager.c:1614,4'
          Dst:             checkout_new
        - Src:             'sa/ike_sa_manager.c:1624,19'
          Dst:             array_count
        - Src:             'sa/ike_sa_manager.c:1626,4'
          Dst:             array_get
        - Src:             'sa/ike_sa_manager.c:1629,5'
          Dst:             array_remove
    - functionName:    create_new
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1263
      functionLinenumberEnd: 1295
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_spi
        - ike_sa_create
        - ike_sa_id_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1271,8'
          Dst:             get_spi
        - Src:             'sa/ike_sa_manager.c:1280,15'
          Dst:             ike_sa_id_create
        - Src:             'sa/ike_sa_manager.c:1284,15'
          Dst:             ike_sa_id_create
        - Src:             'sa/ike_sa_manager.c:1286,11'
          Dst:             ike_sa_create
    - functionName:    checkout_new
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1299
      functionLinenumberEnd: 1306
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_and_put_entry
        - thread_current
        - unlock_single_segment
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1303,12'
          Dst:             create_and_put_entry
        - Src:             'sa/ike_sa_manager.c:1304,23'
          Dst:             thread_current
        - Src:             'sa/ike_sa_manager.c:1305,2'
          Dst:             unlock_single_segment
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_message_id_or_hash
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1312
      functionLinenumberEnd: 1324
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          92
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1320,11'
          Dst:             chunk_hash
    - functionName:    check_and_put_init_hash
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1189
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          200
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
        - chunk_hash
        - get_spi
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1149,8'
          Dst:             chunk_hash
        - Src:             'sa/ike_sa_manager.c:1158,7'
          Dst:             chunk_equals
        - Src:             'sa/ike_sa_manager.c:1167,8'
          Dst:             get_spi
    - functionName:    get_init_hash
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1093
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          222
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1107,38'
          Dst:             chunk_create
        - Src:             'sa/ike_sa_manager.c:1112,40'
          Dst:             chunk_create
    - functionName:    checkout_by_message
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1328
      functionLinenumberEnd: 1502
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         78
      ICount:          642
      EdgeCount:       101
      CyclomaticComplexity: 25
      functionsReached:
        - check_and_put_init_hash
        - chunk_free
        - entry_create
        - get_entry_by_id
        - get_init_hash
        - get_message_id_or_hash
        - ike_sa_create
        - put_entry
        - remove_half_open
        - remove_init_hash
        - thread_current
        - unlock_single_segment
        - wait_for_entry
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ike_sa_manager.c:1392,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:1382,19'
          Dst:             get_init_hash
        - Src:             'sa/ike_sa_manager.c:1392,11'
          Dst:             check_and_put_init_hash
        - Src:             'sa/ike_sa_manager.c:1400,15'
          Dst:             ike_sa_create
        - Src:             'sa/ike_sa_manager.c:1403,15'
          Dst:             entry_create
        - Src:             'sa/ike_sa_manager.c:1406,27'
          Dst:             get_message_id_or_hash
        - Src:             'sa/ike_sa_manager.c:1413,17'
          Dst:             put_entry
        - Src:             'sa/ike_sa_manager.c:1414,28'
          Dst:             thread_current
        - Src:             'sa/ike_sa_manager.c:1415,7'
          Dst:             unlock_single_segment
        - Src:             'sa/ike_sa_manager.c:1433,5'
          Dst:             remove_init_hash
        - Src:             'sa/ike_sa_manager.c:1434,5'
          Dst:             chunk_free
        - Src:             'sa/ike_sa_manager.c:1440,5'
          Dst:             chunk_free
        - Src:             'sa/ike_sa_manager.c:1451,3'
          Dst:             chunk_free
        - Src:             'sa/ike_sa_manager.c:1453,3'
          Dst:             remove_half_open
        - Src:             'sa/ike_sa_manager.c:1457,6'
          Dst:             get_entry_by_id
        - Src:             'sa/ike_sa_manager.c:1460,28'
          Dst:             get_message_id_or_hash
        - Src:             'sa/ike_sa_manager.c:1465,12'
          Dst:             wait_for_entry
        - Src:             'sa/ike_sa_manager.c:1470,25'
          Dst:             thread_current
        - Src:             'sa/ike_sa_manager.c:1474,25'
          Dst:             get_message_id_or_hash
        - Src:             'sa/ike_sa_manager.c:1484,3'
          Dst:             unlock_single_segment
        - Src:             'sa/ike_sa_manager.c:1495,3'
          Dst:             remove_half_open
    - functionName:    track_init
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2403
      functionLinenumberEnd: 2405
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_half_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2404,2'
          Dst:             put_half_open
    - functionName:    get_nearest_powerof2
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2553
      functionLinenumberEnd: 2561
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          37
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_sa_manager_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2568
      functionLinenumberEnd: 2673
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         40
      ICount:          628
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - __bswap_64
        - calloc
        - condvar_create
        - get_nearest_powerof2
        - mutex_create
        - rwlock_create
        - settings_value_as_uint64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_manager.c:2605,19'
          Dst:             rwlock_create
        - Src:             'sa/ike_sa_manager.c:2608,19'
          Dst:             settings_value_as_uint64
        - Src:             'sa/ike_sa_manager.c:2611,20'
          Dst:             settings_value_as_uint64
        - Src:             'sa/ike_sa_manager.c:2617,20'
          Dst:             __bswap_64
        - Src:             'sa/ike_sa_manager.c:2618,21'
          Dst:             __bswap_64
        - Src:             'sa/ike_sa_manager.c:2624,21'
          Dst:             get_nearest_powerof2
        - Src:             'sa/ike_sa_manager.c:2630,24'
          Dst:             get_nearest_powerof2
        - Src:             'sa/ike_sa_manager.c:2636,23'
          Dst:             calloc
        - Src:             'sa/ike_sa_manager.c:2637,31'
          Dst:             calloc
        - Src:             'sa/ike_sa_manager.c:2640,29'
          Dst:             mutex_create
        - Src:             'sa/ike_sa_manager.c:2644,26'
          Dst:             calloc
        - Src:             'sa/ike_sa_manager.c:2645,29'
          Dst:             calloc
        - Src:             'sa/ike_sa_manager.c:2648,38'
          Dst:             rwlock_create
        - Src:             'sa/ike_sa_manager.c:2652,32'
          Dst:             calloc
        - Src:             'sa/ike_sa_manager.c:2653,35'
          Dst:             calloc
        - Src:             'sa/ike_sa_manager.c:2656,44'
          Dst:             rwlock_create
        - Src:             'sa/ike_sa_manager.c:2660,28'
          Dst:             calloc
        - Src:             'sa/ike_sa_manager.c:2661,31'
          Dst:             calloc
        - Src:             'sa/ike_sa_manager.c:2664,41'
          Dst:             mutex_create
        - Src:             'sa/ike_sa_manager.c:2667,23'
          Dst:             mutex_create
        - Src:             'sa/ike_sa_manager.c:2668,25'
          Dst:             condvar_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    checkout_by_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          107
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - checkout_ikesa
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa_manager.c:267,10'
          Dst:             checkout_ikesa
    - functionName:    checkout_ikesa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          142
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    checkout
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          152
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - checkout_ikesa
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa_manager.c:301,10'
          Dst:             checkout_ikesa
    - functionName:    remove_
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          115
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - child_entry_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa_manager.c:205,3'
          Dst:             child_entry_destroy
    - functionName:    child_entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          271
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - child_entry_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa_manager.c:183,3'
          Dst:             child_entry_destroy
    - functionName:    equals_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa_manager.c:132,20'
          Dst:             chunk_create
        - Src:             'sa/child_sa_manager.c:132,9'
          Dst:             chunk_hash
    - functionName:    equals_out
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_out
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          66
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
        - chunk_hash_inc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa_manager.c:112,24'
          Dst:             chunk_create
        - Src:             'sa/child_sa_manager.c:114,16'
          Dst:             chunk_create
        - Src:             'sa/child_sa_manager.c:114,5'
          Dst:             chunk_hash
        - Src:             'sa/child_sa_manager.c:113,4'
          Dst:             chunk_hash_inc
        - Src:             'sa/child_sa_manager.c:112,9'
          Dst:             chunk_hash_inc
    - functionName:    equals_in
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_in
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          66
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
        - chunk_hash_inc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa_manager.c:92,24'
          Dst:             chunk_create
        - Src:             'sa/child_sa_manager.c:94,16'
          Dst:             chunk_create
        - Src:             'sa/child_sa_manager.c:94,5'
          Dst:             chunk_hash
        - Src:             'sa/child_sa_manager.c:93,4'
          Dst:             chunk_hash_inc
        - Src:             'sa/child_sa_manager.c:92,9'
          Dst:             chunk_hash_inc
    - functionName:    child_sa_manager_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - equals_id
        - equals_in
        - equals_out
        - hash_id
        - hash_in
        - hash_out
        - hashtable_create
        - mutex_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa_manager.c:323,2'
          Dst:             hashtable_create
        - Src:             'sa/child_sa_manager.c:323,2'
          Dst:             hash_in
        - Src:             'sa/child_sa_manager.c:323,2'
          Dst:             equals_in
        - Src:             'sa/child_sa_manager.c:323,2'
          Dst:             hashtable_create
        - Src:             'sa/child_sa_manager.c:323,2'
          Dst:             hash_out
        - Src:             'sa/child_sa_manager.c:323,2'
          Dst:             equals_out
        - Src:             'sa/child_sa_manager.c:323,2'
          Dst:             hashtable_create
        - Src:             'sa/child_sa_manager.c:323,2'
          Dst:             hash_id
        - Src:             'sa/child_sa_manager.c:323,2'
          Dst:             equals_id
        - Src:             'sa/child_sa_manager.c:323,2'
          Dst:             mutex_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/shunt_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flush
      functionSourceFile: '/src/strongswan/src/libcharon/sa/shunt_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - entry_destroy
        - uninstall_shunt_policy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/shunt_manager.c:450,3'
          Dst:             uninstall_shunt_policy
        - Src:             'sa/shunt_manager.c:451,3'
          Dst:             entry_destroy
    - functionName:    uninstall_shunt_policy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/shunt_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          440
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - host_create_any
        - linked_list_create_with_items
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/shunt_manager.c:276,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/shunt_manager.c:290,13'
          Dst:             host_create_any
        - Src:             'sa/shunt_manager.c:291,14'
          Dst:             host_create_any
        - Src:             'sa/shunt_manager.c:293,10'
          Dst:             linked_list_create_with_items
    - functionName:    entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/shunt_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_filter_entries
      functionSourceFile: '/src/strongswan/src/libcharon/sa/shunt_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          116
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/shunt_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/shunt_manager.c:432,9'
          Dst:             enumerator_create_filter
    - functionName:    uninstall
      functionSourceFile: '/src/strongswan/src/libcharon/sa/shunt_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          178
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - entry_destroy
        - streq
        - uninstall_shunt_policy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/shunt_manager.c:387,15'
          Dst:             streq
        - Src:             'sa/shunt_manager.c:388,4'
          Dst:             streq
        - Src:             'sa/shunt_manager.c:402,2'
          Dst:             uninstall_shunt_policy
        - Src:             'sa/shunt_manager.c:403,2'
          Dst:             entry_destroy
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    install_shunt_policy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/shunt_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          449
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - host_create_any
        - linked_list_create_with_items
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/shunt_manager.c:104,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/shunt_manager.c:118,13'
          Dst:             host_create_any
        - Src:             'sa/shunt_manager.c:119,14'
          Dst:             host_create_any
        - Src:             'sa/shunt_manager.c:121,10'
          Dst:             linked_list_create_with_items
    - functionName:    install
      functionSourceFile: '/src/strongswan/src/libcharon/sa/shunt_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          277
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - entry_destroy
        - install_shunt_policy
        - strdup
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/shunt_manager.c:222,7'
          Dst:             streq
        - Src:             'sa/shunt_manager.c:223,4'
          Dst:             streq
        - Src:             'sa/shunt_manager.c:237,2'
          Dst:             strdup
        - Src:             'sa/shunt_manager.c:245,12'
          Dst:             install_shunt_policy
        - Src:             'sa/shunt_manager.c:251,3'
          Dst:             entry_destroy
    - functionName:    shunt_manager_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/shunt_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_condvar_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/shunt_manager.c:473,2'
          Dst:             linked_list_create
        - Src:             'sa/shunt_manager.c:473,2'
          Dst:             rwlock_create
        - Src:             'sa/shunt_manager.c:473,2'
          Dst:             rwlock_condvar_create
    - functionName:    ike_reestablish_pre
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          109
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update_acquire_seq
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 703
      functionLinenumberEnd: 753
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          221
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - child_sa_ts_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:732,9'
          Dst:             child_sa_ts_match
    - functionName:    child_state_change
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 805
      functionLinenumberEnd: 818
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - complete
        - update_acquire_seq
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/trap_manager.c:806,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/trap_manager.c:809,4'
          Dst:             update_acquire_seq
        - Src:             'sa/trap_manager.c:813,4'
          Dst:             complete
    - functionName:    complete
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 760
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          181
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - destroy_acquire
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:783,3'
          Dst:             destroy_acquire
    - functionName:    destroy_acquire
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - kernel_acquire_data_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:155,2'
          Dst:             kernel_acquire_data_destroy
    - functionName:    ike_state_change
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 791
      functionLinenumberEnd: 800
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 7
      functionsReached:
        - complete
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/trap_manager.c:792,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/trap_manager.c:795,4'
          Dst:             complete
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 865
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          84
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_acquire
        - destroy_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:867,2'
          Dst:             destroy_entry
        - Src:             'sa/trap_manager.c:868,2'
          Dst:             destroy_acquire
    - functionName:    destroy_entry
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flush
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 851
      functionLinenumberEnd: 861
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          80
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - destroy_entry
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:857,2'
          Dst:             destroy_entry
        - Src:             'sa/trap_manager.c:858,16'
          Dst:             linked_list_create
    - functionName:    sec_labels_equal
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/selectors/sec_label.h'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_acquire_by_reqid
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          138
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - sec_labels_equal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:167,6'
          Dst:             sec_labels_equal
    - functionName:    _cb_acquire_by_dst
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ref_get_nonzero
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/atomics.h'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    acquire
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          804
      EdgeCount:       83
      CyclomaticComplexity: 23
      functionsReached:
        - destroy_acquire
        - kernel_acquire_data_clone
        - ref_get_nonzero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:590,34'
          Dst:             ref_get_nonzero
        - Src:             'sa/trap_manager.c:591,3'
          Dst:             kernel_acquire_data_clone
        - Src:             'sa/trap_manager.c:688,3'
          Dst:             destroy_acquire
    - functionName:    _cb_trap_filter
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          147
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:521,9'
          Dst:             enumerator_create_filter
    - functionName:    remove_external
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          128
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - destroy_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:484,2'
          Dst:             destroy_entry
    - functionName:    install_external
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 458
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          170
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - destroy_entry
        - install_trap
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:439,2'
          Dst:             strdup
        - Src:             'sa/trap_manager.c:448,6'
          Dst:             install_trap
        - Src:             'sa/trap_manager.c:454,3'
          Dst:             destroy_entry
    - functionName:    install_trap
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          143
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uninstall
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          180
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - destroy_entry
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:407,4'
          Dst:             streq
        - Src:             'sa/trap_manager.c:408,17'
          Dst:             streq
        - Src:             'sa/trap_manager.c:422,2'
          Dst:             destroy_entry
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    dynamic_remote_ts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    install
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 390
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          788
      EdgeCount:       98
      CyclomaticComplexity: 27
      functionsReached:
        - child_sa_create
        - destroy_entry
        - dynamic_remote_ts
        - host_create_any
        - install_trap
        - linked_list_create_with_items
        - strdup
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:258,8'
          Dst:             host_create_any
        - Src:             'sa/trap_manager.c:270,17'
          Dst:             dynamic_remote_ts
        - Src:             'sa/trap_manager.c:281,12'
          Dst:             host_create_any
        - Src:             'sa/trap_manager.c:291,9'
          Dst:             host_create_any
        - Src:             'sa/trap_manager.c:308,4'
          Dst:             streq
        - Src:             'sa/trap_manager.c:309,4'
          Dst:             streq
        - Src:             'sa/trap_manager.c:336,2'
          Dst:             strdup
        - Src:             'sa/trap_manager.c:355,13'
          Dst:             child_sa_create
        - Src:             'sa/trap_manager.c:357,10'
          Dst:             linked_list_create_with_items
        - Src:             'sa/trap_manager.c:358,11'
          Dst:             linked_list_create_with_items
        - Src:             'sa/trap_manager.c:360,11'
          Dst:             install_trap
        - Src:             'sa/trap_manager.c:371,3'
          Dst:             destroy_entry
        - Src:             'sa/trap_manager.c:382,3'
          Dst:             destroy_entry
    - functionName:    trap_manager_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/trap_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          134
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - mutex_create
        - rwlock_condvar_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/trap_manager.c:882,2'
          Dst:             linked_list_create
        - Src:             'sa/trap_manager.c:882,2'
          Dst:             rwlock_create
        - Src:             'sa/trap_manager.c:882,2'
          Dst:             linked_list_create
        - Src:             'sa/trap_manager.c:882,2'
          Dst:             mutex_create
        - Src:             'sa/trap_manager.c:882,2'
          Dst:             rwlock_condvar_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/redirect_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    redirect_on_auth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/redirect_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - should_redirect
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/redirect_manager.c:161,9'
          Dst:             should_redirect
    - functionName:    should_redirect
      functionSourceFile: '/src/strongswan/src/libcharon/sa/redirect_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          162
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - id_type_to_gateway
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/redirect_manager.c:132,20'
          Dst:             id_type_to_gateway
    - functionName:    id_type_to_gateway
      functionSourceFile: '/src/strongswan/src/libcharon/sa/redirect_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/redirect_manager.c:85,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    redirect_on_init
      functionSourceFile: '/src/strongswan/src/libcharon/sa/redirect_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - should_redirect
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/redirect_manager.c:153,9'
          Dst:             should_redirect
    - functionName:    remove_provider
      functionSourceFile: '/src/strongswan/src/libcharon/sa/redirect_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_provider
      functionSourceFile: '/src/strongswan/src/libcharon/sa/redirect_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gateway_to_id_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/redirect_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/redirect_manager.c:67,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    redirect_data_parse
      functionSourceFile: '/src/strongswan/src/libcharon/sa/redirect_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          151
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - bio_reader_create
        - chunk_create_clone
        - gateway_to_id_type
        - identification_create_from_encoding
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/redirect_manager.c:254,11'
          Dst:             bio_reader_create
        - Src:             'sa/redirect_manager.c:262,12'
          Dst:             gateway_to_id_type
        - Src:             'sa/redirect_manager.c:271,12'
          Dst:             chunk_create_clone
        - Src:             'sa/redirect_manager.c:274,9'
          Dst:             identification_create_from_encoding
    - functionName:    redirect_data_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/redirect_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          124
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - bio_writer_create
        - id_type_to_gateway
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/redirect_manager.c:225,9'
          Dst:             id_type_to_gateway
        - Src:             'sa/redirect_manager.c:231,11'
          Dst:             bio_writer_create
    - functionName:    redirect_manager_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/redirect_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/redirect_manager.c:180,2'
          Dst:             linked_list_create
        - Src:             'sa/redirect_manager.c:180,2'
          Dst:             rwlock_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/sys_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_options
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/sys_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_level
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/sys_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log_
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/sys_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          241
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - snprintf
        - strchr
        - syslog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/listeners/sys_logger.c:95,3'
          Dst:             snprintf
        - Src:             'bus/listeners/sys_logger.c:100,3'
          Dst:             snprintf
        - Src:             'bus/listeners/sys_logger.c:107,4'
          Dst:             snprintf
        - Src:             'bus/listeners/sys_logger.c:112,4'
          Dst:             snprintf
        - Src:             'bus/listeners/sys_logger.c:122,10'
          Dst:             strchr
        - Src:             'bus/listeners/sys_logger.c:125,4'
          Dst:             syslog
        - Src:             'bus/listeners/sys_logger.c:129,3'
          Dst:             syslog
    - functionName:    syslog
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_level
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/sys_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sys_logger_create
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/sys_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          66
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mutex_create
        - rwlock_create
        - set_level
        - setlogmask
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/listeners/sys_logger.c:190,2'
          Dst:             mutex_create
        - Src:             'bus/listeners/sys_logger.c:190,2'
          Dst:             rwlock_create
        - Src:             'bus/listeners/sys_logger.c:206,2'
          Dst:             set_level
        - Src:             'bus/listeners/sys_logger.c:207,2'
          Dst:             setlogmask
    - functionName:    setlogmask
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    socket_default_plugin_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    open_socket
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 657
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          308
      EdgeCount:       59
      CyclomaticComplexity: 14
      functionsReached:
        - bind
        - close
        - getsockname
        - htonl
        - htons
        - mark_from_string
        - memcpy_noop
        - memset_noop
        - ntohs
        - setsockopt
        - socket
      functionUses:    2
      BranchProfiles:
        - Branch String:   'socket_default_socket.c:671,2'
          Branch Sides:    []
        - Branch String:   'socket_default_socket.c:727,3'
          Branch Sides:    []
      Callsites:
        - Src:             'socket_default_socket.c:668,2'
          Dst:             memset_noop
        - Src:             'socket_default_socket.c:674,31'
          Dst:             htonl
        - Src:             'socket_default_socket.c:675,24'
          Dst:             htons
        - Src:             'socket_default_socket.c:685,4'
          Dst:             memcpy_noop
        - Src:             'socket_default_socket.c:686,26'
          Dst:             htons
        - Src:             'socket_default_socket.c:695,8'
          Dst:             socket
        - Src:             'socket_default_socket.c:703,3'
          Dst:             setsockopt
        - Src:             'socket_default_socket.c:706,3'
          Dst:             close
        - Src:             'socket_default_socket.c:711,6'
          Dst:             bind
        - Src:             'socket_default_socket.c:714,3'
          Dst:             close
        - Src:             'socket_default_socket.c:721,7'
          Dst:             getsockname
        - Src:             'socket_default_socket.c:724,4'
          Dst:             close
        - Src:             'socket_default_socket.c:730,13'
          Dst:             ntohs
        - Src:             'socket_default_socket.c:733,13'
          Dst:             ntohs
        - Src:             'socket_default_socket.c:741,7'
          Dst:             setsockopt
        - Src:             'socket_default_socket.c:744,4'
          Dst:             close
        - Src:             'socket_default_socket.c:755,17'
          Dst:             mark_from_string
        - Src:             'socket_default_socket.c:757,8'
          Dst:             setsockopt
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    62
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htons
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    44
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    socket
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setsockopt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    close
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    46
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bind
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getsockname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    use_family
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 800
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          62
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'socket_default_socket.c:789,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    supported_families
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 649
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_port
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 633
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_srcif
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - if_nametoindex
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'socket_default_socket.c:383,9'
          Dst:             if_nametoindex
    - functionName:    if_nametoindex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_msg_generic
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sendmsg
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'socket_default_socket.c:368,9'
          Dst:             sendmsg
    - functionName:    sendmsg
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_msg_v6
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          97
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - find_srcif
        - memcpy_noop
        - send_msg_generic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'socket_default_socket.c:480,27'
          Dst:             find_srcif
        - Src:             'socket_default_socket.c:483,2'
          Dst:             memcpy_noop
        - Src:             'socket_default_socket.c:484,9'
          Dst:             send_msg_generic
    - functionName:    send_msg_v4
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          100
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - find_srcif
        - memcpy_noop
        - send_msg_generic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'socket_default_socket.c:415,26'
          Dst:             find_srcif
        - Src:             'socket_default_socket.c:420,2'
          Dst:             memcpy_noop
        - Src:             'socket_default_socket.c:421,9'
          Dst:             send_msg_generic
    - functionName:    sender
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         46
      ICount:          372
      EdgeCount:       56
      CyclomaticComplexity: 12
      functionsReached:
        - memset_noop
        - send_msg_generic
        - send_msg_v4
        - send_msg_v6
        - setsockopt
      functionUses:    0
      BranchProfiles:
        - Branch String:   'socket_default_socket.c:519,3'
          Branch Sides:    []
        - Branch String:   'socket_default_socket.c:535,3'
          Branch Sides:    []
      Callsites:
        - Src:             'socket_default_socket.c:570,8'
          Dst:             setsockopt
        - Src:             'socket_default_socket.c:585,8'
          Dst:             setsockopt
        - Src:             'socket_default_socket.c:597,2'
          Dst:             memset_noop
        - Src:             'socket_default_socket.c:610,17'
          Dst:             send_msg_v4
        - Src:             'socket_default_socket.c:614,17'
          Dst:             send_msg_v6
        - Src:             'socket_default_socket.c:619,16'
          Dst:             send_msg_generic
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_dst_v6
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - host_create_from_sockaddr
        - htons
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'socket_default_socket.c:220,16'
          Dst:             htons
        - Src:             'socket_default_socket.c:226,3'
          Dst:             memcpy_noop
        - Src:             'socket_default_socket.c:227,10'
          Dst:             host_create_from_sockaddr
    - functionName:    get_dst_v4
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - host_create_from_sockaddr
        - htons
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'socket_default_socket.c:166,15'
          Dst:             htons
        - Src:             'socket_default_socket.c:175,3'
          Dst:             memcpy_noop
        - Src:             'socket_default_socket.c:176,10'
          Dst:             host_create_from_sockaddr
    - functionName:    receiver
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         43
      ICount:          429
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - __cmsg_nxthdr
        - chunk_create
        - chunk_create_clone
        - get_dst_v4
        - get_dst_v6
        - host_create_from_sockaddr
        - packet_create
        - poll
        - recvmsg
        - thread_cancelability
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'socket_default_socket.c:263,13'
          Dst:             thread_cancelability
        - Src:             'socket_default_socket.c:264,6'
          Dst:             poll
        - Src:             'socket_default_socket.c:266,3'
          Dst:             thread_cancelability
        - Src:             'socket_default_socket.c:269,2'
          Dst:             thread_cancelability
        - Src:             'socket_default_socket.c:304,16'
          Dst:             recvmsg
        - Src:             'socket_default_socket.c:328,12'
          Dst:             get_dst_v4
        - Src:             'socket_default_socket.c:332,12'
          Dst:             get_dst_v6
        - Src:             'socket_default_socket.c:319,15'
          Dst:             __cmsg_nxthdr
        - Src:             'socket_default_socket.c:344,12'
          Dst:             host_create_from_sockaddr
        - Src:             'socket_default_socket.c:346,9'
          Dst:             packet_create
        - Src:             'socket_default_socket.c:350,10'
          Dst:             chunk_create
        - Src:             'socket_default_socket.c:351,22'
          Dst:             chunk_create_clone
    - functionName:    poll
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    recvmsg
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __cmsg_nxthdr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    open_socketpair
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 807
      functionLinenumberEnd: 829
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - open_socket
        - use_family
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'socket_default_socket.c:808,7'
          Dst:             use_family
        - Src:             'socket_default_socket.c:815,9'
          Dst:             open_socket
        - Src:             'socket_default_socket.c:823,15'
          Dst:             open_socket
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 833
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          87
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - close
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'socket_default_socket.c:836,3'
          Dst:             close
        - Src:             'socket_default_socket.c:840,3'
          Dst:             close
        - Src:             'socket_default_socket.c:844,3'
          Dst:             close
        - Src:             'socket_default_socket.c:848,3'
          Dst:             close
    - functionName:    socket_default_socket_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/socket_default/socket_default_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 857
      functionLinenumberEnd: 914
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         27
      ICount:          297
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - destroy
        - open_socketpair
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'socket_default_socket.c:898,4'
          Dst:             destroy
        - Src:             'socket_default_socket.c:903,2'
          Dst:             open_socketpair
        - Src:             'socket_default_socket.c:904,2'
          Dst:             open_socketpair
        - Src:             'socket_default_socket.c:909,3'
          Dst:             destroy
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_cb
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    counters_plugin_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counters_listener_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_plugin.c:90,2'
          Dst:             counters_listener_create
    - functionName:    _cb_clear_strings
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memwipe
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:653,15'
          Dst:             strlen
        - Src:             'vici_message.c:653,2'
          Dst:             memwipe
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:662,3'
          Dst:             chunk_clear
    - functionName:    dump
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 648
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          313
      EdgeCount:       57
      CyclomaticComplexity: 12
      functionsReached:
        - chunk_printable
        - create_enumerator
        - fprintf
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_message.c:587,3'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_message.c:581,2'
          Dst:             fprintf
        - Src:             'vici_message.c:584,15'
          Dst:             create_enumerator
        - Src:             'vici_message.c:595,5'
          Dst:             fprintf
        - Src:             'vici_message.c:600,5'
          Dst:             fprintf
        - Src:             'vici_message.c:605,9'
          Dst:             chunk_printable
        - Src:             'vici_message.c:607,6'
          Dst:             fprintf
        - Src:             'vici_message.c:612,6'
          Dst:             fprintf
        - Src:             'vici_message.c:619,5'
          Dst:             fprintf
        - Src:             'vici_message.c:624,5'
          Dst:             fprintf
        - Src:             'vici_message.c:628,9'
          Dst:             chunk_printable
        - Src:             'vici_message.c:630,6'
          Dst:             fprintf
        - Src:             'vici_message.c:635,6'
          Dst:             fprintf
        - Src:             'vici_message.c:640,5'
          Dst:             fprintf
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bio_reader_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:219,2'
          Dst:             bio_reader_create
    - functionName:    parse_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          363
      EdgeCount:       61
      CyclomaticComplexity: 15
      functionsReached:
        - vici_stringify
        - vici_verify_type
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_message.c:150,2'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_message.c:145,7'
          Dst:             vici_verify_type
        - Src:             'vici_message.c:154,6'
          Dst:             vici_stringify
        - Src:             'vici_message.c:167,6'
          Dst:             vici_stringify
        - Src:             'vici_message.c:177,6'
          Dst:             vici_stringify
    - functionName:    vici_verify_type
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          104
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vici_stringify
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_printable
        - snprintf
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:70,7'
          Dst:             chunk_printable
        - Src:             'vici_message.c:74,2'
          Dst:             snprintf
    - functionName:    parse
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          336
      EdgeCount:       61
      CyclomaticComplexity: 14
      functionsReached:
        - create_enumerator
        - strdup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_message.c:494,4'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_message.c:484,12'
          Dst:             create_enumerator
        - Src:             'vici_message.c:502,14'
          Dst:             strdup
        - Src:             'vici_message.c:510,14'
          Dst:             strdup
        - Src:             'vici_message.c:517,14'
          Dst:             strdup
        - Src:             'vici_message.c:531,14'
          Dst:             strdup
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 455
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vget_value
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:433,10'
          Dst:             find_value
    - functionName:    find_value
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          195
      EdgeCount:       41
      CyclomaticComplexity: 7
      functionsReached:
        - create_enumerator
        - strchr
        - streq
        - vsnprintf
      functionUses:    4
      BranchProfiles:
        - Branch String:   'vici_message.c:265,4'
          Branch Sides:    []
        - Branch String:   'vici_message.c:289,3'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_message.c:244,2'
          Dst:             vsnprintf
        - Src:             'vici_message.c:247,15'
          Dst:             create_enumerator
        - Src:             'vici_message.c:252,9'
          Dst:             strchr
        - Src:             'vici_message.c:269,35'
          Dst:             streq
        - Src:             'vici_message.c:292,34'
          Dst:             streq
    - functionName:    vsnprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    get_value
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 443
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vget_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:448,10'
          Dst:             vget_value
    - functionName:    vget_bool
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 413
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          80
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_printable
        - find_value
        - settings_value_as_bool
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:399,10'
          Dst:             find_value
        - Src:             'vici_message.c:406,7'
          Dst:             chunk_printable
        - Src:             'vici_message.c:408,4'
          Dst:             snprintf
        - Src:             'vici_message.c:409,11'
          Dst:             settings_value_as_bool
    - functionName:    get_bool
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vget_bool
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:422,8'
          Dst:             vget_bool
    - functionName:    vget_int
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          104
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - chunk_printable
        - find_value
        - snprintf
        - strlen
        - strtol
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:359,10'
          Dst:             find_value
        - Src:             'vici_message.c:366,7'
          Dst:             chunk_printable
        - Src:             'vici_message.c:368,4'
          Dst:             snprintf
        - Src:             'vici_message.c:369,4'
          Dst:             __errno_location
        - Src:             'vici_message.c:370,10'
          Dst:             strtol
        - Src:             'vici_message.c:371,8'
          Dst:             __errno_location
        - Src:             'vici_message.c:371,35'
          Dst:             strlen
    - functionName:    __errno_location
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    71
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strtol
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_int
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vget_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:387,8'
          Dst:             vget_int
    - functionName:    vget_str
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_printable
        - find_value
        - strndup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:325,10'
          Dst:             find_value
        - Src:             'vici_message.c:328,7'
          Dst:             chunk_printable
        - Src:             'vici_message.c:330,10'
          Dst:             strndup
    - functionName:    get_str
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vget_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:346,8'
          Dst:             vget_str
    - functionName:    vici_message_create_from_args
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 743
      functionLinenumberEnd: 778
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         32
      ICount:          238
      EdgeCount:       37
      CyclomaticComplexity: 7
      functionsReached:
        - vici_builder_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_message.c:753,3'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_message.c:749,12'
          Dst:             vici_builder_create
    - functionName:    vici_message_create_from_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 703
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          128
      EdgeCount:       19
      CyclomaticComplexity: 2
      functionsReached:
        - vici_builder_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_message.c:712,3'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_message.c:709,12'
          Dst:             vici_builder_create
    - functionName:    vici_message_create_from_data
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 672
      functionLinenumberEnd: 696
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          83
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_message.c:675,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    register_vici
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          393
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - vici_attribute_create
        - vici_authority_create
        - vici_config_create
        - vici_control_create
        - vici_cred_create
        - vici_dispatcher_create
        - vici_logger_create
        - vici_query_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_plugin.c:124,22'
          Dst:             vici_dispatcher_create
        - Src:             'vici_plugin.c:127,18'
          Dst:             vici_query_create
        - Src:             'vici_plugin.c:128,20'
          Dst:             vici_control_create
        - Src:             'vici_plugin.c:129,22'
          Dst:             vici_authority_create
        - Src:             'vici_plugin.c:130,17'
          Dst:             vici_cred_create
        - Src:             'vici_plugin.c:133,19'
          Dst:             vici_config_create
        - Src:             'vici_plugin.c:135,18'
          Dst:             vici_attribute_create
        - Src:             'vici_plugin.c:136,19'
          Dst:             vici_logger_create
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vici_plugin_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_stats
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1744
      functionLinenumberEnd: 1877
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          407
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - enum_to_name
        - mallinfo
        - time
        - time_monotonic
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1751,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:1753,8'
          Dst:             time_monotonic
        - Src:             'vici_query.c:1754,10'
          Dst:             time
        - Src:             'vici_query.c:1769,16'
          Dst:             enum_to_name
        - Src:             'vici_query.c:1778,16'
          Dst:             enum_to_name
        - Src:             'vici_query.c:1866,24'
          Dst:             mallinfo
    - functionName:    mallinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_version
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1698
      functionLinenumberEnd: 1739
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          86
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - uname
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1701,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:1731,7'
          Dst:             uname
    - functionName:    uname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_reset_counters
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1662
      functionLinenumberEnd: 1693
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          123
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ensure_counters
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1667,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:1669,6'
          Dst:             ensure_counters
    - functionName:    ensure_counters
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1575
      functionLinenumberEnd: 1581
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_counters
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1589
      functionLinenumberEnd: 1601
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          81
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - snprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1596,3'
          Dst:             snprintf
    - functionName:    _cb_get_counters
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1605
      functionLinenumberEnd: 1657
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          199
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - add_counters
        - ensure_counters
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1612,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:1614,6'
          Dst:             ensure_counters
        - Src:             'vici_query.c:1628,6'
          Dst:             add_counters
        - Src:             'vici_query.c:1638,5'
          Dst:             add_counters
    - functionName:    add_algorithm
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1444
      functionLinenumberEnd: 1449
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sprintf
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1447,2'
          Dst:             sprintf
    - functionName:    sprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_get_algorithms
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1453
      functionLinenumberEnd: 1568
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          607
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - add_algorithm
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1467,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:1473,3'
          Dst:             add_algorithm
        - Src:             'vici_query.c:1482,3'
          Dst:             add_algorithm
        - Src:             'vici_query.c:1491,3'
          Dst:             add_algorithm
        - Src:             'vici_query.c:1500,3'
          Dst:             add_algorithm
        - Src:             'vici_query.c:1509,3'
          Dst:             add_algorithm
        - Src:             'vici_query.c:1518,3'
          Dst:             add_algorithm
        - Src:             'vici_query.c:1527,3'
          Dst:             add_algorithm
        - Src:             'vici_query.c:1536,3'
          Dst:             add_algorithm
        - Src:             'vici_query.c:1545,3'
          Dst:             add_algorithm
        - Src:             'vici_query.c:1554,3'
          Dst:             add_algorithm
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_privkey
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1194
      functionLinenumberEnd: 1218
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          109
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - identification_create_from_encoding
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1206,12'
          Dst:             identification_create_from_encoding
    - functionName:    enum_others
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1282
      functionLinenumberEnd: 1334
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          284
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - asn1_from_time
        - chunk_free
        - chunk_skip
        - has_privkey
        - vici_builder_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1299,8'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:1301,8'
          Dst:             has_privkey
        - Src:             'vici_query.c:1318,13'
          Dst:             asn1_from_time
        - Src:             'vici_query.c:1319,46'
          Dst:             chunk_skip
        - Src:             'vici_query.c:1320,6'
          Dst:             chunk_free
        - Src:             'vici_query.c:1324,13'
          Dst:             asn1_from_time
        - Src:             'vici_query.c:1325,45'
          Dst:             chunk_skip
        - Src:             'vici_query.c:1326,6'
          Dst:             chunk_free
    - functionName:    enum_x509
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1236
      functionLinenumberEnd: 1275
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          190
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - has_privkey
        - vici_builder_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1260,8'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:1263,8'
          Dst:             has_privkey
    - functionName:    enum_certs
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1341
      functionLinenumberEnd: 1389
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          202
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - enum_others
        - enum_x509
        - linked_list_create
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1351,10'
          Dst:             linked_list_create
        - Src:             'vici_query.c:1379,3'
          Dst:             enum_x509
        - Src:             'vici_query.c:1380,3'
          Dst:             enum_x509
        - Src:             'vici_query.c:1381,3'
          Dst:             enum_x509
        - Src:             'vici_query.c:1382,3'
          Dst:             enum_x509
        - Src:             'vici_query.c:1386,3'
          Dst:             enum_others
    - functionName:    _cb_list_certs
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1393
      functionLinenumberEnd: 1436
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          197
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - enum_certs
        - enum_from_name_as_int
        - identification_create_from_string
        - vici_builder_create
        - vici_cert_info_from_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1403,6'
          Dst:             enum_from_name_as_int
        - Src:             'vici_query.c:1408,9'
          Dst:             enum_from_name_as_int
        - Src:             'vici_query.c:1415,12'
          Dst:             vici_cert_info_from_str
        - Src:             'vici_query.c:1424,20'
          Dst:             identification_create_from_string
        - Src:             'vici_query.c:1427,2'
          Dst:             enum_certs
        - Src:             'vici_query.c:1428,2'
          Dst:             enum_certs
        - Src:             'vici_query.c:1429,2'
          Dst:             enum_certs
        - Src:             'vici_query.c:1430,2'
          Dst:             enum_certs
        - Src:             'vici_query.c:1431,2'
          Dst:             enum_certs
        - Src:             'vici_query.c:1435,6'
          Dst:             vici_builder_create
    - functionName:    list_transforms
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          122
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - snprintf
        - transform_get_enum_names
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:223,10'
          Dst:             transform_get_enum_names
        - Src:             'vici_query.c:236,4'
          Dst:             snprintf
    - functionName:    build_auth_cfgs
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 906
      functionLinenumberEnd: 1017
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          487
      EdgeCount:       54
      CyclomaticComplexity: 11
      functionsReached:
        - snprintf
      functionUses:    2
      BranchProfiles:
        - Branch String:   'vici_query.c:928,4'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_query.c:922,3'
          Dst:             snprintf
    - functionName:    list_proposals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          142
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - list_transforms
        - snprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:265,4'
          Dst:             snprintf
        - Src:             'vici_query.c:267,4'
          Dst:             list_transforms
        - Src:             'vici_query.c:268,4'
          Dst:             list_transforms
        - Src:             'vici_query.c:269,4'
          Dst:             list_transforms
        - Src:             'vici_query.c:270,4'
          Dst:             list_transforms
        - Src:             'vici_query.c:271,4'
          Dst:             list_transforms
        - Src:             'vici_query.c:272,4'
          Dst:             list_transforms
        - Src:             'vici_query.c:273,4'
          Dst:             list_transforms
        - Src:             'vici_query.c:274,4'
          Dst:             list_transforms
        - Src:             'vici_query.c:275,4'
          Dst:             list_transforms
        - Src:             'vici_query.c:276,4'
          Dst:             list_transforms
        - Src:             'vici_query.c:277,4'
          Dst:             list_transforms
        - Src:             'vici_query.c:278,4'
          Dst:             list_transforms
    - functionName:    _cb_list_conns
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1021
      functionLinenumberEnd: 1187
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          833
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached:
        - build_auth_cfgs
        - enumerator_create_token
        - list_label
        - list_mode
        - list_proposals
        - streq
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1040,15'
          Dst:             streq
        - Src:             'vici_query.c:1045,7'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:1052,12'
          Dst:             enumerator_create_token
        - Src:             'vici_query.c:1062,12'
          Dst:             enumerator_create_token
        - Src:             'vici_query.c:1085,3'
          Dst:             list_proposals
        - Src:             'vici_query.c:1110,3'
          Dst:             build_auth_cfgs
        - Src:             'vici_query.c:1111,3'
          Dst:             build_auth_cfgs
        - Src:             'vici_query.c:1120,4'
          Dst:             list_mode
        - Src:             'vici_query.c:1121,4'
          Dst:             list_label
        - Src:             'vici_query.c:1135,4'
          Dst:             list_proposals
        - Src:             'vici_query.c:1136,4'
          Dst:             list_proposals
        - Src:             'vici_query.c:1186,6'
          Dst:             vici_builder_create
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    list_mode
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          120
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    list_label
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raise_policy_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 787
      functionLinenumberEnd: 833
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          258
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - list_label
        - list_mode
        - snprintf
        - vici_builder_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:794,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:795,2'
          Dst:             snprintf
        - Src:             'vici_query.c:804,2'
          Dst:             list_mode
        - Src:             'vici_query.c:805,2'
          Dst:             list_label
    - functionName:    raise_policy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 780
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          214
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - list_label
        - list_mode
        - snprintf
        - vici_builder_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:748,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:749,2'
          Dst:             snprintf
        - Src:             'vici_query.c:755,2'
          Dst:             list_mode
        - Src:             'vici_query.c:756,2'
          Dst:             list_label
    - functionName:    _cb_list_policies
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 837
      functionLinenumberEnd: 899
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          331
      EdgeCount:       64
      CyclomaticComplexity: 16
      functionsReached:
        - raise_policy
        - raise_policy_cfg
        - streq
        - vici_builder_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_query.c:877,4'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_query.c:857,17'
          Dst:             streq
        - Src:             'vici_query.c:858,16'
          Dst:             streq
        - Src:             'vici_query.c:862,4'
          Dst:             raise_policy
        - Src:             'vici_query.c:872,17'
          Dst:             streq
        - Src:             'vici_query.c:873,16'
          Dst:             streq
        - Src:             'vici_query.c:882,7'
          Dst:             raise_policy_cfg
        - Src:             'vici_query.c:888,7'
          Dst:             raise_policy_cfg
        - Src:             'vici_query.c:898,6'
          Dst:             vici_builder_create
    - functionName:    _cb_list_sas
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 734
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          345
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - list_child
        - list_ike
        - snprintf
        - streq
        - time_monotonic
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:688,15'
          Dst:             streq
        - Src:             'vici_query.c:697,9'
          Dst:             time_monotonic
        - Src:             'vici_query.c:699,7'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:702,3'
          Dst:             list_ike
        - Src:             'vici_query.c:708,18'
          Dst:             streq
        - Src:             'vici_query.c:717,4'
          Dst:             snprintf
        - Src:             'vici_query.c:720,4'
          Dst:             list_child
        - Src:             'vici_query.c:733,6'
          Dst:             vici_builder_create
    - functionName:    list_ike
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 664
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          629
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - __bswap_64
        - add_condition
        - list_ake
        - list_task_queue
        - list_vips
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:591,6'
          Dst:             __bswap_64
        - Src:             'vici_query.c:593,6'
          Dst:             __bswap_64
        - Src:             'vici_query.c:595,2'
          Dst:             add_condition
        - Src:             'vici_query.c:596,2'
          Dst:             add_condition
        - Src:             'vici_query.c:597,2'
          Dst:             add_condition
        - Src:             'vici_query.c:598,2'
          Dst:             add_condition
        - Src:             'vici_query.c:638,3'
          Dst:             list_ake
        - Src:             'vici_query.c:640,2'
          Dst:             add_condition
        - Src:             'vici_query.c:658,2'
          Dst:             list_vips
        - Src:             'vici_query.c:659,2'
          Dst:             list_vips
        - Src:             'vici_query.c:661,2'
          Dst:             list_task_queue
        - Src:             'vici_query.c:662,2'
          Dst:             list_task_queue
        - Src:             'vici_query.c:663,2'
          Dst:             list_task_queue
    - functionName:    list_child
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          226
      EdgeCount:       18
      CyclomaticComplexity: 3
      functionsReached:
        - list_child_ipsec
        - list_child_stats
        - list_label
        - list_mode
      functionUses:    4
      BranchProfiles:
        - Branch String:   'vici_query.c:444,2'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_query.c:441,2'
          Dst:             list_mode
        - Src:             'vici_query.c:442,2'
          Dst:             list_label
        - Src:             'vici_query.c:451,4'
          Dst:             list_child_ipsec
        - Src:             'vici_query.c:452,4'
          Dst:             list_child_stats
    - functionName:    list_child_ipsec
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          452
      EdgeCount:       64
      CyclomaticComplexity: 18
      functionsReached:
        - add_mark
        - list_ake
        - ntohl
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:322,33'
          Dst:             ntohl
        - Src:             'vici_query.c:323,34'
          Dst:             ntohl
        - Src:             'vici_query.c:327,34'
          Dst:             ntohs
        - Src:             'vici_query.c:328,35'
          Dst:             ntohs
        - Src:             'vici_query.c:330,2'
          Dst:             add_mark
        - Src:             'vici_query.c:331,2'
          Dst:             add_mark
        - Src:             'vici_query.c:379,3'
          Dst:             list_ake
    - functionName:    list_child_stats
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          188
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ntohl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_mark
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    list_ake
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          71
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - sprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:301,4'
          Dst:             sprintf
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_condition
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 509
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    list_vips
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 521
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          99
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    list_task_queue
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 502
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          104
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    manage_command
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1882
      functionLinenumberEnd: 1885
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2109
      functionLinenumberEnd: 2112
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_commands
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:2110,2'
          Dst:             manage_commands
    - functionName:    manage_commands
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1891
      functionLinenumberEnd: 1911
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          191
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_command
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1902,2'
          Dst:             manage_command
        - Src:             'vici_query.c:1903,2'
          Dst:             manage_command
        - Src:             'vici_query.c:1904,2'
          Dst:             manage_command
        - Src:             'vici_query.c:1905,2'
          Dst:             manage_command
        - Src:             'vici_query.c:1906,2'
          Dst:             manage_command
        - Src:             'vici_query.c:1907,2'
          Dst:             manage_command
        - Src:             'vici_query.c:1908,2'
          Dst:             manage_command
        - Src:             'vici_query.c:1909,2'
          Dst:             manage_command
        - Src:             'vici_query.c:1910,2'
          Dst:             manage_command
    - functionName:    child_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2045
      functionLinenumberEnd: 2079
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          166
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - list_child
        - list_ike
        - time_monotonic
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:2054,8'
          Dst:             time_monotonic
        - Src:             'vici_query.c:2055,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:2058,2'
          Dst:             list_ike
        - Src:             'vici_query.c:2064,2'
          Dst:             list_child
        - Src:             'vici_query.c:2067,2'
          Dst:             list_child
    - functionName:    child_updown
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2004
      functionLinenumberEnd: 2040
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          160
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - list_child
        - list_ike
        - snprintf
        - time_monotonic
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:2014,8'
          Dst:             time_monotonic
        - Src:             'vici_query.c:2015,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:2023,2'
          Dst:             list_ike
        - Src:             'vici_query.c:2026,2'
          Dst:             snprintf
        - Src:             'vici_query.c:2030,2'
          Dst:             list_child
    - functionName:    ike_update
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1974
      functionLinenumberEnd: 2000
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          139
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - list_ike
        - time_monotonic
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1983,8'
          Dst:             time_monotonic
        - Src:             'vici_query.c:1985,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:1993,2'
          Dst:             list_ike
    - functionName:    ike_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1945
      functionLinenumberEnd: 1970
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          124
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - list_ike
        - time_monotonic
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1954,8'
          Dst:             time_monotonic
        - Src:             'vici_query.c:1956,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:1959,2'
          Dst:             list_ike
        - Src:             'vici_query.c:1962,2'
          Dst:             list_ike
    - functionName:    ike_updown
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1915
      functionLinenumberEnd: 1941
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          107
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - list_ike
        - time_monotonic
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:1924,8'
          Dst:             time_monotonic
        - Src:             'vici_query.c:1926,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:1934,2'
          Dst:             list_ike
    - functionName:    alert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2083
      functionLinenumberEnd: 2105
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          121
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - list_ike
        - time_monotonic
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:2091,6'
          Dst:             vici_builder_create
        - Src:             'vici_query.c:2097,29'
          Dst:             time_monotonic
        - Src:             'vici_query.c:2097,3'
          Dst:             list_ike
    - functionName:    vici_query_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_query.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2118
      functionLinenumberEnd: 2139
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          86
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_commands
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_query.c:2121,2'
          Dst:             time_monotonic
        - Src:             'vici_query.c:2137,2'
          Dst:             manage_commands
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_cb
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          154
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - updown_handler_create
        - updown_listener_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'updown_plugin.c:63,20'
          Dst:             updown_handler_create
        - Src:             'updown_plugin.c:67,20'
          Dst:             updown_listener_create
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    updown_plugin_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reload
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 333
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - load_configs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_plugin.c:330,18'
          Dst:             linked_list_create
        - Src:             'eap_radius_plugin.c:331,2'
          Dst:             load_configs
    - functionName:    load_configs
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          585
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - radius_config_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_plugin.c:155,12'
          Dst:             radius_config_create
        - Src:             'eap_radius_plugin.c:238,12'
          Dst:             radius_config_create
    - functionName:    plugin_cb
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          212
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - eap_radius_accounting_create
        - eap_radius_dae_create
        - eap_radius_forward_create
        - eap_radius_provider_create
        - load_configs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_plugin.c:270,22'
          Dst:             eap_radius_accounting_create
        - Src:             'eap_radius_plugin.c:271,19'
          Dst:             eap_radius_forward_create
        - Src:             'eap_radius_plugin.c:272,20'
          Dst:             eap_radius_provider_create
        - Src:             'eap_radius_plugin.c:274,3'
          Dst:             load_configs
        - Src:             'eap_radius_plugin.c:279,16'
          Dst:             eap_radius_dae_create
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    delete_all_async
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          74
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - delete_ike_sa_job_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_plugin.c:426,13'
          Dst:             delete_ike_sa_job_create
    - functionName:    eap_radius_handle_timeout
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - callback_job_cancel_thread
        - callback_job_create_with_prio
        - delete_all_async
        - delete_ike_sa_job_create
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_plugin.c:446,13'
          Dst:             callback_job_create_with_prio
        - Src:             'eap_radius_plugin.c:446,13'
          Dst:             delete_all_async
        - Src:             'eap_radius_plugin.c:446,13'
          Dst:             callback_job_cancel_thread
        - Src:             'eap_radius_plugin.c:454,13'
          Dst:             delete_ike_sa_job_create
    - functionName:    eap_radius_create_client
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         24
      ICount:          163
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - radius_client_create
        - random
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_plugin.c:388,25'
          Dst:             random
        - Src:             'eap_radius_plugin.c:407,11'
          Dst:             radius_client_create
    - functionName:    eap_radius_plugin_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 350
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_plugin.c:353,2'
          Dst:             linked_list_create
        - Src:             'eap_radius_plugin.c:353,2'
          Dst:             rwlock_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - destroy_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:312,4'
          Dst:             destroy_entry
    - functionName:    destroy_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_attr
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:111,2'
          Dst:             destroy_attr
    - functionName:    destroy_attr
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          71
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - migrate_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:327,2'
          Dst:             migrate_entry
        - Src:             'eap_radius_provider.c:328,2'
          Dst:             migrate_entry
    - functionName:    ike_updown
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - release_unclaimed
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:293,3'
          Dst:             release_unclaimed
    - functionName:    release_unclaimed
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          75
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - destroy_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:262,3'
          Dst:             destroy_entry
    - functionName:    message_hook
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          132
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - release_unclaimed
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:280,4'
          Dst:             release_unclaimed
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          69
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clear_unclaimed
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          88
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - destroy_entry
        - enumerator_create_cleaner
        - enumerator_create_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:511,10'
          Dst:             enumerator_create_empty
        - Src:             'eap_radius_provider.c:513,9'
          Dst:             enumerator_create_cleaner
        - Src:             'eap_radius_provider.c:513,9'
          Dst:             destroy_entry
    - functionName:    add_attr
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_or_create_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:226,10'
          Dst:             get_or_create_entry
    - functionName:    get_or_create_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:125,3'
          Dst:             linked_list_create
        - Src:             'eap_radius_provider.c:125,3'
          Dst:             linked_list_create
    - functionName:    add_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 498
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          103
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add_attr
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:491,2'
          Dst:             chunk_create_clone
        - Src:             'eap_radius_provider.c:496,2'
          Dst:             add_attr
    - functionName:    add_framed_ip
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 483
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_addr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:481,2'
          Dst:             add_addr
    - functionName:    add_addr
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_or_create_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:176,10'
          Dst:             get_or_create_entry
    - functionName:    attribute_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - destroy_attr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:436,3'
          Dst:             destroy_attr
        - Src:             'eap_radius_provider.c:438,2'
          Dst:             destroy_attr
    - functionName:    attribute_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 429
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          136
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - destroy_attr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:419,3'
          Dst:             destroy_attr
    - functionName:    remove_attr
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - put_or_destroy_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:243,3'
          Dst:             put_or_destroy_entry
    - functionName:    put_or_destroy_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - destroy_entry
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:147,3'
          Dst:             destroy_entry
    - functionName:    create_attribute_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          114
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - linked_list_create
        - remove_attr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:452,2'
          Dst:             linked_list_create
        - Src:             'eap_radius_provider.c:465,10'
          Dst:             remove_attr
    - functionName:    release_address
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          129
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - remove_addr
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:380,7'
          Dst:             streq
        - Src:             'eap_radius_provider.c:383,12'
          Dst:             remove_addr
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    remove_addr
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          173
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - put_or_destroy_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:200,5'
          Dst:             put_or_destroy_entry
        - Src:             'eap_radius_provider.c:213,3'
          Dst:             put_or_destroy_entry
    - functionName:    acquire_address
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          130
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_addr
        - remove_addr
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:349,7'
          Dst:             streq
        - Src:             'eap_radius_provider.c:352,11'
          Dst:             remove_addr
        - Src:             'eap_radius_provider.c:355,5'
          Dst:             add_addr
    - functionName:    eap_radius_provider_get
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 582
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:157,20'
          Dst:             chunk_create
        - Src:             'eap_radius_provider.c:157,9'
          Dst:             chunk_hash
    - functionName:    eap_radius_provider_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 533
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          136
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - equals
        - hash
        - hashtable_create
        - mutex_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_provider.c:538,3'
          Dst:             hashtable_create
        - Src:             'eap_radius_provider.c:538,3'
          Dst:             hash
        - Src:             'eap_radius_provider.c:538,3'
          Dst:             equals
        - Src:             'eap_radius_provider.c:538,3'
          Dst:             hashtable_create
        - Src:             'eap_radius_provider.c:538,3'
          Dst:             hash
        - Src:             'eap_radius_provider.c:538,3'
          Dst:             equals
        - Src:             'eap_radius_provider.c:538,3'
          Dst:             mutex_create
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    strcaseeq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:55,32'
          Dst:             strcasecmp
    - functionName:    strcasecmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_identity
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_xauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_radius
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_xauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          135
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - eap_radius_build_attributes
        - eap_radius_forward_from_ike
        - eap_radius_forward_to_ike
        - eap_radius_handle_timeout
        - eap_radius_process_attributes
        - radius_message_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'eap_radius_xauth.c:140,3'
          Branch Sides:    []
      Callsites:
        - Src:             'eap_radius_xauth.c:129,12'
          Dst:             radius_message_create
        - Src:             'eap_radius_xauth.c:133,2'
          Dst:             eap_radius_build_attributes
        - Src:             'eap_radius_xauth.c:134,2'
          Dst:             eap_radius_forward_from_ike
        - Src:             'eap_radius_xauth.c:139,3'
          Dst:             eap_radius_forward_to_ike
        - Src:             'eap_radius_xauth.c:143,5'
          Dst:             eap_radius_process_attributes
        - Src:             'eap_radius_xauth.c:159,3'
          Dst:             eap_radius_handle_timeout
    - functionName:    process
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_xauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          259
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - array_count
        - build_round
        - chunk_create_cat
        - chunk_length
        - cp_payload_create_type
        - identification_create_from_data
        - strnlen
        - verify_radius
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_xauth.c:189,16'
          Dst:             strnlen
        - Src:             'eap_radius_xauth.c:201,15'
          Dst:             chunk_length
        - Src:             'eap_radius_xauth.c:201,15'
          Dst:             chunk_create_cat
        - Src:             'eap_radius_xauth.c:204,8'
          Dst:             identification_create_from_data
        - Src:             'eap_radius_xauth.c:214,6'
          Dst:             array_count
        - Src:             'eap_radius_xauth.c:216,10'
          Dst:             verify_radius
        - Src:             'eap_radius_xauth.c:218,7'
          Dst:             cp_payload_create_type
        - Src:             'eap_radius_xauth.c:219,6'
          Dst:             build_round
    - functionName:    strnlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_round
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_xauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          100
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - array_remove
        - chunk_create
        - configuration_attribute_create_chunk
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_xauth.c:86,7'
          Dst:             array_remove
        - Src:             'eap_radius_xauth.c:90,24'
          Dst:             configuration_attribute_create_chunk
        - Src:             'eap_radius_xauth.c:93,29'
          Dst:             strlen
        - Src:             'eap_radius_xauth.c:97,6'
          Dst:             strlen
        - Src:             'eap_radius_xauth.c:97,6'
          Dst:             chunk_create
        - Src:             'eap_radius_xauth.c:95,25'
          Dst:             configuration_attribute_create_chunk
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    initiate
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_xauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - build_round
        - configuration_attribute_create_chunk
        - cp_payload_create_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_xauth.c:107,7'
          Dst:             cp_payload_create_type
        - Src:             'eap_radius_xauth.c:109,24'
          Dst:             configuration_attribute_create_chunk
        - Src:             'eap_radius_xauth.c:112,6'
          Dst:             build_round
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_xauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_destroy
        - chunk_clear
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_xauth.c:300,2'
          Dst:             chunk_clear
        - Src:             'eap_radius_xauth.c:301,2'
          Dst:             array_destroy
    - functionName:    parse_rounds
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_xauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          166
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - array_count
        - array_insert
        - strcaseeq
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_xauth.c:253,18'
          Dst:             strlen
        - Src:             'eap_radius_xauth.c:258,3'
          Dst:             array_insert
        - Src:             'eap_radius_xauth.c:270,8'
          Dst:             strcaseeq
        - Src:             'eap_radius_xauth.c:274,5'
          Dst:             array_insert
        - Src:             'eap_radius_xauth.c:288,6'
          Dst:             array_count
    - functionName:    eap_radius_xauth_create_server
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_xauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          101
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - array_create
        - destroy
        - eap_radius_create_client
        - parse_rounds
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_xauth.c:316,2'
          Dst:             eap_radius_create_client
        - Src:             'eap_radius_xauth.c:316,2'
          Dst:             array_create
        - Src:             'eap_radius_xauth.c:331,7'
          Dst:             parse_rounds
        - Src:             'eap_radius_xauth.c:333,3'
          Dst:             destroy
        - Src:             'eap_radius_xauth.c:338,3'
          Dst:             destroy
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reload
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fclose
        - fopen
        - fprintf
        - retransmission_parse_default
        - retransmission_timeout_total
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_plugin.c:63,6'
          Dst:             fopen
        - Src:             'kernel_netlink_plugin.c:66,3'
          Dst:             retransmission_parse_default
        - Src:             'kernel_netlink_plugin.c:69,8'
          Dst:             retransmission_timeout_total
        - Src:             'kernel_netlink_plugin.c:70,3'
          Dst:             fprintf
        - Src:             'kernel_netlink_plugin.c:71,3'
          Dst:             fclose
    - functionName:    fopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kernel_netlink_plugin_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - reload
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_plugin.c:108,2'
          Dst:             reload
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_cb
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resolve_plugin_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - resolve_handler_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'resolve_plugin.c:90,2'
          Dst:             resolve_handler_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reload
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_cb
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    attr_plugin_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - attr_provider_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'attr_plugin.c:97,2'
          Dst:             attr_provider_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    add_legacy_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          171
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create_clone
        - host_create_from_string
      functionUses:    2
      BranchProfiles:
        - Branch String:   'attr_provider.c:155,5'
          Branch Sides:    []
      Callsites:
        - Src:             'attr_provider.c:150,10'
          Dst:             host_create_from_string
        - Src:             'attr_provider.c:167,4'
          Dst:             chunk_create_clone
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - attribute_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'attr_provider.c:130,2'
          Dst:             attribute_destroy
    - functionName:    attribute_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reload
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - attribute_destroy
        - linked_list_create
        - load_entries
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'attr_provider.c:331,2'
          Dst:             attribute_destroy
        - Src:             'attr_provider.c:332,21'
          Dst:             linked_list_create
        - Src:             'attr_provider.c:334,2'
          Dst:             load_entries
    - functionName:    load_entries
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         60
      ICount:          574
      EdgeCount:       77
      CyclomaticComplexity: 19
      functionsReached:
        - add_legacy_entry
        - atoi
        - chunk_create
        - chunk_create_cat
        - chunk_create_clone
        - chunk_length
        - enumerator_create_token
        - host_create_from_string
        - htonl
        - strchr
        - streq
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'attr_provider.c:301,6'
          Branch Sides:    []
      Callsites:
        - Src:             'attr_provider.c:214,3'
          Dst:             add_legacy_entry
        - Src:             'attr_provider.c:215,3'
          Dst:             add_legacy_entry
        - Src:             'attr_provider.c:230,7'
          Dst:             streq
        - Src:             'attr_provider.c:234,10'
          Dst:             atoi
        - Src:             'attr_provider.c:239,9'
          Dst:             streq
        - Src:             'attr_provider.c:251,12'
          Dst:             enumerator_create_token
        - Src:             'attr_provider.c:254,10'
          Dst:             strchr
        - Src:             'attr_provider.c:258,12'
          Dst:             atoi
        - Src:             'attr_provider.c:260,11'
          Dst:             host_create_from_string
        - Src:             'attr_provider.c:269,12'
          Dst:             strlen
        - Src:             'attr_provider.c:269,12'
          Dst:             chunk_create
        - Src:             'attr_provider.c:269,12'
          Dst:             chunk_create_clone
        - Src:             'attr_provider.c:276,13'
          Dst:             chunk_create_clone
        - Src:             'attr_provider.c:287,18'
          Dst:             htonl
        - Src:             'attr_provider.c:289,14'
          Dst:             chunk_create
        - Src:             'attr_provider.c:289,14'
          Dst:             chunk_length
        - Src:             'attr_provider.c:289,14'
          Dst:             chunk_create
        - Src:             'attr_provider.c:289,14'
          Dst:             chunk_create_cat
        - Src:             'attr_provider.c:294,14'
          Dst:             chunk_length
        - Src:             'attr_provider.c:294,14'
          Dst:             chunk_create_cat
    - functionName:    atoi
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_attr_enum_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_attr_enum_filter
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          131
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_attribute_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - enumerator_create_empty
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'attr_provider.c:120,10'
          Dst:             enumerator_create_filter
        - Src:             'attr_provider.c:124,9'
          Dst:             enumerator_create_empty
    - functionName:    attr_provider_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/attr/attr_provider.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - load_entries
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'attr_provider.c:350,2'
          Dst:             linked_list_create
        - Src:             'attr_provider.c:350,2'
          Dst:             rwlock_create
        - Src:             'attr_provider.c:364,2'
          Dst:             load_entries
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_handler
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_handler
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    initiator_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    initiator_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          208
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_initiator_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          75
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    release
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          105
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          191
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_provider
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_provider
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    responder_enum_create
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_responder_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          71
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_cleaner
        - enumerator_create_nested
        - responder_enum_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/attribute_manager.c:134,5'
          Dst:             enumerator_create_nested
        - Src:             'attributes/attribute_manager.c:134,5'
          Dst:             responder_enum_create
        - Src:             'attributes/attribute_manager.c:133,9'
          Dst:             enumerator_create_cleaner
    - functionName:    release_address
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    acquire_address
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          100
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    attribute_manager_create
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/attribute_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          66
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/attribute_manager.c:327,2'
          Dst:             linked_list_create
        - Src:             'attributes/attribute_manager.c:327,2'
          Dst:             linked_list_create
        - Src:             'attributes/attribute_manager.c:327,2'
          Dst:             rwlock_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1118
      functionLinenumberEnd: 1133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          118
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle_vips
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1066
      functionLinenumberEnd: 1089
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          138
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:1084,4'
          Dst:             unregister_listener
    - functionName:    unregister_listener
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 449
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    assign_vips
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1039
      functionLinenumberEnd: 1062
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          138
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:1057,4'
          Dst:             unregister_listener
    - functionName:    children_migrate
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 769
      functionLinenumberEnd: 796
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          150
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:791,4'
          Dst:             unregister_listener
    - functionName:    child_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 738
      functionLinenumberEnd: 765
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          150
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:760,4'
          Dst:             unregister_listener
    - functionName:    ike_reestablish_post
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 939
      functionLinenumberEnd: 963
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          141
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:958,4'
          Dst:             unregister_listener
    - functionName:    ike_reestablish_pre
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 912
      functionLinenumberEnd: 935
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          136
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:930,4'
          Dst:             unregister_listener
    - functionName:    ike_update
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 884
      functionLinenumberEnd: 908
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          139
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:903,4'
          Dst:             unregister_listener
    - functionName:    ike_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 857
      functionLinenumberEnd: 880
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          136
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:875,4'
          Dst:             unregister_listener
    - functionName:    child_updown
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 707
      functionLinenumberEnd: 734
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          152
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:729,4'
          Dst:             unregister_listener
    - functionName:    ike_updown
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 853
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          216
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - child_updown
        - unregister_listener
      functionUses:    0
      BranchProfiles:
        - Branch String:   'bus/bus.c:833,4'
          Branch Sides:    []
      Callsites:
        - Src:             'bus/bus.c:818,4'
          Dst:             unregister_listener
        - Src:             'bus/bus.c:849,4'
          Dst:             child_updown
    - functionName:    child_derived_keys
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 675
      functionLinenumberEnd: 703
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          161
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:698,4'
          Dst:             unregister_listener
    - functionName:    child_keys
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 643
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          160
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:665,4'
          Dst:             unregister_listener
    - functionName:    ike_derived_keys
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 638
      functionDepth:   0
      returnType:      void
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          162
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:633,4'
          Dst:             unregister_listener
    - functionName:    ike_keys
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      void
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          154
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:600,4'
          Dst:             unregister_listener
    - functionName:    narrow
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1008
      functionLinenumberEnd: 1035
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          156
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:1030,4'
          Dst:             unregister_listener
    - functionName:    authorize
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 967
      functionLinenumberEnd: 1002
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          177
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - alert
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:989,4'
          Dst:             unregister_listener
        - Src:             'bus/bus.c:1000,3'
          Dst:             alert
    - functionName:    alert
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          153
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:480,4'
          Dst:             unregister_listener
    - functionName:    message
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          157
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:569,4'
          Dst:             unregister_listener
    - functionName:    child_state_change
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 543
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          150
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:538,4'
          Dst:             unregister_listener
    - functionName:    ike_state_change
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          136
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - unregister_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:507,4'
          Dst:             unregister_listener
    - functionName:    _cb_vlog_cb
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          117
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_log_cb
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          108
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vlog
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          279
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - thread_current_id
        - vsnprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:393,17'
          Dst:             thread_current_id
        - Src:             'bus/bus.c:399,9'
          Dst:             vsnprintf
        - Src:             'bus/bus.c:406,10'
          Dst:             vsnprintf
        - Src:             'bus/bus.c:421,17'
          Dst:             thread_current_id
    - functionName:    log_
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:440,2'
          Dst:             vlog
    - functionName:    get_sa
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_sa
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_logger
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unregister_logger
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:300,2'
          Dst:             unregister_logger
    - functionName:    unregister_logger
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          170
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_find_max_levels
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          177
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    register_logger
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          191
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_logger
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          122
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - register_logger
        - unregister_logger
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:283,2'
          Dst:             unregister_logger
        - Src:             'bus/bus.c:289,4'
          Dst:             register_logger
    - functionName:    remove_listener
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_listener
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          66
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hook_creds
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1096
      functionLinenumberEnd: 1114
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       23
      CyclomaticComplexity: 13
      functionsReached:
        - alert
      functionUses:    1
      BranchProfiles:
        - Branch String:   'bus/bus.c:1097,2'
          Branch Sides:    []
      Callsites:
        - Src:             'bus/bus.c:1100,11'
          Dst:             alert
        - Src:             'bus/bus.c:1102,11'
          Dst:             alert
        - Src:             'bus/bus.c:1104,11'
          Dst:             alert
        - Src:             'bus/bus.c:1106,11'
          Dst:             alert
        - Src:             'bus/bus.c:1108,11'
          Dst:             alert
        - Src:             'bus/bus.c:1110,11'
          Dst:             alert
        - Src:             'bus/bus.c:1112,11'
          Dst:             alert
    - functionName:    bus_create
      functionSourceFile: '/src/strongswan/src/libcharon/bus/bus.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1139
      functionLinenumberEnd: 1190
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          178
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hook_creds
        - linked_list_create
        - mutex_create
        - rwlock_create
        - thread_value_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/bus.c:1143,2'
          Dst:             linked_list_create
        - Src:             'bus/bus.c:1143,2'
          Dst:             mutex_create
        - Src:             'bus/bus.c:1143,2'
          Dst:             rwlock_create
        - Src:             'bus/bus.c:1143,2'
          Dst:             thread_value_create
        - Src:             'bus/bus.c:1183,26'
          Dst:             linked_list_create
        - Src:             'bus/bus.c:1188,2'
          Dst:             hook_creds
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/file_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          69
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - close_file
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/listeners/file_logger.c:364,2'
          Dst:             close_file
    - functionName:    close_file
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/file_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          53
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - fclose
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/listeners/file_logger.c:290,3'
          Dst:             fclose
    - functionName:    open_
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/file_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          203
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - close
        - close_file
        - fchown
        - fdopen
        - open
        - setlinebuf
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/listeners/file_logger.c:300,6'
          Dst:             streq
        - Src:             'bus/listeners/file_logger.c:304,11'
          Dst:             streq
        - Src:             'bus/listeners/file_logger.c:312,8'
          Dst:             open
        - Src:             'bus/listeners/file_logger.c:322,8'
          Dst:             fchown
        - Src:             'bus/listeners/file_logger.c:331,8'
          Dst:             fchown
        - Src:             'bus/listeners/file_logger.c:338,10'
          Dst:             fdopen
        - Src:             'bus/listeners/file_logger.c:343,4'
          Dst:             close
        - Src:             'bus/listeners/file_logger.c:349,4'
          Dst:             setlinebuf
        - Src:             'bus/listeners/file_logger.c:354,2'
          Dst:             close_file
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    open
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fchown
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fdopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setlinebuf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strdupnull
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/string.h:79,13'
          Dst:             strdup
    - functionName:    set_options
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/file_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          78
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdupnull
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/listeners/file_logger.c:275,22'
          Dst:             strdupnull
    - functionName:    get_level
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/file_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log_
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/file_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          487
      EdgeCount:       79
      CyclomaticComplexity: 19
      functionsReached:
        - fprintf
        - gettimeofday
        - localtime_r
        - snprintf
        - strchr
        - strftime
      functionUses:    0
      BranchProfiles:
        - Branch String:   'bus/listeners/file_logger.c:173,4'
          Branch Sides:    []
      Callsites:
        - Src:             'bus/listeners/file_logger.c:121,3'
          Dst:             gettimeofday
        - Src:             'bus/listeners/file_logger.c:123,3'
          Dst:             localtime_r
        - Src:             'bus/listeners/file_logger.c:124,14'
          Dst:             strftime
        - Src:             'bus/listeners/file_logger.c:129,4'
          Dst:             snprintf
        - Src:             'bus/listeners/file_logger.c:135,4'
          Dst:             snprintf
        - Src:             'bus/listeners/file_logger.c:142,3'
          Dst:             snprintf
        - Src:             'bus/listeners/file_logger.c:145,4'
          Dst:             snprintf
        - Src:             'bus/listeners/file_logger.c:152,3'
          Dst:             fprintf
        - Src:             'bus/listeners/file_logger.c:155,4'
          Dst:             fprintf
        - Src:             'bus/listeners/file_logger.c:157,3'
          Dst:             fprintf
        - Src:             'bus/listeners/file_logger.c:161,4'
          Dst:             fprintf
        - Src:             'bus/listeners/file_logger.c:165,4'
          Dst:             fprintf
        - Src:             'bus/listeners/file_logger.c:167,3'
          Dst:             fprintf
        - Src:             'bus/listeners/file_logger.c:187,4'
          Dst:             fprintf
        - Src:             'bus/listeners/file_logger.c:190,3'
          Dst:             fprintf
        - Src:             'bus/listeners/file_logger.c:196,4'
          Dst:             snprintf
        - Src:             'bus/listeners/file_logger.c:201,4'
          Dst:             snprintf
        - Src:             'bus/listeners/file_logger.c:205,4'
          Dst:             snprintf
        - Src:             'bus/listeners/file_logger.c:211,11'
          Dst:             strchr
        - Src:             'bus/listeners/file_logger.c:214,5'
          Dst:             fprintf
        - Src:             'bus/listeners/file_logger.c:219,5'
          Dst:             fprintf
        - Src:             'bus/listeners/file_logger.c:224,5'
          Dst:             fprintf
        - Src:             'bus/listeners/file_logger.c:227,4'
          Dst:             fprintf
    - functionName:    gettimeofday
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    localtime_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strftime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_level
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/file_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    file_logger_create
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/file_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          79
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mutex_create
        - rwlock_create
        - set_level
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/listeners/file_logger.c:396,2'
          Dst:             strdup
        - Src:             'bus/listeners/file_logger.c:396,2'
          Dst:             mutex_create
        - Src:             'bus/listeners/file_logger.c:396,2'
          Dst:             rwlock_create
        - Src:             'bus/listeners/file_logger.c:412,2'
          Dst:             set_level
    - functionName:    file_logger_time_precision_parse
      functionSourceFile: '/src/strongswan/src/libcharon/bus/listeners/file_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          37
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bus/listeners/file_logger.c:378,6'
          Dst:             streq
        - Src:             'bus/listeners/file_logger.c:382,11'
          Dst:             streq
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_backend
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_backend
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 524
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_peer_enum_filter_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_peer_enum_filter
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    insert_sorted
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          116
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_peer_match
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          119
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    peer_enum_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    peer_enum_create
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_peer_cfg_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          225
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - enumerator_create_filter
        - enumerator_create_nested
        - get_ike_match
        - get_peer_match
        - insert_sorted
        - linked_list_create
        - peer_enum_create
        - peer_enum_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/backend_manager.c:438,15'
          Dst:             enumerator_create_nested
        - Src:             'config/backend_manager.c:438,15'
          Dst:             peer_enum_create
        - Src:             'config/backend_manager.c:438,15'
          Dst:             peer_enum_destroy
        - Src:             'config/backend_manager.c:447,12'
          Dst:             linked_list_create
        - Src:             'config/backend_manager.c:455,15'
          Dst:             get_ike_match
        - Src:             'config/backend_manager.c:466,19'
          Dst:             get_peer_match
        - Src:             'config/backend_manager.c:471,22'
          Dst:             get_peer_match
        - Src:             'config/backend_manager.c:482,4'
          Dst:             insert_sorted
        - Src:             'config/backend_manager.c:487,9'
          Dst:             enumerator_create_filter
    - functionName:    get_ike_match
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          164
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_peer_cfg_by_name
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 507
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          98
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_ike_enum_filter
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_ike_cfg_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
        - get_matching_ike_cfgs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/backend_manager.c:279,12'
          Dst:             get_matching_ike_cfgs
        - Src:             'config/backend_manager.c:281,9'
          Dst:             enumerator_create_filter
    - functionName:    get_matching_ike_cfgs
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          146
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - enumerator_create_nested
        - get_ike_match
        - ike_enum_create
        - insert_sorted_ike
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'config/backend_manager.c:211,12'
          Dst:             linked_list_create
        - Src:             'config/backend_manager.c:214,15'
          Dst:             enumerator_create_nested
        - Src:             'config/backend_manager.c:214,15'
          Dst:             ike_enum_create
        - Src:             'config/backend_manager.c:224,11'
          Dst:             get_ike_match
        - Src:             'config/backend_manager.c:237,4'
          Dst:             insert_sorted_ike
    - functionName:    _cb_ike_match_entry_list_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_enum_create
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    insert_sorted_ike
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ike_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_matching_ike_cfgs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/backend_manager.c:257,12'
          Dst:             get_matching_ike_cfgs
    - functionName:    backend_manager_create
      functionSourceFile: '/src/strongswan/src/libcharon/config/backend_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 555
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'config/backend_manager.c:541,2'
          Dst:             linked_list_create
        - Src:             'config/backend_manager.c:541,2'
          Dst:             rwlock_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 642
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          102
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 623
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sec_labels_equal
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/selectors/sec_label.h'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         88
      ICount:          651
      EdgeCount:       127
      CyclomaticComplexity: 41
      functionsReached:
        - sec_labels_equal
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/child_cfg.c:615,3'
          Dst:             streq
        - Src:             'config/child_cfg.c:616,3'
          Dst:             streq
        - Src:             'config/child_cfg.c:617,3'
          Dst:             sec_labels_equal
    - functionName:    set_replay_window
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_replay_window
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 556
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_interface
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 551
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_manual_prio
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_tfc
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 539
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select_label
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 460
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          255
      EdgeCount:       66
      CyclomaticComplexity: 18
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_label_mode
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_label
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_set_mark
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_mark
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 435
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_if_id
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_reqid
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_inactivity
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_algorithm
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_close_action
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_copy_dscp
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_hw_offload
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_dpd_action
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_start_action
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_mode
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    apply_jitter
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 335
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          79
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - random
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'config/child_cfg.c:341,50'
          Dst:             random
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_lifetime
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          86
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - apply_jitter
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/child_cfg.c:349,2'
          Dst:             memcpy_noop
        - Src:             'config/child_cfg.c:354,2'
          Dst:             apply_jitter
        - Src:             'config/child_cfg.c:355,2'
          Dst:             apply_jitter
        - Src:             'config/child_cfg.c:356,2'
          Dst:             apply_jitter
    - functionName:    get_updown
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select_traffic_selectors
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - child_cfg_select_ts
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/child_cfg.c:320,9'
          Dst:             child_cfg_select_ts
    - functionName:    child_cfg_select_ts
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          114
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - is_transport_mode
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'config/child_cfg.c:305,23'
          Dst:             is_transport_mode
    - functionName:    is_transport_mode
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - has_option
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'config/child_cfg.c:276,42'
          Dst:             has_option
    - functionName:    has_option
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_traffic_selectors
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_transport_mode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/child_cfg.c:285,28'
          Dst:             is_transport_mode
    - functionName:    add_traffic_selector
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - proposal_select
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/child_cfg.c:255,9'
          Dst:             proposal_select
    - functionName:    _cb_match_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_proposals
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          122
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/child_cfg.c:224,29'
          Dst:             linked_list_create
    - functionName:    add_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strdupnull
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/string.h:79,13'
          Dst:             strdup
    - functionName:    child_cfg_create
      functionSourceFile: '/src/strongswan/src/libcharon/config/child_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 648
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          311
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - linked_list_create
        - sec_label_mode_default
        - strdup
        - strdupnull
        - traffic_selector_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'config/child_cfg.c:651,2'
          Dst:             strdup
        - Src:             'config/child_cfg.c:651,2'
          Dst:             linked_list_create
        - Src:             'config/child_cfg.c:651,2'
          Dst:             traffic_selector_list_create
        - Src:             'config/child_cfg.c:651,2'
          Dst:             traffic_selector_list_create
        - Src:             'config/child_cfg.c:651,2'
          Dst:             strdupnull
        - Src:             'config/child_cfg.c:651,2'
          Dst:             sec_label_mode_default
        - Src:             'config/child_cfg.c:651,2'
          Dst:             strdupnull
    - functionName:    make_range
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - host_create_from_range
        - traffic_selector_create_from_bytes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:470,7'
          Dst:             host_create_from_range
        - Src:             'config/ike_cfg.c:482,7'
          Dst:             traffic_selector_create_from_bytes
    - functionName:    make_subnet
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 450
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strchr
        - traffic_selector_create_from_cidr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:453,8'
          Dst:             strchr
        - Src:             'config/ike_cfg.c:458,9'
          Dst:             traffic_selector_create_from_cidr
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          99
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          210
      EdgeCount:       41
      CyclomaticComplexity: 14
      functionsReached:
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:414,3'
          Dst:             streq
        - Src:             'config/ike_cfg.c:415,3'
          Dst:             streq
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    get_algorithm
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    childless
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fragmentation
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    force_encap_
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_ocsp_certreq
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_certreq
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - proposal_select
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:367,9'
          Dst:             proposal_select
    - functionName:    get_proposals
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:327,14'
          Dst:             linked_list_create
    - functionName:    add_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_dscp
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_other_port
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_my_port
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_other_addr
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_my_addr
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_other
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:278,9'
          Dst:             match
    - functionName:    match
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          292
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - host_create_from_dns
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:226,10'
          Dst:             host_create_from_dns
    - functionName:    match_me
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:272,9'
          Dst:             match
    - functionName:    resolve_other
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - resolve
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:206,9'
          Dst:             resolve
    - functionName:    resolve
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          107
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - host_create_any
        - host_create_from_dns
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:179,10'
          Dst:             host_create_from_dns
        - Src:             'config/ike_cfg.c:191,10'
          Dst:             host_create_any
    - functionName:    resolve_me
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - resolve
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:200,9'
          Dst:             resolve
    - functionName:    get_version
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_addresses
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - enumerator_create_token
        - make_range
        - make_subnet
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:499,15'
          Dst:             enumerator_create_token
        - Src:             'config/ike_cfg.c:502,8'
          Dst:             make_subnet
        - Src:             'config/ike_cfg.c:508,8'
          Dst:             make_range
        - Src:             'config/ike_cfg.c:514,29'
          Dst:             strdup
    - functionName:    ike_cfg_create
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 603
      functionLinenumberEnd: 654
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          200
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - parse_addresses
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:606,2'
          Dst:             strdup
        - Src:             'config/ike_cfg.c:606,2'
          Dst:             strdup
        - Src:             'config/ike_cfg.c:606,2'
          Dst:             linked_list_create
        - Src:             'config/ike_cfg.c:606,2'
          Dst:             linked_list_create
        - Src:             'config/ike_cfg.c:606,2'
          Dst:             linked_list_create
        - Src:             'config/ike_cfg.c:606,2'
          Dst:             linked_list_create
        - Src:             'config/ike_cfg.c:606,2'
          Dst:             linked_list_create
        - Src:             'config/ike_cfg.c:651,2'
          Dst:             parse_addresses
        - Src:             'config/ike_cfg.c:652,2'
          Dst:             parse_addresses
    - functionName:    ike_cfg_has_address
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 569
      functionLinenumberEnd: 596
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          137
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - host_create_from_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:586,10'
          Dst:             host_create_from_string
    - functionName:    ike_cfg_get_family
      functionSourceFile: '/src/strongswan/src/libcharon/config/ike_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          160
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - host_create_from_string
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'config/ike_cfg.c:540,7'
          Dst:             streq
        - Src:             'config/ike_cfg.c:544,10'
          Dst:             host_create_from_string
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 759
      functionLinenumberEnd: 780
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          138
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 752
      functionLinenumberEnd: 754
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_equal
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 702
      functionLinenumberEnd: 703
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    auth_cfg_equal
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 648
      functionLinenumberEnd: 696
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          267
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 748
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          270
      EdgeCount:       59
      CyclomaticComplexity: 20
      functionsReached:
        - auth_cfg_equal
        - get_ike_version
        - id_equal
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/peer_cfg.c:722,7'
          Dst:             streq
        - Src:             'config/peer_cfg.c:728,3'
          Dst:             get_ike_version
        - Src:             'config/peer_cfg.c:728,28'
          Dst:             get_ike_version
        - Src:             'config/peer_cfg.c:738,3'
          Dst:             auth_cfg_equal
        - Src:             'config/peer_cfg.c:741,3'
          Dst:             id_equal
    - functionName:    get_ike_version
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ppk_id
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 621
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_if_id
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_pool_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 585
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_pool
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/peer_cfg.c:580,40'
          Dst:             strdup
    - functionName:    create_virtual_ip_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 573
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_virtual_ip
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_dpd_timeout
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 561
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_dpd
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 555
      functionLinenumberEnd: 556
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_over_time
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 550
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_reauth_time
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - random
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/peer_cfg.c:544,30'
          Dst:             random
    - functionName:    get_rekey_time
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 521
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - random
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/peer_cfg.c:530,29'
          Dst:             random
    - functionName:    get_keyingtries
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_unique_policy
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 509
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ocsp_policy
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 504
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_cert_policy
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 498
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_auth_cfg_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 604
      functionLinenumberEnd: 610
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_auth_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 600
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ts_match
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 396
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          209
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select_child_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          135
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - create_child_cfg_enumerator
        - get_ts_match
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/peer_cfg.c:462,15'
          Dst:             create_child_cfg_enumerator
        - Src:             'config/peer_cfg.c:467,13'
          Dst:             get_ts_match
        - Src:             'config/peer_cfg.c:472,16'
          Dst:             get_ts_match
    - functionName:    create_child_cfg_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    child_cfg_enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    child_cfg_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    child_cfgs_replace_enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    child_cfgs_replace_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          195
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    replace_child_cfgs
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 336
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          256
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - linked_list_create
        - linked_list_create_from_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'config/peer_cfg.c:291,10'
          Dst:             linked_list_create
        - Src:             'config/peer_cfg.c:294,13'
          Dst:             linked_list_create_from_enumerator
    - functionName:    remove_child_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 350
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_child_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ike_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_option
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    peer_cfg_create
      functionSourceFile: '/src/strongswan/src/libcharon/config/peer_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 787
      functionLinenumberEnd: 870
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          327
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - linked_list_create
        - rwlock_create
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'config/peer_cfg.c:803,2'
          Dst:             strdup
        - Src:             'config/peer_cfg.c:803,2'
          Dst:             linked_list_create
        - Src:             'config/peer_cfg.c:803,2'
          Dst:             rwlock_create
        - Src:             'config/peer_cfg.c:803,2'
          Dst:             linked_list_create
        - Src:             'config/peer_cfg.c:803,2'
          Dst:             linked_list_create
        - Src:             'config/peer_cfg.c:803,2'
          Dst:             linked_list_create
        - Src:             'config/peer_cfg.c:803,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 779
      functionLinenumberEnd: 781
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    child_state_change_terminate
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - listener_done
      functionUses:    0
      BranchProfiles:
        - Branch String:   'control/controller.c:375,3'
          Branch Sides:    []
        - Branch String:   'control/controller.c:378,5'
          Branch Sides:    []
      Callsites:
        - Src:             'control/controller.c:387,12'
          Dst:             listener_done
    - functionName:    listener_done
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    terminate_child_execute
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 714
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          159
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - listener_done
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'control/controller.c:691,3'
          Dst:             listener_done
    - functionName:    terminate_child
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 719
      functionLinenumberEnd: 765
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          156
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - destroy_job
        - spinlock_create
        - terminate_child_execute
        - thread_cleanup_pop
        - thread_cleanup_push
        - wait_for_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'control/controller.c:723,2'
          Dst:             spinlock_create
        - Src:             'control/controller.c:750,2'
          Dst:             thread_cleanup_push
        - Src:             'control/controller.c:750,2'
          Dst:             destroy_job
        - Src:             'control/controller.c:754,3'
          Dst:             terminate_child_execute
        - Src:             'control/controller.c:758,7'
          Dst:             wait_for_listener
        - Src:             'control/controller.c:764,2'
          Dst:             thread_cleanup_pop
    - functionName:    destroy_job
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          127
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    wait_for_listener
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          124
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - listener_unregister
        - semaphore_create
        - thread_cancelability
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'control/controller.c:205,19'
          Dst:             semaphore_create
        - Src:             'control/controller.c:211,2'
          Dst:             thread_cleanup_push
        - Src:             'control/controller.c:211,2'
          Dst:             listener_unregister
        - Src:             'control/controller.c:212,8'
          Dst:             thread_cancelability
        - Src:             'control/controller.c:221,2'
          Dst:             thread_cancelability
        - Src:             'control/controller.c:222,2'
          Dst:             thread_cleanup_pop
    - functionName:    listener_unregister
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    listener_get_level
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    listener_log
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          107
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - listener_done
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'control/controller.c:241,4'
          Dst:             listener_done
    - functionName:    ike_state_change_terminate
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - listener_done
      functionUses:    0
      BranchProfiles:
        - Branch String:   'control/controller.c:309,3'
          Branch Sides:    []
      Callsites:
        - Src:             'control/controller.c:313,12'
          Dst:             listener_done
    - functionName:    get_priority_medium
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    terminate_ike_execute
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          148
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - listener_done
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'control/controller.c:590,3'
          Dst:             listener_done
    - functionName:    terminate_ike
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 673
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - bool
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          198
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - destroy_job
        - spinlock_create
        - terminate_ike_execute
        - thread_cleanup_pop
        - thread_cleanup_push
        - wait_for_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'control/controller.c:621,2'
          Dst:             spinlock_create
        - Src:             'control/controller.c:647,2'
          Dst:             thread_cleanup_push
        - Src:             'control/controller.c:647,2'
          Dst:             destroy_job
        - Src:             'control/controller.c:652,3'
          Dst:             terminate_ike_execute
        - Src:             'control/controller.c:660,7'
          Dst:             wait_for_listener
        - Src:             'control/controller.c:667,5'
          Dst:             terminate_ike_execute
        - Src:             'control/controller.c:672,2'
          Dst:             thread_cleanup_pop
    - functionName:    ike_reestablish_pre
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    child_state_change
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          121
      EdgeCount:       18
      CyclomaticComplexity: 2
      functionsReached:
        - listener_done
      functionUses:    0
      BranchProfiles:
        - Branch String:   'control/controller.c:333,3'
          Branch Sides:    []
        - Branch String:   'control/controller.c:339,5'
          Branch Sides:    []
      Callsites:
        - Src:             'control/controller.c:337,12'
          Dst:             listener_done
        - Src:             'control/controller.c:355,12'
          Dst:             listener_done
    - functionName:    ike_state_change
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - listener_done
      functionUses:    0
      BranchProfiles:
        - Branch String:   'control/controller.c:269,3'
          Branch Sides:    []
      Callsites:
        - Src:             'control/controller.c:285,13'
          Dst:             listener_done
        - Src:             'control/controller.c:290,12'
          Dst:             listener_done
    - functionName:    initiate_execute
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          381
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - listener_done
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'control/controller.c:446,3'
          Dst:             listener_done
        - Src:             'control/controller.c:471,4'
          Dst:             listener_done
        - Src:             'control/controller.c:489,5'
          Dst:             listener_done
        - Src:             'control/controller.c:507,4'
          Dst:             listener_done
    - functionName:    initiate
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          182
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - destroy_job
        - initiate_execute
        - spinlock_create
        - thread_cleanup_pop
        - thread_cleanup_push
        - wait_for_listener
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'control/controller.c:528,2'
          Dst:             spinlock_create
        - Src:             'control/controller.c:558,2'
          Dst:             thread_cleanup_push
        - Src:             'control/controller.c:558,2'
          Dst:             destroy_job
        - Src:             'control/controller.c:562,3'
          Dst:             initiate_execute
        - Src:             'control/controller.c:566,7'
          Dst:             wait_for_listener
        - Src:             'control/controller.c:572,2'
          Dst:             thread_cleanup_pop
    - functionName:    create_ike_sa_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    controller_create
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 787
      functionLinenumberEnd: 800
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    controller_cb_empty
      functionSourceFile: '/src/strongswan/src/libcharon/control/controller.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 774
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_fragment_v1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2964
      functionLinenumberEnd: 3020
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          240
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - add_fragment
        - array_count
        - array_create
        - merge_fragments
        - parse_header
        - parser_create
        - reset_defrag
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2981,3'
          Dst:             reset_defrag
        - Src:             'encoding/message.c:2984,21'
          Dst:             array_create
        - Src:             'encoding/message.c:2993,11'
          Dst:             add_fragment
        - Src:             'encoding/message.c:2999,6'
          Dst:             array_count
        - Src:             'encoding/message.c:3007,9'
          Dst:             merge_fragments
        - Src:             'encoding/message.c:3012,17'
          Dst:             parser_create
        - Src:             'encoding/message.c:3014,6'
          Dst:             parse_header
    - functionName:    reset_defrag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1070
      functionLinenumberEnd: 1075
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy_function
        - fragment_destroy
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1071,2'
          Dst:             array_destroy_function
        - Src:             'encoding/message.c:1071,2'
          Dst:             fragment_destroy
    - functionName:    add_fragment
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2895
      functionLinenumberEnd: 2927
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          165
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - array_count
        - array_get
        - array_insert
        - chunk_create_clone
        - reset_defrag
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2899,18'
          Dst:             array_count
        - Src:             'encoding/message.c:2901,3'
          Dst:             array_get
        - Src:             'encoding/message.c:2918,3'
          Dst:             reset_defrag
        - Src:             'encoding/message.c:2921,2'
          Dst:             chunk_create_clone
        - Src:             'encoding/message.c:2925,2'
          Dst:             array_insert
    - functionName:    merge_fragments
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2934
      functionLinenumberEnd: 2959
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          152
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - array_count
        - array_get
        - bio_writer_create
        - reset_defrag
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2941,11'
          Dst:             bio_writer_create
        - Src:             'encoding/message.c:2942,18'
          Dst:             array_count
        - Src:             'encoding/message.c:2944,3'
          Dst:             array_get
        - Src:             'encoding/message.c:2956,2'
          Dst:             reset_defrag
    - functionName:    parse_header
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2323
      functionLinenumberEnd: 2398
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          329
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - ike_sa_id_create
        - payload_get_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2355,20'
          Dst:             ike_sa_id_create
        - Src:             'encoding/message.c:2383,14'
          Dst:             payload_get_field
    - functionName:    fragment_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1064
      functionLinenumberEnd: 1067
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1065,2'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3147
      functionLinenumberEnd: 3162
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_destroy_offset
        - reset_defrag
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:3154,3'
          Dst:             reset_defrag
        - Src:             'encoding/message.c:3159,3'
          Dst:             array_destroy_offset
    - functionName:    set_metadata
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3141
      functionLinenumberEnd: 3143
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_metadata
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3135
      functionLinenumberEnd: 3136
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_fragments
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2317
      functionLinenumberEnd: 2318
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2318,9'
          Dst:             array_create_enumerator
    - functionName:    get_packet_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2311
      functionLinenumberEnd: 2312
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_packet
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2305
      functionLinenumberEnd: 2306
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_notify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1346
      functionLinenumberEnd: 1366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - create_payload_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1351,15'
          Dst:             create_payload_enumerator
    - functionName:    create_payload_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1315
      functionLinenumberEnd: 1316
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_payload_at
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1321
      functionLinenumberEnd: 1323
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_destination
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1297
      functionLinenumberEnd: 1299
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_destination
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1309
      functionLinenumberEnd: 1310
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_source
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1291
      functionLinenumberEnd: 1293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_source
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1303
      functionLinenumberEnd: 1304
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_fragment_v2
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3024
      functionLinenumberEnd: 3131
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          407
      EdgeCount:       50
      CyclomaticComplexity: 15
      functionsReached:
        - add_fragment
        - array_count
        - array_create
        - encrypted_payload_create_from_plain
        - merge_fragments
        - reset_defrag
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:3048,3'
          Dst:             reset_defrag
        - Src:             'encoding/message.c:3053,3'
          Dst:             reset_defrag
        - Src:             'encoding/message.c:3055,21'
          Dst:             array_create
        - Src:             'encoding/message.c:3063,11'
          Dst:             add_fragment
        - Src:             'encoding/message.c:3087,6'
          Dst:             array_count
        - Src:             'encoding/message.c:3098,9'
          Dst:             merge_fragments
        - Src:             'encoding/message.c:3101,14'
          Dst:             encrypted_payload_create_from_plain
    - functionName:    is_fragmented
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1237
      functionLinenumberEnd: 1238
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1238,9'
          Dst:             array_count
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clear_fragments
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2144
      functionLinenumberEnd: 2147
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy_offset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2145,2'
          Dst:             array_destroy_offset
    - functionName:    create_fragment
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2087
      functionLinenumberEnd: 2137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - short
        - short
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          232
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - clone_message
        - encrypted_fragment_payload_create_from_data
        - fragment_payload_create_from_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2094,12'
          Dst:             clone_message
        - Src:             'encoding/message.c:2111,26'
          Dst:             fragment_payload_create_from_data
        - Src:             'encoding/message.c:2116,26'
          Dst:             encrypted_fragment_payload_create_from_data
    - functionName:    clone_message
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2067
      functionLinenumberEnd: 2079
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          89
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
        - message_create_from_packet
        - packet_clone_no_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2070,39'
          Dst:             packet_clone_no_data
        - Src:             'encoding/message.c:2070,12'
          Dst:             message_create_from_packet
        - Src:             'encoding/message.c:2077,2'
          Dst:             memcpy_noop
    - functionName:    message_create_from_packet
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3168
      functionLinenumberEnd: 3225
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          214
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - parser_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:3171,2'
          Dst:             linked_list_create
        - Src:             'encoding/message.c:3171,2'
          Dst:             parser_create
    - functionName:    get_payload
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1327
      functionLinenumberEnd: 1341
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - create_payload_enumerator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1331,15'
          Dst:             create_payload_enumerator
    - functionName:    fragment
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2159
      functionLinenumberEnd: 2301
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         92
      ICount:          900
      EdgeCount:       123
      CyclomaticComplexity: 33
      functionsReached:
        - array_create
        - array_create_enumerator
        - array_insert
        - chunk_create
        - chunk_skip
        - clear_fragments
        - create_fragment
        - enumerator_create_single
        - finalize_message
        - generate_message
        - generator_create
        - generator_create_no_dbg
        - get_payload
        - is_encoded
        - round_down
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2184,6'
          Dst:             is_encoded
        - Src:             'encoding/message.c:2188,38'
          Dst:             get_payload
        - Src:             'encoding/message.c:2195,12'
          Dst:             generate_message
        - Src:             'encoding/message.c:2212,13'
          Dst:             finalize_message
        - Src:             'encoding/message.c:2218,16'
          Dst:             enumerator_create_single
        - Src:             'encoding/message.c:2231,13'
          Dst:             finalize_message
        - Src:             'encoding/message.c:2249,16'
          Dst:             generator_create
        - Src:             'encoding/message.c:2253,16'
          Dst:             generator_create_no_dbg
        - Src:             'encoding/message.c:2258,8'
          Dst:             is_encoded
        - Src:             'encoding/message.c:2269,14'
          Dst:             round_down
        - Src:             'encoding/message.c:2278,20'
          Dst:             array_create
        - Src:             'encoding/message.c:2285,12'
          Dst:             chunk_create
        - Src:             'encoding/message.c:2284,14'
          Dst:             create_fragment
        - Src:             'encoding/message.c:2291,4'
          Dst:             clear_fragments
        - Src:             'encoding/message.c:2295,3'
          Dst:             array_insert
        - Src:             'encoding/message.c:2296,10'
          Dst:             chunk_skip
        - Src:             'encoding/message.c:2298,15'
          Dst:             array_create_enumerator
    - functionName:    is_encoded
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1232
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generate_message
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1762
      functionLinenumberEnd: 1900
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         69
      ICount:          510
      EdgeCount:       92
      CyclomaticComplexity: 25
      functionsReached:
        - chunk_free
        - create_header
        - create_payload_enumerator
        - generator_create
        - get_message_rule
        - get_payload_rule
        - hash_payload_create
        - order_payloads
        - wrap_payloads
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1786,15'
          Dst:             get_message_rule
        - Src:             'encoding/message.c:1795,3'
          Dst:             order_payloads
        - Src:             'encoding/message.c:1805,19'
          Dst:             hash_payload_create
        - Src:             'encoding/message.c:1812,4'
          Dst:             chunk_free
        - Src:             'encoding/message.c:1829,11'
          Dst:             get_payload_rule
        - Src:             'encoding/message.c:1852,17'
          Dst:             wrap_payloads
        - Src:             'encoding/message.c:1873,31'
          Dst:             generator_create
        - Src:             'encoding/message.c:1874,15'
          Dst:             create_header
        - Src:             'encoding/message.c:1876,15'
          Dst:             create_payload_enumerator
    - functionName:    finalize_message
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1908
      functionLinenumberEnd: 1960
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          337
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - chunk_create
        - chunk_create_clone
        - htoun32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1928,4'
          Dst:             htoun32
        - Src:             'encoding/message.c:1939,2'
          Dst:             htoun32
        - Src:             'encoding/message.c:1940,39'
          Dst:             chunk_create_clone
        - Src:             'encoding/message.c:1950,16'
          Dst:             chunk_create
    - functionName:    round_down
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/align.h'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htoun32
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:132,9'
          Dst:             htonl
    - functionName:    get_message_rule
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1081
      functionLinenumberEnd: 1093
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    order_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1584
      functionLinenumberEnd: 1641
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          212
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - add_payload
        - linked_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1592,9'
          Dst:             linked_list_create
        - Src:             'encoding/message.c:1621,6'
          Dst:             add_payload
        - Src:             'encoding/message.c:1638,3'
          Dst:             add_payload
    - functionName:    get_payload_rule
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1100
      functionLinenumberEnd: 1111
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          62
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    wrap_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1647
      functionLinenumberEnd: 1709
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          196
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - add_payload
        - encrypted_payload_create
        - get_payload_rule
        - linked_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1653,13'
          Dst:             linked_list_create
        - Src:             'encoding/message.c:1675,15'
          Dst:             encrypted_payload_create
        - Src:             'encoding/message.c:1679,15'
          Dst:             encrypted_payload_create
        - Src:             'encoding/message.c:1688,10'
          Dst:             get_payload_rule
        - Src:             'encoding/message.c:1703,4'
          Dst:             add_payload
    - functionName:    create_header
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1715
      functionLinenumberEnd: 1749
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          195
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ike_header_create_version
        - payload_get_field
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1720,15'
          Dst:             ike_header_create_version
        - Src:             'encoding/message.c:1742,14'
          Dst:             payload_get_field
    - functionName:    add_payload
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1243
      functionLinenumberEnd: 1260
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          92
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_plain
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1989
      functionLinenumberEnd: 2061
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          283
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - create_header
        - create_payload_enumerator
        - generator_create_no_dbg
        - htons
        - htoun32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2011,14'
          Dst:             generator_create_no_dbg
        - Src:             'encoding/message.c:2012,15'
          Dst:             create_header
        - Src:             'encoding/message.c:2022,18'
          Dst:             generator_create_no_dbg
        - Src:             'encoding/message.c:2038,16'
          Dst:             create_payload_enumerator
        - Src:             'encoding/message.c:2051,15'
          Dst:             chunk_create
        - Src:             'encoding/message.c:2052,18'
          Dst:             htons
        - Src:             'encoding/message.c:2054,2'
          Dst:             htoun32
        - Src:             'encoding/message.c:2055,11'
          Dst:             chunk_length
        - Src:             'encoding/message.c:2055,11'
          Dst:             chunk_create_cat
    - functionName:    generate
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1964
      functionLinenumberEnd: 1985
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - finalize_message
        - generate_message
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1969,11'
          Dst:             generate_message
        - Src:             'encoding/message.c:1975,11'
          Dst:             finalize_message
    - functionName:    parse_body
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2799
      functionLinenumberEnd: 2888
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          232
      EdgeCount:       51
      CyclomaticComplexity: 16
      functionsReached:
        - chunk_equals_const
        - chunk_free
        - decrypt_payloads
        - get_message_rule
        - get_payload
        - parse_payloads
        - verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2805,15'
          Dst:             get_message_rule
        - Src:             'encoding/message.c:2818,12'
          Dst:             parse_payloads
        - Src:             'encoding/message.c:2825,11'
          Dst:             decrypt_payloads
        - Src:             'encoding/message.c:2832,11'
          Dst:             verify
        - Src:             'encoding/message.c:2864,5'
          Dst:             chunk_free
        - Src:             'encoding/message.c:2867,36'
          Dst:             get_payload
        - Src:             'encoding/message.c:2871,9'
          Dst:             chunk_equals_const
        - Src:             'encoding/message.c:2874,5'
          Dst:             chunk_free
        - Src:             'encoding/message.c:2877,4'
          Dst:             chunk_free
    - functionName:    parse_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2429
      functionLinenumberEnd: 2497
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          192
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2650
      functionLinenumberEnd: 2738
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          300
      EdgeCount:       70
      CyclomaticComplexity: 21
      functionsReached:
        - accept_unencrypted_mm
        - decrypt_and_extract
        - decrypt_fragment
        - get_payload_rule
        - is_connectivity_check
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2692,13'
          Dst:             decrypt_and_extract
        - Src:             'encoding/message.c:2713,13'
          Dst:             decrypt_fragment
        - Src:             'encoding/message.c:2722,5'
          Dst:             is_connectivity_check
        - Src:             'encoding/message.c:2725,11'
          Dst:             get_payload_rule
        - Src:             'encoding/message.c:2727,6'
          Dst:             accept_unencrypted_mm
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2745
      functionLinenumberEnd: 2795
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          169
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - create_payload_enumerator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2760,16'
          Dst:             create_payload_enumerator
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_and_extract
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2504
      functionLinenumberEnd: 2591
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          328
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - chunk_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:2552,8'
          Dst:             chunk_create
    - functionName:    decrypt_fragment
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2598
      functionLinenumberEnd: 2626
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          139
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_connectivity_check
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2404
      functionLinenumberEnd: 2422
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    accept_unencrypted_mm
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2633
      functionLinenumberEnd: 2644
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    disable_sort
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1576
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_notify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1264
      functionLinenumberEnd: 1287
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - bool
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_payload
        - notify_payload_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:1278,12'
          Dst:             notify_payload_create
        - Src:             'encoding/message.c:1282,12'
          Dst:             notify_payload_create
        - Src:             'encoding/message.c:1286,2'
          Dst:             add_payload
    - functionName:    set_reserved_header_bit
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1222
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_reserved_header_bit
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1212
      functionLinenumberEnd: 1218
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_version_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1206
      functionLinenumberEnd: 1208
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_request
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1200
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_request
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1194
      functionLinenumberEnd: 1196
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_first_payload_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1188
      functionLinenumberEnd: 1189
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_exchange_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1182
      functionLinenumberEnd: 1183
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_exchange_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1176
      functionLinenumberEnd: 1178
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ike_sa_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1122
      functionLinenumberEnd: 1123
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_ike_sa_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1115
      functionLinenumberEnd: 1118
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_responder_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1146
      functionLinenumberEnd: 1147
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_initiator_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1140
      functionLinenumberEnd: 1141
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_message_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1134
      functionLinenumberEnd: 1135
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_message_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1128
      functionLinenumberEnd: 1130
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_minor_version
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1170
      functionLinenumberEnd: 1171
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_minor_version
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1164
      functionLinenumberEnd: 1166
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_major_version
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1158
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_major_version
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1152
      functionLinenumberEnd: 1154
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    message_create_defrag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3245
      functionLinenumberEnd: 3270
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          133
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - clone_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:3253,29'
          Dst:             clone_message
    - functionName:    message_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3232
      functionLinenumberEnd: 3238
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - message_create_from_packet
        - packet_create
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/message.c:3233,47'
          Dst:             packet_create
        - Src:             'encoding/message.c:3233,20'
          Dst:             message_create_from_packet
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_major_version
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reset_context
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 625
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_remaining_byte_count
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 620
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bad_bitpos
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    short_input
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_uint15
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          85
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - bad_bitpos
        - memcpy_noop
        - ntohs
        - short_input
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/parser.c:181,10'
          Dst:             short_input
        - Src:             'encoding/parser.c:185,10'
          Dst:             bad_bitpos
        - Src:             'encoding/parser.c:189,3'
          Dst:             memcpy_noop
        - Src:             'encoding/parser.c:190,17'
          Dst:             ntohs
    - functionName:    parse_list
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          122
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - bad_bitpos
        - short_input
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/parser.c:308,10'
          Dst:             short_input
        - Src:             'encoding/parser.c:312,10'
          Dst:             bad_bitpos
    - functionName:    parse_chunk
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          110
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - bad_bitpos
        - chunk_create
        - memcpy_noop
        - short_input
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/parser.c:350,10'
          Dst:             short_input
        - Src:             'encoding/parser.c:354,10'
          Dst:             bad_bitpos
        - Src:             'encoding/parser.c:358,17'
          Dst:             chunk_create
        - Src:             'encoding/parser.c:359,3'
          Dst:             memcpy_noop
    - functionName:    parse_bit
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          112
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - short_input
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/parser.c:276,10'
          Dst:             short_input
    - functionName:    parse_bytes
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - bad_bitpos
        - memcpy_noop
        - short_input
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/parser.c:253,10'
          Dst:             short_input
        - Src:             'encoding/parser.c:257,10'
          Dst:             bad_bitpos
        - Src:             'encoding/parser.c:261,3'
          Dst:             memcpy_noop
    - functionName:    parse_uint32
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          78
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - bad_bitpos
        - memcpy_noop
        - ntohl
        - short_input
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/parser.c:229,10'
          Dst:             short_input
        - Src:             'encoding/parser.c:233,10'
          Dst:             bad_bitpos
        - Src:             'encoding/parser.c:237,3'
          Dst:             memcpy_noop
        - Src:             'encoding/parser.c:238,17'
          Dst:             ntohl
    - functionName:    parse_uint16
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          78
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - bad_bitpos
        - memcpy_noop
        - ntohs
        - short_input
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/parser.c:206,10'
          Dst:             short_input
        - Src:             'encoding/parser.c:210,10'
          Dst:             bad_bitpos
        - Src:             'encoding/parser.c:214,3'
          Dst:             memcpy_noop
        - Src:             'encoding/parser.c:215,17'
          Dst:             ntohs
    - functionName:    parse_uint8
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          74
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - bad_bitpos
        - short_input
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/parser.c:158,10'
          Dst:             short_input
        - Src:             'encoding/parser.c:162,10'
          Dst:             bad_bitpos
    - functionName:    parse_uint4
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          117
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - bad_bitpos
        - short_input
      functionUses:    1
      BranchProfiles:
        - Branch String:   'encoding/parser.c:123,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/parser.c:121,10'
          Dst:             short_input
        - Src:             'encoding/parser.c:141,11'
          Dst:             bad_bitpos
    - functionName:    parse_payload
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         93
      ICount:          755
      EdgeCount:       116
      CyclomaticComplexity: 25
      functionsReached:
        - parse_bit
        - parse_bytes
        - parse_chunk
        - parse_list
        - parse_uint15
        - parse_uint16
        - parse_uint32
        - parse_uint4
        - parse_uint8
        - payload_create
        - payload_is_known
        - unknown_payload_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/parser.c:412,3'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/parser.c:377,6'
          Dst:             payload_is_known
        - Src:             'encoding/parser.c:379,9'
          Dst:             payload_create
        - Src:             'encoding/parser.c:383,21'
          Dst:             unknown_payload_create
        - Src:             'encoding/parser.c:416,10'
          Dst:             parse_uint4
        - Src:             'encoding/parser.c:426,10'
          Dst:             parse_uint8
        - Src:             'encoding/parser.c:435,10'
          Dst:             parse_uint16
        - Src:             'encoding/parser.c:445,10'
          Dst:             parse_uint32
        - Src:             'encoding/parser.c:454,10'
          Dst:             parse_bytes
        - Src:             'encoding/parser.c:464,10'
          Dst:             parse_bit
        - Src:             'encoding/parser.c:473,10'
          Dst:             parse_uint16
        - Src:             'encoding/parser.c:490,10'
          Dst:             parse_uint8
        - Src:             'encoding/parser.c:500,10'
          Dst:             parse_chunk
        - Src:             'encoding/parser.c:519,7'
          Dst:             parse_list
        - Src:             'encoding/parser.c:531,7'
          Dst:             parse_chunk
        - Src:             'encoding/parser.c:541,10'
          Dst:             parse_chunk
        - Src:             'encoding/parser.c:551,10'
          Dst:             parse_bit
        - Src:             'encoding/parser.c:561,10'
          Dst:             parse_uint15
        - Src:             'encoding/parser.c:570,10'
          Dst:             parse_uint16
        - Src:             'encoding/parser.c:580,10'
          Dst:             parse_uint16
        - Src:             'encoding/parser.c:591,7'
          Dst:             parse_chunk
    - functionName:    parser_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 646
      functionLinenumberEnd: 662
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          67
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_value
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_chunk
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/configuration_attribute.c:270,10'
          Dst:             chunk_create
    - functionName:    get_cattr_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         77
      ICount:          335
      EdgeCount:       87
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/configuration_attribute.c:127,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/configuration_attribute.c:256,9'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    configuration_attribute_create_value
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - configuration_attribute_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/configuration_attribute.c:347,6'
          Dst:             configuration_attribute_create
    - functionName:    configuration_attribute_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          80
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    configuration_attribute_create_chunk
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/configuration_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          74
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - configuration_attribute_create
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/configuration_attribute.c:330,8'
          Dst:             configuration_attribute_create
        - Src:             'encoding/payloads/configuration_attribute.c:332,16'
          Dst:             chunk_create_clone
    - functionName:    get_identifier
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_identifier
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_config_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compute_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_header_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/cp_payload.c:237,25'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compute_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/cp_payload.c:263,2'
          Dst:             compute_length
    - functionName:    create_attribute_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cp_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cp_payload_create_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/cp_payload.c:331,9'
          Dst:             cp_payload_create_type
    - functionName:    cp_payload_create_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cp_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          98
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
        - linked_list_create
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/cp_payload.c:298,2'
          Dst:             get_header_length
        - Src:             'encoding/payloads/cp_payload.c:298,2'
          Dst:             linked_list_create
    - functionName:    frag_get_content
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 909
      functionLinenumberEnd: 910
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_total_fragments
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 903
      functionLinenumberEnd: 904
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_fragment_number
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 897
      functionLinenumberEnd: 898
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_decrypt
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 977
      functionLinenumberEnd: 993
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          109
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - append_header_frag
        - chunk_create_clone
        - decrypt_content
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:987,10'
          Dst:             append_header_frag
        - Src:             'encoding/payloads/encrypted_payload.c:988,11'
          Dst:             decrypt_content
        - Src:             'encoding/payloads/encrypted_payload.c:990,16'
          Dst:             chunk_create_clone
    - functionName:    append_header_frag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 936
      functionLinenumberEnd: 950
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          90
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - frag_get_length
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:946,19'
          Dst:             frag_get_length
        - Src:             'encoding/payloads/encrypted_payload.c:946,13'
          Dst:             htons
        - Src:             'encoding/payloads/encrypted_payload.c:947,22'
          Dst:             htons
        - Src:             'encoding/payloads/encrypted_payload.c:948,22'
          Dst:             htons
        - Src:             'encoding/payloads/encrypted_payload.c:950,9'
          Dst:             chunk_create
        - Src:             'encoding/payloads/encrypted_payload.c:950,9'
          Dst:             chunk_length
        - Src:             'encoding/payloads/encrypted_payload.c:950,9'
          Dst:             chunk_create
        - Src:             'encoding/payloads/encrypted_payload.c:950,9'
          Dst:             chunk_create_cat
    - functionName:    decrypt_content
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 673
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          205
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:659,11'
          Dst:             chunk_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 876
      functionLinenumberEnd: 892
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - compute_overhead
        - frag_get_header_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:887,28'
          Dst:             compute_overhead
        - Src:             'encoding/payloads/encrypted_payload.c:891,26'
          Dst:             frag_get_header_length
    - functionName:    compute_overhead
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 849
      functionLinenumberEnd: 850
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_encrypt
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 955
      functionLinenumberEnd: 973
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          83
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - append_header_frag
        - encrypt_content
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:965,10'
          Dst:             append_header_frag
        - Src:             'encoding/payloads/encrypted_payload.c:969,11'
          Dst:             encrypt_content
    - functionName:    encrypt_content
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 501
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          281
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - memcpy_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:469,15'
          Dst:             chunk_create
        - Src:             'encoding/payloads/encrypted_payload.c:471,2'
          Dst:             memcpy_noop
        - Src:             'encoding/payloads/encrypted_payload.c:475,10'
          Dst:             chunk_create
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_get_transform
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 927
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_set_transform
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 921
      functionLinenumberEnd: 923
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_add_payload
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 915
      functionLinenumberEnd: 917
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 997
      functionLinenumberEnd: 1001
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 823
      functionLinenumberEnd: 838
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          76
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 867
      functionLinenumberEnd: 872
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 862
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 856
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frag_get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 842
      functionLinenumberEnd: 844
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_plain
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 707
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:706,9'
          Dst:             parse
    - functionName:    parse
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          178
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - parser_create
        - untoh16
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:581,21'
          Dst:             untoh16
        - Src:             'encoding/payloads/encrypted_payload.c:588,11'
          Dst:             parser_create
    - functionName:    untoh16
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:162,9'
          Dst:             ntohs
    - functionName:    get_length_plain
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - compute_overhead
        - get_header_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:337,27'
          Dst:             compute_overhead
        - Src:             'encoding/payloads/encrypted_payload.c:340,26'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_v1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          117
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - parse
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:736,9'
          Dst:             parse
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypt_v1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 570
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          172
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create
        - generate
        - generator_create
        - memcpy_noop
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:542,14'
          Dst:             generator_create
        - Src:             'encoding/payloads/encrypted_payload.c:543,10'
          Dst:             generate
        - Src:             'encoding/payloads/encrypted_payload.c:550,20'
          Dst:             chunk_create
        - Src:             'encoding/payloads/encrypted_payload.c:551,2'
          Dst:             memcpy_noop
        - Src:             'encoding/payloads/encrypted_payload.c:554,2'
          Dst:             memset_noop
    - functionName:    generate
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          135
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 677
      functionLinenumberEnd: 697
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          85
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - append_header
        - decrypt_content
        - parse
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:687,10'
          Dst:             append_header
        - Src:             'encoding/payloads/encrypted_payload.c:688,11'
          Dst:             decrypt_content
        - Src:             'encoding/payloads/encrypted_payload.c:696,9'
          Dst:             parse
    - functionName:    append_header
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          78
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - get_length
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:426,19'
          Dst:             get_length
        - Src:             'encoding/payloads/encrypted_payload.c:426,13'
          Dst:             htons
        - Src:             'encoding/payloads/encrypted_payload.c:428,9'
          Dst:             chunk_create
        - Src:             'encoding/payloads/encrypted_payload.c:428,9'
          Dst:             chunk_length
        - Src:             'encoding/payloads/encrypted_payload.c:428,9'
          Dst:             chunk_create
        - Src:             'encoding/payloads/encrypted_payload.c:428,9'
          Dst:             chunk_create_cat
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compute_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:325,2'
          Dst:             compute_length
    - functionName:    compute_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - compute_overhead
        - get_header_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:315,14'
          Dst:             compute_overhead
        - Src:             'encoding/payloads/encrypted_payload.c:318,12'
          Dst:             get_header_length
    - functionName:    encrypt
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 505
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          98
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - append_header
        - encrypt_content
        - generate
        - generator_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:517,14'
          Dst:             generator_create
        - Src:             'encoding/payloads/encrypted_payload.c:518,10'
          Dst:             generate
        - Src:             'encoding/payloads/encrypted_payload.c:519,10'
          Dst:             append_header
        - Src:             'encoding/payloads/encrypted_payload.c:522,11'
          Dst:             encrypt_content
    - functionName:    get_transform
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 747
      functionLinenumberEnd: 748
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_transform
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 743
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generate_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - generate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:411,2'
          Dst:             generate
    - functionName:    remove_payload
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_payload
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          95
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - compute_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:360,2'
          Dst:             compute_length
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 757
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypted_fragment_payload_create_from_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1049
      functionLinenumberEnd: 1057
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - short
        - short
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - encrypted_fragment_payload_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:1052,48'
          Dst:             encrypted_fragment_payload_create
        - Src:             'encoding/payloads/encrypted_payload.c:1055,16'
          Dst:             chunk_create_clone
    - functionName:    encrypted_fragment_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1007
      functionLinenumberEnd: 1041
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          112
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - frag_get_header_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:1039,25'
          Dst:             frag_get_header_length
    - functionName:    encrypted_payload_create_from_plain
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 808
      functionLinenumberEnd: 818
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encrypted_payload_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:811,39'
          Dst:             encrypted_payload_create
    - functionName:    encrypted_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/encrypted_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 763
      functionLinenumberEnd: 800
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          126
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_header_length
        - linked_list_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/encrypted_payload.c:766,2'
          Dst:             linked_list_create
        - Src:             'encoding/payloads/encrypted_payload.c:792,25'
          Dst:             get_header_length
    - functionName:    set_message_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_message_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 435
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_exchange_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_exchange_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_authonly_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_authonly_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_commit_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_commit_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_encryption_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encryption_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_initiator_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_initiator_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_version_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_version_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_response_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_response_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 350
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_min_version
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_min_version
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_maj_version
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_maj_version
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_responder_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_responder_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_initiator_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_initiator_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 449
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          162
      EdgeCount:       38
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/ike_header.c:204,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_header_create_version
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ike_header_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/ike_header.c:508,23'
          Dst:             ike_header_create
    - functionName:    ike_header_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ike_header.c'
      linkageType:     InternalLinkage
      functionLinenumber: 455
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          146
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_notification_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 737
      functionLinenumberEnd: 741
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - compute_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/notify_payload.c:739,22'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/notify_payload.c:740,2'
          Dst:             compute_length
    - functionName:    compute_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 631
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/notify_payload.c:630,25'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_notification_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 731
      functionLinenumberEnd: 732
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_spi_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_ike_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 727
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - set_spi_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/notify_payload.c:725,22'
          Dst:             chunk_create
        - Src:             'encoding/payloads/notify_payload.c:725,3'
          Dst:             set_spi_data
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_spi_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 671
      functionLinenumberEnd: 676
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - chunk_free
        - compute_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/notify_payload.c:672,2'
          Dst:             chunk_free
        - Src:             'encoding/payloads/notify_payload.c:673,14'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/notify_payload.c:675,2'
          Dst:             compute_length
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ike_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          42
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 707
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - set_spi_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/notify_payload.c:698,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/notify_payload.c:702,23'
          Dst:             chunk_create
        - Src:             'encoding/payloads/notify_payload.c:702,4'
          Dst:             set_spi_data
    - functionName:    get_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 680
      functionLinenumberEnd: 693
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/notify_payload.c:681,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    set_notify_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 661
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_notify_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 653
      functionLinenumberEnd: 654
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_protocol_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 647
      functionLinenumberEnd: 649
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_protocol_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 642
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 745
      functionLinenumberEnd: 749
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 443
      functionLinenumberEnd: 583
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         94
      ICount:          412
      EdgeCount:       113
      CyclomaticComplexity: 21
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/notify_payload.c:446,2'
          Branch Sides:    []
        - Branch String:   'encoding/payloads/notify_payload.c:458,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 636
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 623
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 616
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 610
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 587
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    notify_payload_create_from_protocol_and_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 803
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - notify_payload_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/notify_payload.c:798,27'
          Dst:             notify_payload_create
    - functionName:    notify_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/notify_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 755
      functionLinenumberEnd: 789
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          119
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compute_length
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/notify_payload.c:788,2'
          Dst:             compute_length
    - functionName:    payload_get_field
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    payload_is_known
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          151
      EdgeCount:       44
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'encoding/payloads/payload.c:278,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         66
      ICount:          286
      EdgeCount:       131
      CyclomaticComplexity: 67
      functionsReached:
        - auth_payload_create
        - cert_payload_create
        - certreq_payload_create
        - configuration_attribute_create
        - cp_payload_create
        - delete_payload_create
        - eap_payload_create
        - encrypted_fragment_payload_create
        - encrypted_payload_create
        - fragment_payload_create
        - hash_payload_create
        - id_payload_create
        - ike_header_create
        - ke_payload_create
        - nonce_payload_create
        - notify_payload_create
        - proposal_substructure_create
        - sa_payload_create
        - traffic_selector_substructure_create
        - transform_attribute_create
        - transform_substructure_create
        - ts_payload_create
        - unknown_payload_create
        - vendor_id_payload_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'encoding/payloads/payload.c:190,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/payload.c:193,23'
          Dst:             ike_header_create
        - Src:             'encoding/payloads/payload.c:196,23'
          Dst:             sa_payload_create
        - Src:             'encoding/payloads/payload.c:199,23'
          Dst:             proposal_substructure_create
        - Src:             'encoding/payloads/payload.c:202,23'
          Dst:             transform_substructure_create
        - Src:             'encoding/payloads/payload.c:205,23'
          Dst:             transform_attribute_create
        - Src:             'encoding/payloads/payload.c:208,23'
          Dst:             nonce_payload_create
        - Src:             'encoding/payloads/payload.c:217,23'
          Dst:             id_payload_create
        - Src:             'encoding/payloads/payload.c:219,23'
          Dst:             auth_payload_create
        - Src:             'encoding/payloads/payload.c:222,23'
          Dst:             cert_payload_create
        - Src:             'encoding/payloads/payload.c:225,23'
          Dst:             certreq_payload_create
        - Src:             'encoding/payloads/payload.c:227,23'
          Dst:             traffic_selector_substructure_create
        - Src:             'encoding/payloads/payload.c:229,23'
          Dst:             ts_payload_create
        - Src:             'encoding/payloads/payload.c:231,23'
          Dst:             ts_payload_create
        - Src:             'encoding/payloads/payload.c:234,23'
          Dst:             ke_payload_create
        - Src:             'encoding/payloads/payload.c:237,23'
          Dst:             notify_payload_create
        - Src:             'encoding/payloads/payload.c:240,23'
          Dst:             delete_payload_create
        - Src:             'encoding/payloads/payload.c:243,23'
          Dst:             vendor_id_payload_create
        - Src:             'encoding/payloads/payload.c:248,23'
          Dst:             hash_payload_create
        - Src:             'encoding/payloads/payload.c:251,23'
          Dst:             cp_payload_create
        - Src:             'encoding/payloads/payload.c:254,23'
          Dst:             configuration_attribute_create
        - Src:             'encoding/payloads/payload.c:256,23'
          Dst:             eap_payload_create
        - Src:             'encoding/payloads/payload.c:259,23'
          Dst:             encrypted_payload_create
        - Src:             'encoding/payloads/payload.c:261,23'
          Dst:             fragment_payload_create
        - Src:             'encoding/payloads/payload.c:263,23'
          Dst:             encrypted_fragment_payload_create
        - Src:             'encoding/payloads/payload.c:265,23'
          Dst:             unknown_payload_create
    - functionName:    get_ikev1_auth_from_alg
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 805
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ikev1_from_ikev2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:805,9'
          Dst:             ikev1_from_ikev2
    - functionName:    ikev1_from_ikev2
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 704
      functionLinenumberEnd: 715
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ikev1_transid_from_alg
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 790
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - ikev1_from_ikev2
      functionUses:    2
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:781,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:784,11'
          Dst:             ikev1_from_ikev2
        - Src:             'encoding/payloads/proposal_substructure.c:786,11'
          Dst:             ikev1_from_ikev2
    - functionName:    get_ikev1_auth
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 812
      functionLinenumberEnd: 841
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          77
      EdgeCount:       30
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:813,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_ikev1_from_alg
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 754
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - ikev1_from_ikev2
      functionUses:    2
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:743,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:746,11'
          Dst:             ikev1_from_ikev2
        - Src:             'encoding/payloads/proposal_substructure.c:748,11'
          Dst:             ikev1_from_ikev2
        - Src:             'encoding/payloads/proposal_substructure.c:750,11'
          Dst:             ikev1_from_ikev2
    - functionName:    encode_transforms_v2
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1450
      functionLinenumberEnd: 1469
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          89
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - add_transform_substructure
        - transform_attribute_create_value
        - transform_substructure_create_type
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1458,15'
          Dst:             transform_substructure_create_type
        - Src:             'encoding/payloads/proposal_substructure.c:1463,5'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1466,3'
          Dst:             add_transform_substructure
    - functionName:    add_transform_substructure
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          77
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - compute_length
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:473,2'
          Dst:             compute_length
    - functionName:    compute_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_header_length
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:442,26'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 413
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encap_mode
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1197
      functionLinenumberEnd: 1217
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          62
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - get_attr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:1199,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1199,10'
          Dst:             get_attr
    - functionName:    get_attr
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1055
      functionLinenumberEnd: 1077
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          123
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_auth_method
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1163
      functionLinenumberEnd: 1193
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          84
      EdgeCount:       33
      CyclomaticComplexity: 18
      functionsReached:
        - get_attr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:1164,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1164,10'
          Dst:             get_attr
    - functionName:    get_lifebytes
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1147
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          48
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - get_life_duration
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:1148,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1152,18'
          Dst:             get_life_duration
    - functionName:    get_life_duration
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1085
      functionLinenumberEnd: 1118
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          191
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_lifetime
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1122
      functionLinenumberEnd: 1143
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - get_life_duration
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:1125,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1128,11'
          Dst:             get_life_duration
        - Src:             'encoding/payloads/proposal_substructure.c:1132,15'
          Dst:             get_life_duration
    - functionName:    create_substructure_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1046
      functionLinenumberEnd: 1047
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_alg_from_ikev1_transid
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 761
      functionLinenumberEnd: 773
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - ikev2_from_ikev1
      functionUses:    1
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:762,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:765,11'
          Dst:             ikev2_from_ikev1
        - Src:             'encoding/payloads/proposal_substructure.c:768,11'
          Dst:             ikev2_from_ikev1
    - functionName:    ikev2_from_ikev1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 698
      functionDepth:   0
      returnType:      short
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_alg_from_ikev1_auth
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 796
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ikev2_from_ikev1
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:797,9'
          Dst:             ikev2_from_ikev1
    - functionName:    get_alg_from_ikev1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 721
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - ikev2_from_ikev1
      functionUses:    3
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:722,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:725,11'
          Dst:             ikev2_from_ikev1
        - Src:             'encoding/payloads/proposal_substructure.c:728,11'
          Dst:             ikev2_from_ikev1
        - Src:             'encoding/payloads/proposal_substructure.c:731,11'
          Dst:             ikev2_from_ikev1
    - functionName:    add_to_proposal_v1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 932
      functionLinenumberEnd: 983
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          180
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - get_alg_from_ikev1_auth
        - get_alg_from_ikev1_transid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:944,3'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:951,11'
          Dst:             get_alg_from_ikev1_auth
        - Src:             'encoding/payloads/proposal_substructure.c:969,10'
          Dst:             get_alg_from_ikev1_transid
    - functionName:    add_to_proposal_v1_ike
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 880
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          162
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - get_alg_from_ikev1
      functionUses:    1
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:892,3'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:895,12'
          Dst:             get_alg_from_ikev1
        - Src:             'encoding/payloads/proposal_substructure.c:902,7'
          Dst:             get_alg_from_ikev1
        - Src:             'encoding/payloads/proposal_substructure.c:904,7'
          Dst:             get_alg_from_ikev1
    - functionName:    add_to_proposal_v2
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 555
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          97
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uread64
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uread32
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_proposals
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 987
      functionLinenumberEnd: 1042
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          197
      EdgeCount:       23
      CyclomaticComplexity: 3
      functionsReached:
        - add_to_proposal_v1
        - add_to_proposal_v1_ike
        - add_to_proposal_v2
        - proposal_create
        - proposal_create_v1
        - uread32
        - uread64
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:993,2'
          Branch Sides:    []
        - Branch String:   'encoding/payloads/proposal_substructure.c:1027,4'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:996,10'
          Dst:             uread32
        - Src:             'encoding/payloads/proposal_substructure.c:999,10'
          Dst:             uread64
        - Src:             'encoding/payloads/proposal_substructure.c:1012,16'
          Dst:             proposal_create
        - Src:             'encoding/payloads/proposal_substructure.c:1017,4'
          Dst:             add_to_proposal_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1022,15'
          Dst:             proposal_create_v1
        - Src:             'encoding/payloads/proposal_substructure.c:1030,6'
          Dst:             add_to_proposal_v1_ike
        - Src:             'encoding/payloads/proposal_substructure.c:1034,6'
          Dst:             add_to_proposal_v1
    - functionName:    untoh16
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:162,9'
          Dst:             ntohs
    - functionName:    get_cpi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 548
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          112
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - htons
        - untoh16
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:540,18'
          Dst:             untoh16
        - Src:             'encoding/payloads/proposal_substructure.c:540,12'
          Dst:             htons
    - functionName:    set_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - compute_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:510,14'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/proposal_substructure.c:512,2'
          Dst:             compute_length
    - functionName:    get_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 517
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_is_last_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_protocol_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_protocol_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 498
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_proposal_number
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_proposal_number
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1221
      functionLinenumberEnd: 1226
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1224,2'
          Dst:             chunk_free
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         41
      ICount:          236
      EdgeCount:       52
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:346,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 400
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ikev1_mode
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 847
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       18
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:848,2'
          Branch Sides:    []
        - Branch String:   'encoding/payloads/proposal_substructure.c:851,4'
          Branch Sides:    []
        - Branch String:   'encoding/payloads/proposal_substructure.c:861,4'
          Branch Sides:    []
      Callsites:       []
    - functionName:    proposal_substructure_create_for_ipcomp_v1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1623
      functionLinenumberEnd: 1666
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - int
        - size_t
        - short
        - int
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          163
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_transform_substructure
        - chunk_create
        - chunk_create_clone
        - compute_length
        - get_ikev1_mode
        - proposal_substructure_create
        - transform_attribute_create_value
        - transform_substructure_create_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1629,7'
          Dst:             proposal_substructure_create
        - Src:             'encoding/payloads/proposal_substructure.c:1632,14'
          Dst:             transform_substructure_create_type
        - Src:             'encoding/payloads/proposal_substructure.c:1637,30'
          Dst:             get_ikev1_mode
        - Src:             'encoding/payloads/proposal_substructure.c:1636,3'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1641,4'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1644,4'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1650,4'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1653,4'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1657,2'
          Dst:             add_transform_substructure
        - Src:             'encoding/payloads/proposal_substructure.c:1659,14'
          Dst:             chunk_create
        - Src:             'encoding/payloads/proposal_substructure.c:1659,14'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/proposal_substructure.c:1664,2'
          Dst:             compute_length
    - functionName:    proposal_substructure_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1232
      functionLinenumberEnd: 1269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          122
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compute_length
        - linked_list_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1235,2'
          Dst:             linked_list_create
        - Src:             'encoding/payloads/proposal_substructure.c:1267,2'
          Dst:             compute_length
    - functionName:    set_from_proposal_v1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1349
      functionLinenumberEnd: 1443
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          362
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached:
        - add_transform_substructure
        - get_ikev1_auth_from_alg
        - get_ikev1_mode
        - get_ikev1_transid_from_alg
        - transform_attribute_create_value
        - transform_substructure_create_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1357,13'
          Dst:             get_ikev1_transid_from_alg
        - Src:             'encoding/payloads/proposal_substructure.c:1360,16'
          Dst:             transform_substructure_create_type
        - Src:             'encoding/payloads/proposal_substructure.c:1365,6'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1375,13'
          Dst:             get_ikev1_transid_from_alg
        - Src:             'encoding/payloads/proposal_substructure.c:1376,9'
          Dst:             get_ikev1_auth_from_alg
        - Src:             'encoding/payloads/proposal_substructure.c:1381,17'
          Dst:             transform_substructure_create_type
        - Src:             'encoding/payloads/proposal_substructure.c:1387,6'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1403,4'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1410,30'
          Dst:             get_ikev1_mode
        - Src:             'encoding/payloads/proposal_substructure.c:1409,3'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1414,4'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1417,4'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1423,4'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1426,4'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1437,5'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1442,2'
          Dst:             add_transform_substructure
    - functionName:    set_from_proposal_v1_ike
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1341
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          225
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - add_transform_substructure
        - get_ikev1_auth
        - get_ikev1_from_alg
        - transform_attribute_create_value
        - transform_substructure_create_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1283,14'
          Dst:             transform_substructure_create_type
        - Src:             'encoding/payloads/proposal_substructure.c:1289,9'
          Dst:             get_ikev1_from_alg
        - Src:             'encoding/payloads/proposal_substructure.c:1293,5'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1298,6'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1310,9'
          Dst:             get_ikev1_from_alg
        - Src:             'encoding/payloads/proposal_substructure.c:1314,5'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1325,4'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1332,31'
          Dst:             get_ikev1_auth
        - Src:             'encoding/payloads/proposal_substructure.c:1331,3'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1334,3'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1337,3'
          Dst:             transform_attribute_create_value
        - Src:             'encoding/payloads/proposal_substructure.c:1340,2'
          Dst:             add_transform_substructure
    - functionName:    proposal_substructure_create_from_proposal_v1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1548
      functionLinenumberEnd: 1568
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - size_t
        - int
        - int
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - proposal_substructure_create
        - set_data
        - set_from_proposal_v1
        - set_from_proposal_v1_ike
      functionUses:    1
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:1553,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1552,7'
          Dst:             proposal_substructure_create
        - Src:             'encoding/payloads/proposal_substructure.c:1556,4'
          Dst:             set_from_proposal_v1_ike
        - Src:             'encoding/payloads/proposal_substructure.c:1560,4'
          Dst:             set_from_proposal_v1
        - Src:             'encoding/payloads/proposal_substructure.c:1566,2'
          Dst:             set_data
    - functionName:    set_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1495
      functionLinenumberEnd: 1524
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          200
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create
        - chunk_create_clone
        - compute_length
      functionUses:    2
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:1500,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1505,16'
          Dst:             chunk_create
        - Src:             'encoding/payloads/proposal_substructure.c:1505,16'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/proposal_substructure.c:1512,17'
          Dst:             chunk_create
        - Src:             'encoding/payloads/proposal_substructure.c:1512,17'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/proposal_substructure.c:1523,2'
          Dst:             compute_length
    - functionName:    proposal_substructure_create_from_proposals_v1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1614
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - size_t
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          139
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - proposal_substructure_create_from_proposal_v1
        - set_from_proposal_v1
        - set_from_proposal_v1_ike
      functionUses:    2
      BranchProfiles:
        - Branch String:   'encoding/payloads/proposal_substructure.c:1596,4'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1590,7'
          Dst:             proposal_substructure_create_from_proposal_v1
        - Src:             'encoding/payloads/proposal_substructure.c:1599,6'
          Dst:             set_from_proposal_v1_ike
        - Src:             'encoding/payloads/proposal_substructure.c:1604,6'
          Dst:             set_from_proposal_v1
    - functionName:    set_from_proposal_v2
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1476
      functionLinenumberEnd: 1489
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_transforms_v2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1477,2'
          Dst:             encode_transforms_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1478,2'
          Dst:             encode_transforms_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1479,2'
          Dst:             encode_transforms_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1480,2'
          Dst:             encode_transforms_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1481,2'
          Dst:             encode_transforms_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1482,2'
          Dst:             encode_transforms_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1483,2'
          Dst:             encode_transforms_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1484,2'
          Dst:             encode_transforms_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1485,2'
          Dst:             encode_transforms_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1486,2'
          Dst:             encode_transforms_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1487,2'
          Dst:             encode_transforms_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1488,2'
          Dst:             encode_transforms_v2
    - functionName:    proposal_substructure_create_from_proposal_v2
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/proposal_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1531
      functionLinenumberEnd: 1539
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - proposal_substructure_create
        - set_data
        - set_from_proposal_v2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/proposal_substructure.c:1535,7'
          Dst:             proposal_substructure_create
        - Src:             'encoding/payloads/proposal_substructure.c:1536,2'
          Dst:             set_from_proposal_v2
        - Src:             'encoding/payloads/proposal_substructure.c:1537,2'
          Dst:             set_data
    - functionName:    create_substructure_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encap_mode
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 472
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_auth_method
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 455
      functionLinenumberEnd: 467
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_lifebytes
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          96
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_lifetime
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 427
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          96
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ipcomp_proposals
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          234
      EdgeCount:       50
      CyclomaticComplexity: 13
      functionsReached:
        - linked_list_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/sa_payload.c:380,3'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/sa_payload.c:393,9'
          Dst:             linked_list_create
    - functionName:    get_proposals
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          167
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/sa_payload.c:309,15'
          Dst:             linked_list_create
        - Src:             'encoding/payloads/sa_payload.c:334,9'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 493
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          110
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sa_payload_create_from_proposal_v1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - size_t
        - int
        - int
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - sa_payload_create_from_proposals_v1
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/sa_payload.c:625,14'
          Dst:             linked_list_create
        - Src:             'encoding/payloads/sa_payload.c:627,32'
          Dst:             sa_payload_create_from_proposals_v1
    - functionName:    sa_payload_create_from_proposals_v1
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 577
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - size_t
        - int
        - int
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          175
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - compute_length
        - proposal_substructure_create_for_ipcomp_v1
        - proposal_substructure_create_from_proposals_v1
        - sa_payload_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/sa_payload.c:581,32'
          Dst:             sa_payload_create
        - Src:             'encoding/payloads/sa_payload.c:590,14'
          Dst:             proposal_substructure_create_from_proposals_v1
        - Src:             'encoding/payloads/sa_payload.c:598,15'
          Dst:             proposal_substructure_create_for_ipcomp_v1
        - Src:             'encoding/payloads/sa_payload.c:603,15'
          Dst:             proposal_substructure_create_from_proposals_v1
        - Src:             'encoding/payloads/sa_payload.c:609,2'
          Dst:             compute_length
    - functionName:    sa_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          99
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compute_length
        - linked_list_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/sa_payload.c:502,2'
          Dst:             linked_list_create
        - Src:             'encoding/payloads/sa_payload.c:531,2'
          Dst:             compute_length
    - functionName:    compute_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_header_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/sa_payload.c:245,25'
          Dst:             get_header_length
    - functionName:    sa_payload_create_from_proposal_v2
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_proposal_v2
        - sa_payload_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/sa_payload.c:563,32'
          Dst:             sa_payload_create
        - Src:             'encoding/payloads/sa_payload.c:564,2'
          Dst:             add_proposal_v2
    - functionName:    add_proposal_v2
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          126
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - compute_length
        - proposal_substructure_create_from_proposal_v2
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/sa_payload.c:269,14'
          Dst:             proposal_substructure_create_from_proposal_v2
        - Src:             'encoding/payloads/sa_payload.c:287,2'
          Dst:             compute_length
    - functionName:    sa_payload_create_from_proposals_v2
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/sa_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add_proposal_v2
        - sa_payload_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/sa_payload.c:545,32'
          Dst:             sa_payload_create
        - Src:             'encoding/payloads/sa_payload.c:549,3'
          Dst:             add_proposal_v2
    - functionName:    get_sec_label
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sec_label_from_encoding
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/traffic_selector_substructure.c:240,9'
          Dst:             sec_label_from_encoding
    - functionName:    get_traffic_selector
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_ts_data
        - traffic_selector_create_from_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/traffic_selector_substructure.c:224,7'
          Dst:             parse_ts_data
        - Src:             'encoding/payloads/traffic_selector_substructure.c:228,9'
          Dst:             traffic_selector_create_from_bytes
    - functionName:    parse_ts_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          144
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - bio_reader_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'encoding/payloads/traffic_selector_substructure.c:117,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/traffic_selector_substructure.c:129,11'
          Dst:             bio_reader_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          100
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - parse_ts_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/traffic_selector_substructure.c:146,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/traffic_selector_substructure.c:154,9'
          Dst:             parse_ts_data
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    traffic_selector_substructure_create_from_sec_label
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - traffic_selector_substructure_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/traffic_selector_substructure.c:312,51'
          Dst:             traffic_selector_substructure_create
        - Src:             'encoding/payloads/traffic_selector_substructure.c:314,18'
          Dst:             chunk_create_clone
    - functionName:    traffic_selector_substructure_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          71
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/traffic_selector_substructure.c:257,2'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    traffic_selector_substructure_create_from_traffic_selector
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/traffic_selector_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          163
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bio_writer_create
        - traffic_selector_substructure_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/traffic_selector_substructure.c:289,51'
          Dst:             traffic_selector_substructure_create
        - Src:             'encoding/payloads/traffic_selector_substructure.c:293,11'
          Dst:             bio_writer_create
    - functionName:    get_attribute_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    untoh64
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:192,9'
          Dst:             __bswap_64
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_value
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - memcpy_noop
        - untoh64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/transform_attribute.c:201,2'
          Dst:             memcpy_noop
        - Src:             'encoding/payloads/transform_attribute.c:203,9'
          Dst:             untoh64
    - functionName:    get_value_chunk
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/transform_attribute.c:183,10'
          Dst:             chunk_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htoun64
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:146,9'
          Dst:             __bswap_64
    - functionName:    transform_attribute_create_value
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          145
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - chunk_create_clone
        - htonl
        - htoun64
        - transform_attribute_create
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/transform_attribute.c:257,41'
          Dst:             transform_attribute_create
        - Src:             'encoding/payloads/transform_attribute.c:270,11'
          Dst:             htonl
        - Src:             'encoding/payloads/transform_attribute.c:271,27'
          Dst:             chunk_create
        - Src:             'encoding/payloads/transform_attribute.c:271,27'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/transform_attribute.c:276,3'
          Dst:             htoun64
        - Src:             'encoding/payloads/transform_attribute.c:277,27'
          Dst:             chunk_create
        - Src:             'encoding/payloads/transform_attribute.c:277,27'
          Dst:             chunk_create_clone
    - functionName:    transform_attribute_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          80
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_attribute_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_transform_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_transform_type_or_number
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_is_last_transform
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compute_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_header_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/transform_substructure.c:205,27'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_transform_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compute_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/transform_substructure.c:224,2'
          Dst:             compute_length
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          100
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    transform_substructure_create_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - transform_substructure_create
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/transform_substructure.c:310,44'
          Dst:             transform_substructure_create
    - functionName:    transform_substructure_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/transform_substructure.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          94
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/transform_substructure.c:275,2'
          Dst:             get_header_length
        - Src:             'encoding/payloads/transform_substructure.c:275,2'
          Dst:             linked_list_create
    - functionName:    get_sec_labels
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_list
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/ts_payload.c:267,9'
          Dst:             get_list
    - functionName:    get_list
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          115
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/ts_payload.c:230,9'
          Dst:             linked_list_create
    - functionName:    get_traffic_selectors
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_list
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/ts_payload.c:261,9'
          Dst:             get_list
    - functionName:    set_initiator
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_initiator
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compute_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_header_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/ts_payload.c:192,25'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ts_payload_create_from_traffic_selectors
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - compute_length
        - traffic_selector_substructure_create_from_sec_label
        - traffic_selector_substructure_create_from_traffic_selector
        - ts_payload_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/ts_payload.c:322,32'
          Dst:             ts_payload_create
        - Src:             'encoding/payloads/ts_payload.c:327,11'
          Dst:             traffic_selector_substructure_create_from_traffic_selector
        - Src:             'encoding/payloads/ts_payload.c:334,11'
          Dst:             traffic_selector_substructure_create_from_sec_label
        - Src:             'encoding/payloads/ts_payload.c:337,2'
          Dst:             compute_length
    - functionName:    ts_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ts_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          94
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
        - linked_list_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/ts_payload.c:284,2'
          Dst:             get_header_length
        - Src:             'encoding/payloads/ts_payload.c:284,2'
          Dst:             linked_list_create
    - functionName:    is_critical
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_payload_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unknown_payload_create_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - bool
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
        - unknown_payload_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/unknown_payload.c:213,37'
          Dst:             unknown_payload_create
        - Src:             'encoding/payloads/unknown_payload.c:216,25'
          Dst:             get_header_length
    - functionName:    unknown_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          81
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/unknown_payload.c:179,2'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/unknown_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/vendor_id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/vendor_id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/vendor_id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/vendor_id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/vendor_id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/vendor_id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/vendor_id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/vendor_id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vendor_id_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/vendor_id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vendor_id_payload_create_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/vendor_id_payload.c:194,9'
          Dst:             vendor_id_payload_create_data
    - functionName:    vendor_id_payload_create_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/vendor_id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          88
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/vendor_id_payload.c:166,2'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/vendor_id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_hash
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/hash_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_hash
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/hash_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - get_header_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/hash_payload.c:133,15'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/hash_payload.c:134,25'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/hash_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/hash_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/hash_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/hash_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/hash_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/hash_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/hash_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/hash_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/hash_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          78
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/hash_payload.c:157,2'
          Dst:             get_header_length
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_last
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_number
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fragment_payload_create_from_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - char
        - bool
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          88
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - fragment_payload_create
        - get_header_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/fragment_payload.c:219,38'
          Dst:             fragment_payload_create
        - Src:             'encoding/payloads/fragment_payload.c:223,15'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/fragment_payload.c:224,25'
          Dst:             get_header_length
    - functionName:    fragment_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          84
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/fragment_payload.c:207,25'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/fragment_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kernel_ipsec_register
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kernel_net_register
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kernel_acquire_data_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kernel_acquire_data_clone
      functionSourceFile: '/src/strongswan/src/libcharon/kernel/kernel_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          114
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    socket_register
      functionSourceFile: '/src/strongswan/src/libcharon/network/socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/delete_ike_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/delete_ike_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/delete_ike_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          223
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    delete_ike_sa_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/delete_ike_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eap_method_register
      functionSourceFile: '/src/strongswan/src/libcharon/sa/eap/eap_method.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xauth_method_register
      functionSourceFile: '/src/strongswan/src/libcharon/sa/xauth/xauth_method.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2125
      functionLinenumberEnd: 2208
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         35
      ICount:          402
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - array_destroy_offset
        - chunk_clear
        - create_policy_enumerator
        - del_policies_internal
        - mark_in_sa
        - prepare_sa_cfg
        - proto_ike2ip
        - require_policies
        - set_state
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:2132,2'
          Dst:             set_state
        - Src:             'sa/child_sa.c:2134,6'
          Dst:             require_policies
        - Src:             'sa/child_sa.c:2140,3'
          Dst:             prepare_sa_cfg
        - Src:             'sa/child_sa.c:2146,16'
          Dst:             create_policy_enumerator
        - Src:             'sa/child_sa.c:2149,4'
          Dst:             del_policies_internal
        - Src:             'sa/child_sa.c:2164,13'
          Dst:             proto_ike2ip
        - Src:             'sa/child_sa.c:2165,12'
          Dst:             mark_in_sa
        - Src:             'sa/child_sa.c:2179,13'
          Dst:             proto_ike2ip
        - Src:             'sa/child_sa.c:2198,2'
          Dst:             array_destroy_offset
        - Src:             'sa/child_sa.c:2199,2'
          Dst:             array_destroy_offset
        - Src:             'sa/child_sa.c:2205,2'
          Dst:             chunk_clear
        - Src:             'sa/child_sa.c:2206,2'
          Dst:             chunk_clear
    - functionName:    set_state
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    require_policies
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1172
      functionLinenumberEnd: 1173
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    prepare_sa_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1197
      functionLinenumberEnd: 1234
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          157
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - create_policy_enumerator
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1227,15'
          Dst:             create_policy_enumerator
    - functionName:    create_policy_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 631
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_policy_enumerator_internal
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:632,9'
          Dst:             create_policy_enumerator_internal
    - functionName:    del_policies_internal
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1442
      functionLinenumberEnd: 1450
      functionDepth:   0
      returnType:      void
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - del_policies_inbound
        - del_policies_outbound
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1445,3'
          Dst:             del_policies_outbound
        - Src:             'sa/child_sa.c:1448,2'
          Dst:             del_policies_inbound
    - functionName:    proto_ike2ip
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          29
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    10
      BranchProfiles:
        - Branch String:   'sa/child_sa.c:310,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    mark_in_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    del_policies_outbound
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1396
      functionLinenumberEnd: 1432
      functionDepth:   0
      returnType:      void
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          195
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - label_for
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1404,12'
          Dst:             label_for
    - functionName:    del_policies_inbound
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1360
      functionLinenumberEnd: 1386
      functionDepth:   0
      returnType:      void
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          135
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - label_for
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1367,12'
          Dst:             label_for
    - functionName:    label_for
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       12
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:
        - Branch String:   'sa/child_sa.c:359,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    create_policy_enumerator_internal
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 611
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_enumerator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:614,2'
          Dst:             array_create_enumerator
        - Src:             'sa/child_sa.c:614,2'
          Dst:             array_create_enumerator
    - functionName:    policy_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    policy_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          269
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - array_create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:570,18'
          Dst:             array_create_enumerator
    - functionName:    _cb_reinstall_vip
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1717
      functionLinenumberEnd: 1728
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          97
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update_sas
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1736
      functionLinenumberEnd: 1870
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          623
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - array_create_enumerator
        - linked_list_create_from_enumerator
        - mark_in_sa
        - proto_ike2ip
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1742,10'
          Dst:             array_create_enumerator
        - Src:             'sa/child_sa.c:1741,10'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/child_sa.c:1744,10'
          Dst:             array_create_enumerator
        - Src:             'sa/child_sa.c:1743,13'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/child_sa.c:1753,13'
          Dst:             proto_ike2ip
        - Src:             'sa/child_sa.c:1754,12'
          Dst:             mark_in_sa
        - Src:             'sa/child_sa.c:1786,13'
          Dst:             proto_ike2ip
        - Src:             'sa/child_sa.c:1815,15'
          Dst:             proto_ike2ip
        - Src:             'sa/child_sa.c:1816,14'
          Dst:             mark_in_sa
        - Src:             'sa/child_sa.c:1835,10'
          Dst:             array_create_enumerator
        - Src:             'sa/child_sa.c:1834,21'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/child_sa.c:1837,10'
          Dst:             array_create_enumerator
        - Src:             'sa/child_sa.c:1836,24'
          Dst:             linked_list_create_from_enumerator
    - functionName:    update_ts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1879
      functionLinenumberEnd: 1895
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_create_enumerator
        - array_insert
        - array_sort
        - traffic_selector_cmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1883,15'
          Dst:             array_create_enumerator
        - Src:             'sa/child_sa.c:1891,3'
          Dst:             array_insert
        - Src:             'sa/child_sa.c:1894,2'
          Dst:             array_sort
        - Src:             'sa/child_sa.c:1894,2'
          Dst:             traffic_selector_cmp
    - functionName:    require_policy_update
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1180
      functionLinenumberEnd: 1190
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - require_policies
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1183,7'
          Dst:             require_policies
    - functionName:    update
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1900
      functionLinenumberEnd: 2121
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         149
      ICount:          1022
      EdgeCount:       201
      CyclomaticComplexity: 54
      functionsReached:
        - alloc_reqid
        - array_count
        - array_create
        - array_destroy_offset
        - create_policy_enumerator
        - create_policy_enumerator_internal
        - del_policies_internal
        - del_policies_outbound
        - install_policies_internal
        - install_policies_outbound
        - prepare_sa_cfg
        - require_policy_update
        - set_state
        - update_sas
        - update_ts
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1913,2'
          Dst:             set_state
        - Src:             'sa/child_sa.c:1918,6'
          Dst:             require_policy_update
        - Src:             'sa/child_sa.c:1918,37'
          Dst:             array_count
        - Src:             'sa/child_sa.c:1919,3'
          Dst:             array_count
        - Src:             'sa/child_sa.c:1928,3'
          Dst:             prepare_sa_cfg
        - Src:             'sa/child_sa.c:1934,16'
          Dst:             create_policy_enumerator
        - Src:             'sa/child_sa.c:1940,17'
          Dst:             array_create
        - Src:             'sa/child_sa.c:1945,20'
          Dst:             array_create
        - Src:             'sa/child_sa.c:1950,5'
          Dst:             install_policies_outbound
        - Src:             'sa/child_sa.c:1955,4'
          Dst:             del_policies_internal
        - Src:             'sa/child_sa.c:1963,4'
          Dst:             update_ts
        - Src:             'sa/child_sa.c:1967,4'
          Dst:             update_ts
        - Src:             'sa/child_sa.c:1973,8'
          Dst:             alloc_reqid
        - Src:             'sa/child_sa.c:1981,17'
          Dst:             update_sas
        - Src:             'sa/child_sa.c:1999,17'
          Dst:             create_policy_enumerator_internal
        - Src:             'sa/child_sa.c:2004,5'
          Dst:             install_policies_internal
        - Src:             'sa/child_sa.c:2015,16'
          Dst:             create_policy_enumerator
        - Src:             'sa/child_sa.c:2021,5'
          Dst:             install_policies_internal
        - Src:             'sa/child_sa.c:2028,5'
          Dst:             del_policies_outbound
        - Src:             'sa/child_sa.c:2043,4'
          Dst:             array_destroy_offset
        - Src:             'sa/child_sa.c:2045,4'
          Dst:             array_destroy_offset
        - Src:             'sa/child_sa.c:2047,4'
          Dst:             set_state
        - Src:             'sa/child_sa.c:2068,16'
          Dst:             array_create
        - Src:             'sa/child_sa.c:2069,4'
          Dst:             update_ts
        - Src:             'sa/child_sa.c:2073,19'
          Dst:             array_create
        - Src:             'sa/child_sa.c:2074,4'
          Dst:             update_ts
        - Src:             'sa/child_sa.c:2076,8'
          Dst:             update_sas
        - Src:             'sa/child_sa.c:2080,4'
          Dst:             array_destroy_offset
        - Src:             'sa/child_sa.c:2082,4'
          Dst:             array_destroy_offset
        - Src:             'sa/child_sa.c:2084,4'
          Dst:             set_state
        - Src:             'sa/child_sa.c:2091,3'
          Dst:             array_destroy_offset
        - Src:             'sa/child_sa.c:2097,3'
          Dst:             array_destroy_offset
        - Src:             'sa/child_sa.c:2118,2'
          Dst:             set_state
    - functionName:    install_policies_outbound
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1281
      functionLinenumberEnd: 1328
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          204
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - label_for
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1289,12'
          Dst:             label_for
    - functionName:    alloc_reqid
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 950
      functionLinenumberEnd: 959
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - alloc_reqid_lists
        - array_create_enumerator
        - linked_list_create_from_enumerator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:954,50'
          Dst:             array_create_enumerator
        - Src:             'sa/child_sa.c:954,15'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/child_sa.c:955,53'
          Dst:             array_create_enumerator
        - Src:             'sa/child_sa.c:955,18'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/child_sa.c:956,11'
          Dst:             alloc_reqid_lists
    - functionName:    install_policies_internal
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1339
      functionLinenumberEnd: 1349
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - install_policies_inbound
        - install_policies_outbound
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1342,12'
          Dst:             install_policies_inbound
        - Src:             'sa/child_sa.c:1346,13'
          Dst:             install_policies_outbound
    - functionName:    install_policies_inbound
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1244
      functionLinenumberEnd: 1270
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          144
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - label_for
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1251,12'
          Dst:             label_for
    - functionName:    alloc_reqid_lists
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 924
      functionLinenumberEnd: 942
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          94
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - label_for
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:931,25'
          Dst:             label_for
    - functionName:    get_rekey_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1711
      functionLinenumberEnd: 1712
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_rekey_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1705
      functionLinenumberEnd: 1707
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    install_policies
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1490
      functionLinenumberEnd: 1548
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          208
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - alloc_reqid
        - create_policy_enumerator
        - install_policies_internal
        - prepare_sa_cfg
        - require_policies
        - set_state
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1498,12'
          Dst:             alloc_reqid
        - Src:             'sa/child_sa.c:1512,6'
          Dst:             require_policies
        - Src:             'sa/child_sa.c:1518,3'
          Dst:             prepare_sa_cfg
        - Src:             'sa/child_sa.c:1528,16'
          Dst:             create_policy_enumerator
        - Src:             'sa/child_sa.c:1531,14'
          Dst:             install_policies_internal
        - Src:             'sa/child_sa.c:1545,3'
          Dst:             set_state
    - functionName:    set_policies
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1455
      functionLinenumberEnd: 1486
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          155
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_count
        - array_create
        - array_destroy_offset
        - array_insert
        - array_sort
        - traffic_selector_cmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1459,6'
          Dst:             array_count
        - Src:             'sa/child_sa.c:1461,3'
          Dst:             array_destroy_offset
        - Src:             'sa/child_sa.c:1463,17'
          Dst:             array_create
        - Src:             'sa/child_sa.c:1468,3'
          Dst:             array_insert
        - Src:             'sa/child_sa.c:1471,2'
          Dst:             array_sort
        - Src:             'sa/child_sa.c:1471,2'
          Dst:             traffic_selector_cmp
        - Src:             'sa/child_sa.c:1473,6'
          Dst:             array_count
        - Src:             'sa/child_sa.c:1475,3'
          Dst:             array_destroy_offset
        - Src:             'sa/child_sa.c:1477,20'
          Dst:             array_create
        - Src:             'sa/child_sa.c:1482,3'
          Dst:             array_insert
        - Src:             'sa/child_sa.c:1485,2'
          Dst:             array_sort
        - Src:             'sa/child_sa.c:1485,2'
          Dst:             traffic_selector_cmp
    - functionName:    remove_outbound
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1653
      functionLinenumberEnd: 1701
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          177
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_clear
        - create_policy_enumerator
        - del_policies_outbound
        - prepare_sa_cfg
        - proto_ike2ip
        - require_policies
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1661,4'
          Dst:             chunk_clear
        - Src:             'sa/child_sa.c:1662,4'
          Dst:             chunk_clear
        - Src:             'sa/child_sa.c:1668,6'
          Dst:             require_policies
        - Src:             'sa/child_sa.c:1674,3'
          Dst:             prepare_sa_cfg
        - Src:             'sa/child_sa.c:1677,16'
          Dst:             create_policy_enumerator
        - Src:             'sa/child_sa.c:1680,4'
          Dst:             del_policies_outbound
        - Src:             'sa/child_sa.c:1692,12'
          Dst:             proto_ike2ip
    - functionName:    install_outbound
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1606
      functionLinenumberEnd: 1649
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          177
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_clear
        - create_policy_enumerator
        - install_internal
        - install_policies_outbound
        - prepare_sa_cfg
        - require_policies
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1613,12'
          Dst:             install_internal
        - Src:             'sa/child_sa.c:1616,3'
          Dst:             chunk_clear
        - Src:             'sa/child_sa.c:1617,3'
          Dst:             chunk_clear
        - Src:             'sa/child_sa.c:1624,6'
          Dst:             require_policies
        - Src:             'sa/child_sa.c:1630,3'
          Dst:             prepare_sa_cfg
        - Src:             'sa/child_sa.c:1633,16'
          Dst:             create_policy_enumerator
        - Src:             'sa/child_sa.c:1636,14'
          Dst:             install_policies_outbound
    - functionName:    install_internal
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 968
      functionLinenumberEnd: 1158
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
        - short
        - bool
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         83
      ICount:          924
      EdgeCount:       112
      CyclomaticComplexity: 31
      functionsReached:
        - alloc_reqid_lists
        - array_create_enumerator
        - label_for
        - linked_list_create_from_enumerator
        - mark_in_sa
        - proto_ike2ip
        - random
        - time_monotonic
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:983,10'
          Dst:             array_create_enumerator
        - Src:             'sa/child_sa.c:982,10'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/child_sa.c:985,10'
          Dst:             array_create_enumerator
        - Src:             'sa/child_sa.c:984,13'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/child_sa.c:1030,33'
          Dst:             random
        - Src:             'sa/child_sa.c:1057,12'
          Dst:             alloc_reqid_lists
        - Src:             'sa/child_sa.c:1069,8'
          Dst:             time_monotonic
        - Src:             'sa/child_sa.c:1095,12'
          Dst:             proto_ike2ip
        - Src:             'sa/child_sa.c:1096,21'
          Dst:             mark_in_sa
        - Src:             'sa/child_sa.c:1125,12'
          Dst:             label_for
    - functionName:    install_outbound_immediately
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1561
      functionLinenumberEnd: 1572
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          74
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    register_outbound
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1601
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
        - short
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          154
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create_clone
        - install_internal
        - install_outbound_immediately
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1580,6'
          Dst:             install_outbound_immediately
        - Src:             'sa/child_sa.c:1582,12'
          Dst:             install_internal
        - Src:             'sa/child_sa.c:1594,18'
          Dst:             chunk_create_clone
        - Src:             'sa/child_sa.c:1595,19'
          Dst:             chunk_create_clone
    - functionName:    install
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1163
      functionLinenumberEnd: 1165
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
        - short
        - bool
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - install_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:1164,9'
          Dst:             install_internal
    - functionName:    alloc_cpi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 915
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    alloc_spi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 894
      functionLinenumberEnd: 904
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - proto_ike2ip
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:896,8'
          Dst:             proto_ike2ip
    - functionName:    create_ts_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 532
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:535,10'
          Dst:             array_create_enumerator
        - Src:             'sa/child_sa.c:537,9'
          Dst:             array_create_enumerator
    - functionName:    set_acquire_seq
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 854
      functionLinenumberEnd: 856
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_acquire_seq
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 848
      functionLinenumberEnd: 849
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_per_cpu
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 878
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    use_per_cpu
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 866
      functionLinenumberEnd: 867
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_cpu
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 860
      functionLinenumberEnd: 861
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_label
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 842
      functionLinenumberEnd: 843
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_if_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 836
      functionLinenumberEnd: 837
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_mark
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 830
      functionLinenumberEnd: 831
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update_usetime
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 794
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          298
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - create_policy_enumerator
        - label_for
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:727,15'
          Dst:             create_policy_enumerator
        - Src:             'sa/child_sa.c:740,14'
          Dst:             label_for
        - Src:             'sa/child_sa.c:768,14'
          Dst:             label_for
    - functionName:    update_usebytes
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 642
      functionLinenumberEnd: 715
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          239
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - mark_in_sa
        - proto_ike2ip
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:655,14'
          Dst:             proto_ike2ip
        - Src:             'sa/child_sa.c:656,13'
          Dst:             mark_in_sa
        - Src:             'sa/child_sa.c:689,14'
          Dst:             proto_ike2ip
    - functionName:    get_usestats
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 799
      functionLinenumberEnd: 826
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          186
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - update_usebytes
        - update_usetime
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:807,12'
          Dst:             update_usebytes
        - Src:             'sa/child_sa.c:812,3'
          Dst:             update_usetime
    - functionName:    get_installtime
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 888
      functionLinenumberEnd: 889
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_lifetime
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 882
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_encap
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 526
      functionLinenumberEnd: 528
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_dpd_action
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_dpd_action
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 514
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_close_action
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 498
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_close_action
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_iptfs_dont_fragment
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 472
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_ipcomp
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ipcomp
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_mode
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_mode
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 460
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_protocol
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_protocol
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 449
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_cpi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_spi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 437
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_outbound_state
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_state
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_config
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_unique_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_reqid_ref
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          78
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_reqid
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_ts_list_match
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2416
      functionLinenumberEnd: 2431
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - is_ts_match
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:2424,8'
          Dst:             is_ts_match
    - functionName:    is_ts_match
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2396
      functionLinenumberEnd: 2409
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_count
        - array_get
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:2400,18'
          Dst:             array_count
        - Src:             'sa/child_sa.c:2402,3'
          Dst:             array_get
    - functionName:    child_sa_ts_lists_match
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2452
      functionLinenumberEnd: 2457
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - is_ts_list_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:2456,6'
          Dst:             is_ts_list_match
        - Src:             'sa/child_sa.c:2457,6'
          Dst:             is_ts_list_match
    - functionName:    child_sa_ts_match
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2439
      functionLinenumberEnd: 2444
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - is_ts_match
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:2443,6'
          Dst:             is_ts_match
        - Src:             'sa/child_sa.c:2444,6'
          Dst:             is_ts_match
    - functionName:    get_proxy_addr
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2214
      functionLinenumberEnd: 2242
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          130
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - linked_list_create_with_items
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:2221,9'
          Dst:             linked_list_create_with_items
    - functionName:    ref_get_nonzero
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/atomics.h'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    child_sa_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/child_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2250
      functionLinenumberEnd: 2388
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          651
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - allocate_unique_if_ids
        - allocate_unique_marks
        - array_create
        - get_proxy_addr
        - ref_get_nonzero
        - time_monotonic
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/child_sa.c:2254,2'
          Dst:             array_create
        - Src:             'sa/child_sa.c:2254,2'
          Dst:             array_create
        - Src:             'sa/child_sa.c:2254,2'
          Dst:             ref_get_nonzero
        - Src:             'sa/child_sa.c:2254,2'
          Dst:             time_monotonic
        - Src:             'sa/child_sa.c:2349,2'
          Dst:             allocate_unique_if_ids
        - Src:             'sa/child_sa.c:2350,2'
          Dst:             allocate_unique_marks
        - Src:             'sa/child_sa.c:2380,19'
          Dst:             get_proxy_addr
        - Src:             'sa/child_sa.c:2381,22'
          Dst:             get_proxy_addr
    - functionName:    inherit_post
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2968
      functionLinenumberEnd: 3063
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          386
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - add_child_sa
        - array_create_enumerator
        - array_insert
        - array_insert_create
        - array_remove
        - delete_ike_sa_job_create
        - rekey_ike_sa_job_create
        - send_keepalive
        - set_my_host
        - set_my_id
        - set_other_host
        - set_other_id
        - time_monotonic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2977,2'
          Dst:             set_my_host
        - Src:             'sa/ike_sa.c:2978,2'
          Dst:             set_other_host
        - Src:             'sa/ike_sa.c:2979,2'
          Dst:             set_my_id
        - Src:             'sa/ike_sa.c:2980,2'
          Dst:             set_other_id
        - Src:             'sa/ike_sa.c:2985,9'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:2987,3'
          Dst:             array_insert_create
        - Src:             'sa/ike_sa.c:2989,9'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:2991,3'
          Dst:             array_insert_create
        - Src:             'sa/ike_sa.c:2995,9'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:2997,3'
          Dst:             array_insert_create
        - Src:             'sa/ike_sa.c:3001,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:3004,3'
          Dst:             array_insert
        - Src:             'sa/ike_sa.c:3007,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:3010,3'
          Dst:             array_insert
        - Src:             'sa/ike_sa.c:3015,9'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:3017,3'
          Dst:             array_insert
        - Src:             'sa/ike_sa.c:3022,3'
          Dst:             send_keepalive
        - Src:             'sa/ike_sa.c:3038,9'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:3041,3'
          Dst:             add_child_sa
        - Src:             'sa/ike_sa.c:3050,32'
          Dst:             time_monotonic
        - Src:             'sa/ike_sa.c:3059,13'
          Dst:             rekey_ike_sa_job_create
        - Src:             'sa/ike_sa.c:3061,13'
          Dst:             delete_ike_sa_job_create
    - functionName:    set_my_host
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_other_host
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - determine_fragment_size
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:456,2'
          Dst:             determine_fragment_size
    - functionName:    set_my_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1723
      functionLinenumberEnd: 1726
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_other_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1770
      functionLinenumberEnd: 1773
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_keepalive
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 692
      functionLinenumberEnd: 749
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          296
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - get_use_time
        - packet_create
        - send_keepalive_job_create
        - set_dscp
        - time_monotonic
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:708,13'
          Dst:             get_use_time
        - Src:             'sa/ike_sa.c:709,8'
          Dst:             time_monotonic
        - Src:             'sa/ike_sa.c:730,12'
          Dst:             packet_create
        - Src:             'sa/ike_sa.c:733,3'
          Dst:             set_dscp
        - Src:             'sa/ike_sa.c:745,25'
          Dst:             send_keepalive_job_create
    - functionName:    add_child_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1799
      functionLinenumberEnd: 1804
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_insert_create
        - array_sort
        - child_sa_sort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1800,2'
          Dst:             array_insert_create
        - Src:             'sa/ike_sa.c:1801,2'
          Dst:             array_sort
        - Src:             'sa/ike_sa.c:1801,2'
          Dst:             child_sa_sort
    - functionName:    child_sa_sort
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1785
      functionLinenumberEnd: 1795
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          105
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_use_time
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          119
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_create_enumerator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:386,16'
          Dst:             array_create_enumerator
    - functionName:    set_dscp
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 683
      functionLinenumberEnd: 688
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    determine_fragment_size
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          104
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inherit_pre
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2949
      functionLinenumberEnd: 2964
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          83
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_my_host
        - set_other_host
        - set_peer_cfg
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2953,2'
          Dst:             set_peer_cfg
        - Src:             'sa/ike_sa.c:2954,2'
          Dst:             set_my_host
        - Src:             'sa/ike_sa.c:2955,2'
          Dst:             set_other_host
    - functionName:    set_peer_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          120
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - allocate_unique_if_ids
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:484,2'
          Dst:             allocate_unique_if_ids
    - functionName:    migrate_child_tasks
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2922
      functionLinenumberEnd: 2938
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          101
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - queue_task
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2934,4'
          Dst:             queue_task
    - functionName:    queue_task
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2907
      functionLinenumberEnd: 2909
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    adopt_child_tasks
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2942
      functionLinenumberEnd: 2945
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - migrate_child_tasks
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2943,2'
          Dst:             migrate_child_tasks
        - Src:             'sa/ike_sa.c:2944,2'
          Dst:             migrate_child_tasks
    - functionName:    queue_task_delayed
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2913
      functionLinenumberEnd: 2915
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flush_queue
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2901
      functionLinenumberEnd: 2903
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_task
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2895
      functionLinenumberEnd: 2896
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_task_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2889
      functionLinenumberEnd: 2890
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_kmaddress
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1399
      functionLinenumberEnd: 1404
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_filter_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2862
      functionLinenumberEnd: 2878
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          141
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_attribute_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2882
      functionLinenumberEnd: 2884
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_enumerator
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2883,34'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:2883,9'
          Dst:             enumerator_create_filter
    - functionName:    add_configuration_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2851
      functionLinenumberEnd: 2858
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_insert
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2855,11'
          Dst:             chunk_create_clone
        - Src:             'sa/ike_sa.c:2857,2'
          Dst:             array_insert
    - functionName:    get_if_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1777
      functionLinenumberEnd: 1778
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clear_virtual_ips
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1096
      functionLinenumberEnd: 1113
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          108
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - array_count
        - array_remove
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1101,16'
          Dst:             array_count
        - Src:             'sa/ike_sa.c:1105,9'
          Dst:             array_remove
    - functionName:    add_virtual_ip
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1062
      functionLinenumberEnd: 1091
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          93
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_insert_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1074,5'
          Dst:             array_insert_create
        - Src:             'sa/ike_sa.c:1089,3'
          Dst:             array_insert_create
    - functionName:    set_auth_lifetime
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2596
      functionLinenumberEnd: 2658
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          267
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - array_count
        - has_condition
        - ike_auth_lifetime_create
        - rekey_ike_sa_job_create
        - time_monotonic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2601,8'
          Dst:             time_monotonic
        - Src:             'sa/ike_sa.c:2608,8'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2609,8'
          Dst:             array_count
        - Src:             'sa/ike_sa.c:2610,7'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2621,14'
          Dst:             rekey_ike_sa_job_create
        - Src:             'sa/ike_sa.c:2633,15'
          Dst:             rekey_ike_sa_job_create
        - Src:             'sa/ike_sa.c:2652,10'
          Dst:             ike_auth_lifetime_create
    - functionName:    has_condition
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 789
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    26
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rekey
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1988
      functionLinenumberEnd: 1996
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - has_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1990,3'
          Dst:             has_condition
    - functionName:    destroy_child_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1914
      functionLinenumberEnd: 1932
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - create_child_sa_enumerator
        - remove_child_sa
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1919,15'
          Dst:             create_child_sa_enumerator
        - Src:             'sa/ike_sa.c:1925,4'
          Dst:             remove_child_sa
    - functionName:    create_child_sa_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1866
      functionLinenumberEnd: 1877
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_enumerator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1869,2'
          Dst:             array_create_enumerator
    - functionName:    remove_child_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1882
      functionLinenumberEnd: 1887
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_remove_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1886,2'
          Dst:             array_remove_at
    - functionName:    child_enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1859
      functionLinenumberEnd: 1862
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    child_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1845
      functionLinenumberEnd: 1855
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    delete_child_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1902
      functionLinenumberEnd: 1910
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rekey_child_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1891
      functionLinenumberEnd: 1898
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_child_count
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1827
      functionLinenumberEnd: 1828
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1828,9'
          Dst:             array_count
    - functionName:    get_child_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1808
      functionLinenumberEnd: 1822
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          88
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - array_create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1812,15'
          Dst:             array_create_enumerator
    - functionName:    get_keymat
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1056
      functionLinenumberEnd: 1057
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_redirected_from
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resolve_gateway_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2313
      functionLinenumberEnd: 2325
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - host_create_from_dns
        - snprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2317,2'
          Dst:             snprintf
        - Src:             'sa/ike_sa.c:2319,9'
          Dst:             host_create_from_dns
    - functionName:    redirect_established
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2332
      functionLinenumberEnd: 2382
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          240
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - array_create
        - array_insert
        - array_remove
        - ike_reauth_complete_create
        - reestablish_children
        - resolve_gateway_id
        - resolve_hosts
        - set_condition
        - set_my_host
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2345,2'
          Dst:             set_condition
        - Src:             'sa/ike_sa.c:2351,10'
          Dst:             resolve_gateway_id
        - Src:             'sa/ike_sa.c:2354,3'
          Dst:             set_my_host
        - Src:             'sa/ike_sa.c:2358,3'
          Dst:             resolve_hosts
        - Src:             'sa/ike_sa.c:2359,29'
          Dst:             array_create
        - Src:             'sa/ike_sa.c:2360,10'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:2362,4'
          Dst:             array_insert
        - Src:             'sa/ike_sa.c:2364,7'
          Dst:             reestablish_children
        - Src:             'sa/ike_sa.c:2367,34'
          Dst:             ike_reauth_complete_create
    - functionName:    set_condition
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          159
      EdgeCount:       33
      CyclomaticComplexity: 5
      functionsReached:
        - has_condition
        - send_keepalive
        - set_condition
      functionUses:    8
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:804,4'
          Branch Sides:    []
        - Branch String:   'sa/ike_sa.c:826,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:797,6'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:809,6'
          Dst:             send_keepalive
        - Src:             'sa/ike_sa.c:835,11'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:836,11'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:837,11'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:834,6'
          Dst:             set_condition
        - Src:             'sa/ike_sa.c:840,6'
          Dst:             send_keepalive
    - functionName:    resolve_hosts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1486
      functionLinenumberEnd: 1575
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         49
      ICount:          414
      EdgeCount:       62
      CyclomaticComplexity: 15
      functionsReached:
        - ike_cfg_get_family
        - set_my_host
        - set_other_host
      functionUses:    6
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:1490,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:1512,13'
          Dst:             ike_cfg_get_family
        - Src:             'sa/ike_sa.c:1531,4'
          Dst:             set_other_host
        - Src:             'sa/ike_sa.c:1573,3'
          Dst:             set_my_host
    - functionName:    reestablish_children
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2102
      functionLinenumberEnd: 2152
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          163
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - create_child_sa_enumerator
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:2113,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:2110,15'
          Dst:             create_child_sa_enumerator
    - functionName:    redirect_connecting
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2388
      functionLinenumberEnd: 2405
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          101
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - reset
        - resolve_gateway_id
        - resolve_hosts
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2391,10'
          Dst:             resolve_gateway_id
        - Src:             'sa/ike_sa.c:2396,2'
          Dst:             reset
        - Src:             'sa/ike_sa.c:2403,2'
          Dst:             resolve_hosts
    - functionName:    reset
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1018
      functionLinenumberEnd: 1052
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          174
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - flush_auth_cfgs
        - keymat_create
        - set_state
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1042,2'
          Dst:             set_state
        - Src:             'sa/ike_sa.c:1044,2'
          Dst:             flush_auth_cfgs
        - Src:             'sa/ike_sa.c:1047,17'
          Dst:             keymat_create
    - functionName:    set_state
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 907
      functionLinenumberEnd: 1014
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         65
      ICount:          526
      EdgeCount:       84
      CyclomaticComplexity: 21
      functionsReached:
        - delete_ike_sa_job_create
        - rekey_ike_sa_job_create
        - send_dpd
        - send_keepalive
        - supports_extension
        - time_monotonic
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:915,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:926,37'
          Dst:             time_monotonic
        - Src:             'sa/ike_sa.c:935,20'
          Dst:             rekey_ike_sa_job_create
        - Src:             'sa/ike_sa.c:944,20'
          Dst:             rekey_ike_sa_job_create
        - Src:             'sa/ike_sa.c:971,20'
          Dst:             delete_ike_sa_job_create
        - Src:             'sa/ike_sa.c:1001,7'
          Dst:             supports_extension
        - Src:             'sa/ike_sa.c:1003,4'
          Dst:             send_dpd
        - Src:             'sa/ike_sa.c:1012,3'
          Dst:             send_keepalive
    - functionName:    flush_auth_cfgs
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_remove
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:530,9'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:534,9'
          Dst:             array_remove
    - functionName:    supports_extension
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 780
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_dpd
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 851
      functionLinenumberEnd: 897
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          190
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - get_use_time
        - send_dpd_job_create
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:874,13'
          Dst:             get_use_time
        - Src:             'sa/ike_sa.c:875,9'
          Dst:             time_monotonic
        - Src:             'sa/ike_sa.c:889,17'
          Dst:             send_dpd_job_create
    - functionName:    redirect_count_exceeded
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2411
      functionLinenumberEnd: 2431
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_count
        - array_create
        - array_get
        - array_insert
        - array_remove
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2414,8'
          Dst:             time_monotonic
        - Src:             'sa/ike_sa.c:2416,9'
          Dst:             array_get
        - Src:             'sa/ike_sa.c:2419,3'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:2421,6'
          Dst:             array_count
        - Src:             'sa/ike_sa.c:2425,26'
          Dst:             array_create
        - Src:             'sa/ike_sa.c:2427,3'
          Dst:             array_insert
    - functionName:    handle_redirect
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2435
      functionLinenumberEnd: 2464
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          70
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - has_condition
        - redirect_connecting
        - redirect_count_exceeded
        - redirect_established
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:2449,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:2442,6'
          Dst:             redirect_count_exceeded
        - Src:             'sa/ike_sa.c:2452,9'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2454,12'
          Dst:             redirect_connecting
        - Src:             'sa/ike_sa.c:2458,11'
          Dst:             redirect_established
    - functionName:    redirect
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2468
      functionLinenumberEnd: 2503
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          106
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - has_condition
        - ike_redirect_create
        - supports_extension
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:2469,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:2474,8'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2478,8'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2488,9'
          Dst:             supports_extension
        - Src:             'sa/ike_sa.c:2495,16'
          Dst:             ike_redirect_create
    - functionName:    is_child_queued
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2079
      functionLinenumberEnd: 2081
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_task_queued
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2080,9'
          Dst:             is_task_queued
    - functionName:    is_task_queued
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2056
      functionLinenumberEnd: 2072
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reestablish
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2157
      functionLinenumberEnd: 2307
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         56
      ICount:          453
      EdgeCount:       72
      CyclomaticComplexity: 18
      functionsReached:
        - array_count
        - array_create_enumerator
        - has_condition
        - ike_sa_is_delete_queued
        - is_child_queued
        - reestablish_children
        - resolve_hosts
      functionUses:    3
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:2194,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:2166,6'
          Dst:             ike_sa_is_delete_queued
        - Src:             'sa/ike_sa.c:2172,6'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2174,7'
          Dst:             array_count
        - Src:             'sa/ike_sa.c:2191,16'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:2225,14'
          Dst:             is_child_queued
        - Src:             'sa/ike_sa.c:2226,8'
          Dst:             is_child_queued
        - Src:             'sa/ike_sa.c:2242,7'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2243,4'
          Dst:             array_count
        - Src:             'sa/ike_sa.c:2244,4'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2266,7'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2269,3'
          Dst:             resolve_hosts
        - Src:             'sa/ike_sa.c:2272,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:2288,10'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2287,12'
          Dst:             reestablish_children
    - functionName:    ike_sa_is_delete_queued
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2088
      functionLinenumberEnd: 2091
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_task_queued
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2090,9'
          Dst:             is_task_queued
    - functionName:    retransmit
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2507
      functionLinenumberEnd: 2592
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          313
      EdgeCount:       54
      CyclomaticComplexity: 12
      functionsReached:
        - array_count
        - array_create_enumerator
        - has_condition
        - reestablish
        - reset
        - resolve_hosts
        - time_monotonic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:2512,2'
          Branch Sides:    []
        - Branch String:   'sa/ike_sa.c:2523,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:2515,33'
          Dst:             time_monotonic
        - Src:             'sa/ike_sa.c:2536,5'
          Dst:             reset
        - Src:             'sa/ike_sa.c:2537,5'
          Dst:             resolve_hosts
        - Src:             'sa/ike_sa.c:2542,34'
          Dst:             array_count
        - Src:             'sa/ike_sa.c:2551,5'
          Dst:             reestablish
        - Src:             'sa/ike_sa.c:2554,18'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:2570,8'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2576,5'
          Dst:             reestablish
        - Src:             'sa/ike_sa.c:2583,4'
          Dst:             reestablish
    - functionName:    _cb_filter_fragments
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1320
      functionLinenumberEnd: 1332
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - set_dscp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1328,3'
          Dst:             set_dscp
    - functionName:    generate_message_fragmented
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1336
      functionLinenumberEnd: 1395
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          231
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - enumerator_create_filter
        - enumerator_create_single
        - generate_message
        - supports_extension
        - time_monotonic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:1345,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:1351,17'
          Dst:             supports_extension
        - Src:             'sa/ike_sa.c:1353,6'
          Dst:             supports_extension
        - Src:             'sa/ike_sa.c:1367,12'
          Dst:             generate_message
        - Src:             'sa/ike_sa.c:1372,14'
          Dst:             enumerator_create_single
        - Src:             'sa/ike_sa.c:1377,31'
          Dst:             time_monotonic
        - Src:             'sa/ike_sa.c:1391,14'
          Dst:             enumerator_create_filter
    - functionName:    generate_message
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1297
      functionLinenumberEnd: 1316
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          117
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - set_dscp
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1303,3'
          Dst:             set_dscp
        - Src:             'sa/ike_sa.c:1306,31'
          Dst:             time_monotonic
        - Src:             'sa/ike_sa.c:1312,3'
          Dst:             set_dscp
    - functionName:    process_message
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1671
      functionLinenumberEnd: 1701
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          100
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - flush_auth_cfgs
        - has_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1694,8'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:1697,4'
          Dst:             flush_auth_cfgs
    - functionName:    reauth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2017
      functionLinenumberEnd: 2049
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          96
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - has_condition
        - ike_sa_can_reauthenticate
        - reset
        - set_condition
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2026,3'
          Dst:             reset
        - Src:             'sa/ike_sa.c:2032,7'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2033,4'
          Dst:             ike_sa_can_reauthenticate
        - Src:             'sa/ike_sa.c:2046,2'
          Dst:             set_condition
    - functionName:    ike_sa_can_reauthenticate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2002
      functionLinenumberEnd: 2007
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - array_count
        - has_condition
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2005,9'
          Dst:             array_count
        - Src:             'sa/ike_sa.c:2006,7'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2007,7'
          Dst:             has_condition
    - functionName:    is_any_path_valid
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2708
      functionLinenumberEnd: 2747
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          152
      EdgeCount:       28
      CyclomaticComplexity: 6
      functionsReached:
        - create_peer_address_enumerator
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:2714,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:2727,15'
          Dst:             create_peer_address_enumerator
    - functionName:    create_peer_address_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1133
      functionLinenumberEnd: 1140
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
        - enumerator_create_single
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1136,10'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:1139,9'
          Dst:             enumerator_create_single
    - functionName:    is_current_path_valid
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2665
      functionLinenumberEnd: 2702
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          172
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - supports_extension
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:2669,6'
          Dst:             supports_extension
    - functionName:    roam
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2752
      functionLinenumberEnd: 2846
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          274
      EdgeCount:       54
      CyclomaticComplexity: 14
      functionsReached:
        - has_condition
        - ike_cfg_has_address
        - is_any_path_valid
        - is_current_path_valid
        - reauth
        - resolve_hosts
        - set_condition
        - supports_extension
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:2753,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:2778,7'
          Dst:             supports_extension
        - Src:             'sa/ike_sa.c:2779,3'
          Dst:             ike_cfg_has_address
        - Src:             'sa/ike_sa.c:2787,6'
          Dst:             is_current_path_valid
        - Src:             'sa/ike_sa.c:2791,3'
          Dst:             set_condition
        - Src:             'sa/ike_sa.c:2793,7'
          Dst:             supports_extension
        - Src:             'sa/ike_sa.c:2810,7'
          Dst:             is_any_path_valid
        - Src:             'sa/ike_sa.c:2814,3'
          Dst:             set_condition
        - Src:             'sa/ike_sa.c:2817,2'
          Dst:             set_condition
        - Src:             'sa/ike_sa.c:2820,6'
          Dst:             supports_extension
        - Src:             'sa/ike_sa.c:2822,8'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2837,7'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:2839,3'
          Dst:             set_condition
        - Src:             'sa/ike_sa.c:2844,2'
          Dst:             resolve_hosts
        - Src:             'sa/ike_sa.c:2845,9'
          Dst:             reauth
    - functionName:    delete_
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1937
      functionLinenumberEnd: 1983
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          183
      EdgeCount:       35
      CyclomaticComplexity: 5
      functionsReached:
        - time_monotonic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ike_sa.c:1940,2'
          Branch Sides:    []
        - Branch String:   'sa/ike_sa.c:1972,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ike_sa.c:1945,8'
          Dst:             time_monotonic
    - functionName:    retry_initiate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1660
      functionLinenumberEnd: 1667
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - initiate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1664,10'
          Dst:             initiate
    - functionName:    initiate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1579
      functionLinenumberEnd: 1656
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          227
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - resolve_hosts
        - retry_initiate_job_create
        - set_condition
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1587,4'
          Dst:             resolve_hosts
        - Src:             'sa/ike_sa.c:1610,3'
          Dst:             set_condition
        - Src:             'sa/ike_sa.c:1647,25'
          Dst:             retry_initiate_job_create
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    has_mapping_changed
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1151
      functionLinenumberEnd: 1164
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          120
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create_clone
        - chunk_equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1154,30'
          Dst:             chunk_create_clone
        - Src:             'sa/ike_sa.c:1157,6'
          Dst:             chunk_equals
        - Src:             'sa/ike_sa.c:1162,29'
          Dst:             chunk_create_clone
    - functionName:    clear_peer_addresses
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1144
      functionLinenumberEnd: 1147
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy_offset
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1145,2'
          Dst:             array_destroy_offset
    - functionName:    add_peer_address
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1127
      functionLinenumberEnd: 1129
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_insert_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1128,2'
          Dst:             array_insert_create
    - functionName:    get_message_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 675
      functionLinenumberEnd: 676
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_message_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 658
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 649
      functionLinenumberEnd: 650
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_peer_certificate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 542
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         39
      ICount:          372
      EdgeCount:       53
      CyclomaticComplexity: 16
      functionsReached:
        - array_create_enumerator
        - auth_cfg_wrapper_create
        - flush_auth_cfgs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:571,7'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:608,13'
          Dst:             auth_cfg_wrapper_create
        - Src:             'sa/ike_sa.c:642,3'
          Dst:             flush_auth_cfgs
    - functionName:    create_auth_cfg_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:515,10'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:517,9'
          Dst:             array_create_enumerator
    - functionName:    add_auth_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_insert
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:502,3'
          Dst:             array_insert
        - Src:             'sa/ike_sa.c:506,3'
          Dst:             array_insert
    - functionName:    get_auth_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_peer_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_ike_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 759
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ike_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 754
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_other_eap_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1736
      functionLinenumberEnd: 1766
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          161
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - array_create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1741,15'
          Dst:             array_create_enumerator
    - functionName:    get_other_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1730
      functionLinenumberEnd: 1731
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_my_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1717
      functionLinenumberEnd: 1718
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update_hosts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1186
      functionLinenumberEnd: 1293
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         76
      ICount:          466
      EdgeCount:       102
      CyclomaticComplexity: 28
      functionsReached:
        - array_create_enumerator
        - has_condition
        - linked_list_create_from_enumerator
        - set_my_host
        - set_other_host
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1216,44'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:1221,7'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:1222,7'
          Dst:             has_condition
        - Src:             'sa/ike_sa.c:1253,4'
          Dst:             set_my_host
        - Src:             'sa/ike_sa.c:1267,4'
          Dst:             set_other_host
        - Src:             'sa/ike_sa.c:1271,10'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:1270,10'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/ike_sa.c:1273,16'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:1281,12'
          Dst:             has_condition
    - functionName:    float_ports
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1168
      functionLinenumberEnd: 1182
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          124
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_other_host
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_my_host
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_statistic
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_statistic
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_state
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 901
      functionLinenumberEnd: 902
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_unique_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_version
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1711
      functionLinenumberEnd: 1712
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1705
      functionLinenumberEnd: 1706
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    have_pool
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3329
      functionLinenumberEnd: 3339
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_virtual_ip_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1117
      functionLinenumberEnd: 1123
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:1120,10'
          Dst:             array_create_enumerator
        - Src:             'sa/ike_sa.c:1122,9'
          Dst:             array_create_enumerator
    - functionName:    ike_sa_get_dynamic_hosts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3346
      functionLinenumberEnd: 3371
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          112
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - create_virtual_ip_enumerator
        - have_pool
        - linked_list_create
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:3352,9'
          Dst:             linked_list_create
        - Src:             'sa/ike_sa.c:3353,15'
          Dst:             create_virtual_ip_enumerator
        - Src:             'sa/ike_sa.c:3366,13'
          Dst:             have_pool
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3067
      functionLinenumberEnd: 3162
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         63
      ICount:          633
      EdgeCount:       83
      CyclomaticComplexity: 22
      functionsReached:
        - array_count
        - array_destroy
        - array_destroy_offset
        - array_remove
        - linked_list_create_from_enumerator
        - set_state
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:3074,2'
          Dst:             set_state
        - Src:             'sa/ike_sa.c:3082,9'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:3093,9'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:3098,9'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:3103,6'
          Dst:             array_count
        - Src:             'sa/ike_sa.c:3107,9'
          Dst:             array_remove
        - Src:             'sa/ike_sa.c:3113,12'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/ike_sa.c:3125,2'
          Dst:             array_destroy
        - Src:             'sa/ike_sa.c:3128,2'
          Dst:             array_destroy
        - Src:             'sa/ike_sa.c:3129,2'
          Dst:             array_destroy
        - Src:             'sa/ike_sa.c:3130,2'
          Dst:             array_destroy
        - Src:             'sa/ike_sa.c:3131,2'
          Dst:             array_destroy_offset
        - Src:             'sa/ike_sa.c:3150,2'
          Dst:             array_destroy
        - Src:             'sa/ike_sa.c:3157,2'
          Dst:             array_destroy_offset
        - Src:             'sa/ike_sa.c:3158,2'
          Dst:             array_destroy_offset
    - functionName:    enable_extension
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 767
      functionLinenumberEnd: 772
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ref_get_nonzero
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/atomics.h'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_sa_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3169
      functionLinenumberEnd: 3323
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          569
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_create
        - auth_cfg_create
        - destroy
        - enable_extension
        - host_create_any
        - identification_create_from_encoding
        - keymat_create
        - ref_get_nonzero
        - task_manager_create
        - time_monotonic
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             ref_get_nonzero
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             auth_cfg_create
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             auth_cfg_create
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             array_create
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             array_create
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             host_create_any
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             host_create_any
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             identification_create_from_encoding
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             identification_create_from_encoding
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             keymat_create
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             array_create
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             time_monotonic
        - Src:             'sa/ike_sa.c:3182,2'
          Dst:             time_monotonic
        - Src:             'sa/ike_sa.c:3309,3'
          Dst:             enable_extension
        - Src:             'sa/ike_sa.c:3312,23'
          Dst:             task_manager_create
        - Src:             'sa/ike_sa.c:3319,3'
          Dst:             destroy
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clone_
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ike_sa_id_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ike_sa_id.c:125,9'
          Dst:             ike_sa_id_create
    - functionName:    ike_sa_id_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - char
        - size_t
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          84
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    switch_initiator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_initiator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    replace_values
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          34
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          93
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_responder_spi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_initiator_spi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_initiator_spi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_responder_spi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ike_version
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ike_sa_id.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    keymat_register_constructor
      functionSourceFile: '/src/strongswan/src/libcharon/sa/keymat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          28
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/keymat.c:121,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    keymat_get_keylen_integ
      functionSourceFile: '/src/strongswan/src/libcharon/sa/keymat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    keymat_get_keylen_encr
      functionSourceFile: '/src/strongswan/src/libcharon/sa/keymat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    keymat_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/keymat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - keymat_v2_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/keymat.c:31,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/keymat.c:42,13'
          Dst:             keymat_v2_create
    - functionName:    task_manager_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/task_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          43
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - task_manager_v2_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/task_manager.c:91,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/task_manager.c:100,12'
          Dst:             task_manager_v2_create
    - functionName:    retransmission_timeout_total
      functionSourceFile: '/src/strongswan/src/libcharon/sa/task_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - retransmission_timeout
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/task_manager.c:81,12'
          Dst:             retransmission_timeout
    - functionName:    retransmission_timeout
      functionSourceFile: '/src/strongswan/src/libcharon/sa/task_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          138
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - pow
        - random
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/task_manager.c:57,42'
          Dst:             pow
        - Src:             'sa/task_manager.c:66,28'
          Dst:             random
    - functionName:    pow
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    retransmission_parse_default
      functionSourceFile: '/src/strongswan/src/libcharon/sa/task_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          150
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - log
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/task_manager.c:41,25'
          Dst:             log
        - Src:             'sa/task_manager.c:43,10'
          Dst:             log
    - functionName:    log
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_algorithm_supported
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 791
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_hash_algorithm
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 801
      functionLinenumberEnd: 807
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_algorithm_set_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/keymat_v2.c:804,27'
          Dst:             hash_algorithm_set_create
    - functionName:    get_psk_sig
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 743
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      bool
      argCount:        12
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          222
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - chunk_clear
        - chunk_create
        - chunk_free
        - derive_ppk_key
        - get_auth_octets
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/keymat_v2.c:753,9'
          Dst:             derive_ppk_key
        - Src:             'sa/ikev2/keymat_v2.c:760,7'
          Dst:             get_auth_octets
        - Src:             'sa/ikev2/keymat_v2.c:766,12'
          Dst:             chunk_create
        - Src:             'sa/ikev2/keymat_v2.c:783,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:784,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:785,2'
          Dst:             chunk_free
    - functionName:    derive_ppk_key
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          131
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_auth_octets
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      bool
      argCount:        12
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          263
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_clear
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - derive_ppk_key
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/keymat_v2.c:706,8'
          Dst:             derive_ppk_key
        - Src:             'sa/ikev2/keymat_v2.c:713,10'
          Dst:             chunk_create
        - Src:             'sa/ikev2/keymat_v2.c:715,2'
          Dst:             memcpy_noop
        - Src:             'sa/ikev2/keymat_v2.c:716,8'
          Dst:             chunk_length
        - Src:             'sa/ikev2/keymat_v2.c:716,8'
          Dst:             chunk_create_cat
        - Src:             'sa/ikev2/keymat_v2.c:723,3'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:726,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:727,12'
          Dst:             chunk_length
        - Src:             'sa/ikev2/keymat_v2.c:727,12'
          Dst:             chunk_create_cat
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_int_auth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 675
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          116
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_skd
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 661
      functionLinenumberEnd: 663
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    derive_child_keys
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      bool
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          446
      EdgeCount:       78
      CyclomaticComplexity: 17
      functionsReached:
        - chunk_clear
        - chunk_create_cat
        - chunk_length
        - chunk_split
        - key_exchange_concat_secrets
        - keymat_get_keylen_encr
        - keymat_get_keylen_integ
        - memwipe
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/keymat_v2.c:566,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/keymat_v2.c:554,15'
          Dst:             keymat_get_keylen_encr
        - Src:             'sa/ikev2/keymat_v2.c:598,15'
          Dst:             keymat_get_keylen_integ
        - Src:             'sa/ikev2/keymat_v2.c:612,8'
          Dst:             key_exchange_concat_secrets
        - Src:             'sa/ikev2/keymat_v2.c:619,9'
          Dst:             chunk_length
        - Src:             'sa/ikev2/keymat_v2.c:619,9'
          Dst:             chunk_create_cat
        - Src:             'sa/ikev2/keymat_v2.c:628,3'
          Dst:             memwipe
        - Src:             'sa/ikev2/keymat_v2.c:631,2'
          Dst:             memwipe
        - Src:             'sa/ikev2/keymat_v2.c:642,2'
          Dst:             chunk_split
        - Src:             'sa/ikev2/keymat_v2.c:644,2'
          Dst:             chunk_clear
    - functionName:    derive_ike_keys_ppk
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          137
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_clear
        - derive_ppk_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/keymat_v2.c:512,7'
          Dst:             derive_ppk_key
        - Src:             'sa/ikev2/keymat_v2.c:513,4'
          Dst:             derive_ppk_key
        - Src:             'sa/ikev2/keymat_v2.c:514,4'
          Dst:             derive_ppk_key
        - Src:             'sa/ikev2/keymat_v2.c:516,3'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:517,3'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:518,3'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:523,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:527,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:531,2'
          Dst:             chunk_clear
    - functionName:    set_aead_keys
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          164
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_clear
        - chunk_create_cat
        - chunk_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/keymat_v2.c:228,9'
          Dst:             chunk_length
        - Src:             'sa/ikev2/keymat_v2.c:228,9'
          Dst:             chunk_create_cat
        - Src:             'sa/ikev2/keymat_v2.c:229,9'
          Dst:             chunk_length
        - Src:             'sa/ikev2/keymat_v2.c:229,9'
          Dst:             chunk_create_cat
        - Src:             'sa/ikev2/keymat_v2.c:234,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:235,2'
          Dst:             chunk_clear
    - functionName:    create_ike_aead
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - short
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          189
      EdgeCount:       27
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/keymat_v2.c:108,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    create_ike_traditional
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - short
        - short
        - short
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          330
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - aead_create
        - iv_gen_create_for_alg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/keymat_v2.c:195,10'
          Dst:             iv_gen_create_for_alg
        - Src:             'sa/ikev2/keymat_v2.c:196,10'
          Dst:             iv_gen_create_for_alg
        - Src:             'sa/ikev2/keymat_v2.c:201,18'
          Dst:             aead_create
        - Src:             'sa/ikev2/keymat_v2.c:202,19'
          Dst:             aead_create
    - functionName:    derive_ike_keys
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      bool
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         96
      ICount:          952
      EdgeCount:       129
      CyclomaticComplexity: 35
      functionsReached:
        - chunk_clear
        - chunk_create
        - chunk_create_cat
        - chunk_free
        - chunk_length
        - chunk_split
        - create_ike_aead
        - create_ike_traditional
        - encryption_algorithm_is_aead
        - key_exchange_concat_secrets
        - set_aead_keys
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/keymat_v2.c:316,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/keymat_v2.c:252,10'
          Dst:             chunk_create
        - Src:             'sa/ikev2/keymat_v2.c:253,10'
          Dst:             chunk_create
        - Src:             'sa/ikev2/keymat_v2.c:285,7'
          Dst:             encryption_algorithm_is_aead
        - Src:             'sa/ikev2/keymat_v2.c:294,8'
          Dst:             create_ike_traditional
        - Src:             'sa/ikev2/keymat_v2.c:300,12'
          Dst:             create_ike_aead
        - Src:             'sa/ikev2/keymat_v2.c:305,7'
          Dst:             key_exchange_concat_secrets
        - Src:             'sa/ikev2/keymat_v2.c:312,15'
          Dst:             chunk_length
        - Src:             'sa/ikev2/keymat_v2.c:312,15'
          Dst:             chunk_create_cat
        - Src:             'sa/ikev2/keymat_v2.c:335,16'
          Dst:             chunk_length
        - Src:             'sa/ikev2/keymat_v2.c:335,16'
          Dst:             chunk_create_cat
        - Src:             'sa/ikev2/keymat_v2.c:346,4'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:347,4'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:348,4'
          Dst:             chunk_free
        - Src:             'sa/ikev2/keymat_v2.c:349,4'
          Dst:             chunk_free
        - Src:             'sa/ikev2/keymat_v2.c:370,4'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:371,4'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:372,4'
          Dst:             chunk_free
        - Src:             'sa/ikev2/keymat_v2.c:373,4'
          Dst:             chunk_free
        - Src:             'sa/ikev2/keymat_v2.c:376,12'
          Dst:             chunk_length
        - Src:             'sa/ikev2/keymat_v2.c:376,12'
          Dst:             chunk_create_cat
        - Src:             'sa/ikev2/keymat_v2.c:386,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:387,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:388,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/keymat_v2.c:395,18'
          Dst:             chunk_length
        - Src:             'sa/ikev2/keymat_v2.c:395,18'
          Dst:             chunk_create_cat
        - Src:             'sa/ikev2/keymat_v2.c:404,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:405,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/keymat_v2.c:406,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/keymat_v2.c:422,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:423,2'
          Dst:             chunk_split
        - Src:             'sa/ikev2/keymat_v2.c:429,7'
          Dst:             encryption_algorithm_is_aead
        - Src:             'sa/ikev2/keymat_v2.c:437,7'
          Dst:             set_aead_keys
        - Src:             'sa/ikev2/keymat_v2.c:444,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:445,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:461,2'
          Dst:             chunk_clear
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 820
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          120
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/keymat_v2.c:815,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:816,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/keymat_v2.c:817,2'
          Dst:             chunk_clear
    - functionName:    get_aead
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 669
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_nonce_gen
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_version
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    keymat_v2_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/keymat_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 826
      functionLinenumberEnd: 853
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          95
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2594
      functionLinenumberEnd: 2608
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          103
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_destroy
        - clear_packets
        - flush
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2595,2'
          Dst:             flush
        - Src:             'sa/ikev2/task_manager_v2.c:2597,2'
          Dst:             array_destroy
        - Src:             'sa/ikev2/task_manager_v2.c:2598,2'
          Dst:             array_destroy
        - Src:             'sa/ikev2/task_manager_v2.c:2599,2'
          Dst:             array_destroy
        - Src:             'sa/ikev2/task_manager_v2.c:2601,2'
          Dst:             clear_packets
        - Src:             'sa/ikev2/task_manager_v2.c:2602,2'
          Dst:             array_destroy
        - Src:             'sa/ikev2/task_manager_v2.c:2603,2'
          Dst:             clear_packets
        - Src:             'sa/ikev2/task_manager_v2.c:2604,2'
          Dst:             array_destroy
    - functionName:    flush
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flush_queue
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:243,2'
          Dst:             flush_queue
        - Src:             'sa/ikev2/task_manager_v2.c:244,2'
          Dst:             flush_queue
        - Src:             'sa/ikev2/task_manager_v2.c:245,2'
          Dst:             flush_queue
    - functionName:    clear_packets
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_remove
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:202,9'
          Dst:             array_remove
    - functionName:    flush_queue
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 3
      functionsReached:
        - array_remove
      functionUses:    4
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:214,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:228,9'
          Dst:             array_remove
    - functionName:    remove_task
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2571
      functionLinenumberEnd: 2590
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - array_remove_at
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:2574,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2577,4'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:2580,4'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:2583,4'
          Dst:             array_remove_at
    - functionName:    task_enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2512
      functionLinenumberEnd: 2515
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    task_enumerator_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2519
      functionLinenumberEnd: 2536
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          110
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_task_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2540
      functionLinenumberEnd: 2566
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          90
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - array_create_enumerator
        - enumerator_create_empty
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:2551,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2554,24'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:2557,24'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:2560,24'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:2563,24'
          Dst:             enumerator_create_empty
    - functionName:    busy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2447
      functionLinenumberEnd: 2448
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2448,9'
          Dst:             array_count
    - functionName:    reset
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2453
      functionLinenumberEnd: 2498
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          219
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - array_create_enumerator
        - array_insert
        - array_remove
        - clear_packets
        - time_monotonic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2460,2'
          Dst:             clear_packets
        - Src:             'sa/ikev2/task_manager_v2.c:2461,2'
          Dst:             clear_packets
        - Src:             'sa/ikev2/task_manager_v2.c:2476,2'
          Dst:             time_monotonic
        - Src:             'sa/ikev2/task_manager_v2.c:2478,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:2487,9'
          Dst:             array_remove
        - Src:             'sa/ikev2/task_manager_v2.c:2494,3'
          Dst:             array_insert
    - functionName:    get_mid
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1447
      functionLinenumberEnd: 1448
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    adopt_tasks
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2426
      functionLinenumberEnd: 2443
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_insert
        - array_remove
        - time_monotonic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2431,2'
          Dst:             time_monotonic
        - Src:             'sa/ikev2/task_manager_v2.c:2434,9'
          Dst:             array_remove
        - Src:             'sa/ikev2/task_manager_v2.c:2441,3'
          Dst:             array_insert
    - functionName:    queue_dpd
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2352
      functionLinenumberEnd: 2372
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ike_dpd_create
        - queue_mobike_task
        - queue_task
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2366,13'
          Dst:             queue_mobike_task
        - Src:             'sa/ikev2/task_manager_v2.c:2371,28'
          Dst:             ike_dpd_create
        - Src:             'sa/ikev2/task_manager_v2.c:2371,2'
          Dst:             queue_task
    - functionName:    queue_mobike_task
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2292
      functionLinenumberEnd: 2313
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_create_enumerator
        - ike_mobike_create
        - queue_task
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2297,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:2310,12'
          Dst:             ike_mobike_create
        - Src:             'sa/ikev2/task_manager_v2.c:2311,3'
          Dst:             queue_task
    - functionName:    queue_task
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2080
      functionLinenumberEnd: 2082
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - queue_task_delayed
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2081,2'
          Dst:             queue_task_delayed
    - functionName:    queue_task_delayed
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2049
      functionLinenumberEnd: 2076
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          87
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_insert
        - initiate_tasks_job_create
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2053,2'
          Dst:             time_monotonic
        - Src:             'sa/ikev2/task_manager_v2.c:2062,17'
          Dst:             initiate_tasks_job_create
        - Src:             'sa/ikev2/task_manager_v2.c:2075,2'
          Dst:             array_insert
    - functionName:    queue_child_delete
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2419
      functionLinenumberEnd: 2422
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - child_delete_create
        - queue_task
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2420,28'
          Dst:             child_delete_create
        - Src:             'sa/ikev2/task_manager_v2.c:2420,2'
          Dst:             queue_task
    - functionName:    queue_child_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2412
      functionLinenumberEnd: 2414
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - child_rekey_create
        - queue_task
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2413,28'
          Dst:             child_rekey_create
        - Src:             'sa/ikev2/task_manager_v2.c:2413,2'
          Dst:             queue_task
    - functionName:    queue_child
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2377
      functionLinenumberEnd: 2408
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          181
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - child_create_create
        - queue_task
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2383,10'
          Dst:             child_create_create
        - Src:             'sa/ikev2/task_manager_v2.c:2397,10'
          Dst:             child_create_create
        - Src:             'sa/ikev2/task_manager_v2.c:2405,10'
          Dst:             child_create_create
        - Src:             'sa/ikev2/task_manager_v2.c:2407,2'
          Dst:             queue_task
    - functionName:    queue_ike_delete
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2283
      functionLinenumberEnd: 2285
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ike_delete_create
        - queue_task
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2284,28'
          Dst:             ike_delete_create
        - Src:             'sa/ikev2/task_manager_v2.c:2284,2'
          Dst:             queue_task
    - functionName:    queue_mobike
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2318
      functionLinenumberEnd: 2348
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          101
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_create_enumerator
        - queue_mobike_task
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2321,11'
          Dst:             queue_mobike_task
        - Src:             'sa/ikev2/task_manager_v2.c:2332,16'
          Dst:             array_create_enumerator
    - functionName:    trigger_mbb_reauth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2151
      functionLinenumberEnd: 2269
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         31
      ICount:          601
      EdgeCount:       38
      CyclomaticComplexity: 9
      functionsReached:
        - array_create_enumerator
        - array_remove_at
        - child_create_create
        - ike_reauth_complete_create
        - ike_verify_peer_cert_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:2188,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2198,18'
          Dst:             child_create_create
        - Src:             'sa/ikev2/task_manager_v2.c:2220,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:2227,4'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:2254,33'
          Dst:             ike_verify_peer_cert_create
        - Src:             'sa/ikev2/task_manager_v2.c:2255,33'
          Dst:             ike_reauth_complete_create
    - functionName:    queue_ike_reauth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2273
      functionLinenumberEnd: 2279
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ike_reauth_create
        - queue_task
        - trigger_mbb_reauth
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2276,10'
          Dst:             trigger_mbb_reauth
        - Src:             'sa/ikev2/task_manager_v2.c:2278,28'
          Dst:             ike_reauth_create
        - Src:             'sa/ikev2/task_manager_v2.c:2278,2'
          Dst:             queue_task
    - functionName:    queue_ike_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2143
      functionLinenumberEnd: 2145
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ike_rekey_create
        - queue_task
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2144,28'
          Dst:             ike_rekey_create
        - Src:             'sa/ikev2/task_manager_v2.c:2144,2'
          Dst:             queue_task
    - functionName:    queue_ike
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2086
      functionLinenumberEnd: 2139
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         36
      ICount:          209
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - has_queued
        - ike_auth_create
        - ike_auth_lifetime_create
        - ike_cert_post_create
        - ike_cert_pre_create
        - ike_config_create
        - ike_establish_create
        - ike_init_create
        - ike_mobike_create
        - ike_natd_create
        - ike_vendor_create
        - queue_task
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2087,7'
          Dst:             has_queued
        - Src:             'sa/ikev2/task_manager_v2.c:2089,29'
          Dst:             ike_vendor_create
        - Src:             'sa/ikev2/task_manager_v2.c:2089,3'
          Dst:             queue_task
        - Src:             'sa/ikev2/task_manager_v2.c:2091,7'
          Dst:             has_queued
        - Src:             'sa/ikev2/task_manager_v2.c:2093,29'
          Dst:             ike_init_create
        - Src:             'sa/ikev2/task_manager_v2.c:2093,3'
          Dst:             queue_task
        - Src:             'sa/ikev2/task_manager_v2.c:2095,7'
          Dst:             has_queued
        - Src:             'sa/ikev2/task_manager_v2.c:2097,29'
          Dst:             ike_natd_create
        - Src:             'sa/ikev2/task_manager_v2.c:2097,3'
          Dst:             queue_task
        - Src:             'sa/ikev2/task_manager_v2.c:2099,7'
          Dst:             has_queued
        - Src:             'sa/ikev2/task_manager_v2.c:2101,29'
          Dst:             ike_cert_pre_create
        - Src:             'sa/ikev2/task_manager_v2.c:2101,3'
          Dst:             queue_task
        - Src:             'sa/ikev2/task_manager_v2.c:2103,7'
          Dst:             has_queued
        - Src:             'sa/ikev2/task_manager_v2.c:2105,29'
          Dst:             ike_auth_create
        - Src:             'sa/ikev2/task_manager_v2.c:2105,3'
          Dst:             queue_task
        - Src:             'sa/ikev2/task_manager_v2.c:2107,7'
          Dst:             has_queued
        - Src:             'sa/ikev2/task_manager_v2.c:2109,29'
          Dst:             ike_cert_post_create
        - Src:             'sa/ikev2/task_manager_v2.c:2109,3'
          Dst:             queue_task
        - Src:             'sa/ikev2/task_manager_v2.c:2111,7'
          Dst:             has_queued
        - Src:             'sa/ikev2/task_manager_v2.c:2113,29'
          Dst:             ike_config_create
        - Src:             'sa/ikev2/task_manager_v2.c:2113,3'
          Dst:             queue_task
        - Src:             'sa/ikev2/task_manager_v2.c:2115,7'
          Dst:             has_queued
        - Src:             'sa/ikev2/task_manager_v2.c:2117,29'
          Dst:             ike_auth_lifetime_create
        - Src:             'sa/ikev2/task_manager_v2.c:2117,3'
          Dst:             queue_task
        - Src:             'sa/ikev2/task_manager_v2.c:2119,7'
          Dst:             has_queued
        - Src:             'sa/ikev2/task_manager_v2.c:2126,30'
          Dst:             ike_mobike_create
        - Src:             'sa/ikev2/task_manager_v2.c:2126,4'
          Dst:             queue_task
        - Src:             'sa/ikev2/task_manager_v2.c:2129,7'
          Dst:             has_queued
        - Src:             'sa/ikev2/task_manager_v2.c:2131,29'
          Dst:             ike_establish_create
        - Src:             'sa/ikev2/task_manager_v2.c:2131,3'
          Dst:             queue_task
    - functionName:    has_queued
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          119
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - array_create_enumerator
      functionUses:    11
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:259,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:274,15'
          Dst:             array_create_enumerator
    - functionName:    activate_task
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          127
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - array_create_enumerator
        - array_insert
        - array_remove_at
        - time_monotonic
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:302,2'
          Dst:             time_monotonic
        - Src:             'sa/ikev2/task_manager_v2.c:304,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:311,4'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:312,4'
          Dst:             array_insert
    - functionName:    retransmit
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         46
      ICount:          388
      EdgeCount:       61
      CyclomaticComplexity: 17
      functionsReached:
        - array_count
        - array_create_enumerator
        - array_get
        - retransmission_timeout
        - retransmit_job_create
        - send_packets
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:375,3'
          Dst:             array_count
        - Src:             'sa/ikev2/task_manager_v2.c:384,3'
          Dst:             array_get
        - Src:             'sa/ikev2/task_manager_v2.c:389,17'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:411,14'
          Dst:             retransmission_timeout
        - Src:             'sa/ikev2/task_manager_v2.c:423,5'
          Dst:             send_packets
        - Src:             'sa/ikev2/task_manager_v2.c:474,17'
          Dst:             retransmit_job_create
    - functionName:    send_packets
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          114
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - array_count
        - array_get
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:332,18'
          Dst:             array_count
        - Src:             'sa/ikev2/task_manager_v2.c:334,3'
          Dst:             array_get
    - functionName:    initiate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         104
      ICount:          776
      EdgeCount:       130
      CyclomaticComplexity: 28
      functionsReached:
        - activate_task
        - array_compress
        - array_count
        - array_create_enumerator
        - array_remove_at
        - derive_keys
        - flush
        - generate_message
        - initiate
        - message_create
        - retransmit
      functionUses:    3
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:543,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:658,4'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:705,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:753,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:535,11'
          Dst:             retransmit
        - Src:             'sa/ikev2/task_manager_v2.c:540,6'
          Dst:             array_count
        - Src:             'sa/ikev2/task_manager_v2.c:546,5'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:547,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:551,6'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:552,6'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:553,6'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:554,6'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:558,6'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:559,6'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:560,6'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:562,6'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:563,6'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:567,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:572,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:577,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:582,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:587,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:592,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:597,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:602,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:607,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:612,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:624,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:629,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:636,9'
          Dst:             activate_task
        - Src:             'sa/ikev2/task_manager_v2.c:648,8'
          Dst:             derive_keys
        - Src:             'sa/ikev2/task_manager_v2.c:654,16'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:692,12'
          Dst:             message_create
        - Src:             'sa/ikev2/task_manager_v2.c:702,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:709,5'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:728,5'
          Dst:             flush
        - Src:             'sa/ikev2/task_manager_v2.c:739,10'
          Dst:             initiate
        - Src:             'sa/ikev2/task_manager_v2.c:742,11'
          Dst:             generate_message
        - Src:             'sa/ikev2/task_manager_v2.c:746,16'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:756,6'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:774,3'
          Dst:             flush
        - Src:             'sa/ikev2/task_manager_v2.c:783,2'
          Dst:             array_compress
        - Src:             'sa/ikev2/task_manager_v2.c:784,2'
          Dst:             array_compress
        - Src:             'sa/ikev2/task_manager_v2.c:786,9'
          Dst:             retransmit
    - functionName:    derive_keys
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 486
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          101
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
        - array_remove_at
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:497,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:490,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:500,6'
          Dst:             array_remove_at
    - functionName:    generate_message
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_compress
        - array_insert_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:364,3'
          Dst:             array_insert_create
        - Src:             'sa/ikev2/task_manager_v2.c:367,2'
          Dst:             array_compress
    - functionName:    handle_collisions
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 931
      functionLinenumberEnd: 975
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          169
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - array_create_enumerator
      functionUses:    3
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:948,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:945,16'
          Dst:             array_create_enumerator
    - functionName:    build_response
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 981
      functionLinenumberEnd: 1121
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         62
      ICount:          510
      EdgeCount:       77
      CyclomaticComplexity: 17
      functionsReached:
        - array_compress
        - array_create_enumerator
        - array_remove_at
        - clear_packets
        - generate_message
        - handle_collisions
        - message_create
        - send_packets
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:1009,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:1071,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:994,12'
          Dst:             message_create
        - Src:             'sa/ikev2/task_manager_v2.c:1002,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:1013,5'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:1014,10'
          Dst:             handle_collisions
        - Src:             'sa/ikev2/task_manager_v2.c:1021,9'
          Dst:             handle_collisions
        - Src:             'sa/ikev2/task_manager_v2.c:1023,6'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:1032,9'
          Dst:             handle_collisions
        - Src:             'sa/ikev2/task_manager_v2.c:1034,6'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:1059,2'
          Dst:             clear_packets
        - Src:             'sa/ikev2/task_manager_v2.c:1060,11'
          Dst:             generate_message
        - Src:             'sa/ikev2/task_manager_v2.c:1064,16'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:1074,6'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:1099,2'
          Dst:             send_packets
        - Src:             'sa/ikev2/task_manager_v2.c:1112,3'
          Dst:             clear_packets
        - Src:             'sa/ikev2/task_manager_v2.c:1118,2'
          Dst:             array_compress
    - functionName:    send_invalid_syntax
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1581
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - incr_mid
        - send_notify_response
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:1571,2'
          Dst:             send_notify_response
        - Src:             'sa/ikev2/task_manager_v2.c:1572,2'
          Dst:             incr_mid
    - functionName:    send_notify_response
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1532
      functionLinenumberEnd: 1562
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          253
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - message_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:1537,13'
          Dst:             message_create
    - functionName:    incr_mid
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1434
      functionLinenumberEnd: 1443
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_unsupported_critical_payload
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1587
      functionLinenumberEnd: 1610
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          93
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_message
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1455
      functionLinenumberEnd: 1467
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          100
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_response
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 924
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         49
      ICount:          455
      EdgeCount:       54
      CyclomaticComplexity: 7
      functionsReached:
        - array_compress
        - array_create_enumerator
        - array_get
        - array_remove_at
        - clear_packets
        - initiate
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:808,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:831,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:862,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:899,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:824,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:853,3'
          Dst:             array_get
        - Src:             'sa/ikev2/task_manager_v2.c:859,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:866,5'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:878,5'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:887,11'
          Dst:             initiate
        - Src:             'sa/ikev2/task_manager_v2.c:892,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:902,5'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:909,5'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:919,2'
          Dst:             clear_packets
        - Src:             'sa/ikev2/task_manager_v2.c:921,2'
          Dst:             array_compress
        - Src:             'sa/ikev2/task_manager_v2.c:923,9'
          Dst:             initiate
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_request
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1128
      functionLinenumberEnd: 1430
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         112
      ICount:          850
      EdgeCount:       123
      CyclomaticComplexity: 13
      functionsReached:
        - array_count
        - array_create_enumerator
        - array_insert
        - array_remove_at
        - build_response
        - child_create_create
        - child_delete_create
        - child_rekey_create
        - flush_queue
        - ike_auth_create
        - ike_auth_lifetime_create
        - ike_cert_post_create
        - ike_cert_pre_create
        - ike_config_create
        - ike_delete_create
        - ike_dpd_create
        - ike_establish_create
        - ike_init_create
        - ike_mid_sync_create
        - ike_mobike_create
        - ike_natd_create
        - ike_redirect_create
        - ike_rekey_create
        - ike_vendor_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:1139,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:1190,6'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:1240,6'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:1253,8'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:1345,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:1355,5'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:1380,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:1411,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:1136,6'
          Dst:             array_count
        - Src:             'sa/ikev2/task_manager_v2.c:1143,21'
          Dst:             ike_vendor_create
        - Src:             'sa/ikev2/task_manager_v2.c:1144,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1145,21'
          Dst:             ike_init_create
        - Src:             'sa/ikev2/task_manager_v2.c:1146,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1147,21'
          Dst:             ike_natd_create
        - Src:             'sa/ikev2/task_manager_v2.c:1148,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1149,21'
          Dst:             ike_cert_pre_create
        - Src:             'sa/ikev2/task_manager_v2.c:1150,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1151,21'
          Dst:             ike_auth_create
        - Src:             'sa/ikev2/task_manager_v2.c:1152,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1153,21'
          Dst:             ike_cert_post_create
        - Src:             'sa/ikev2/task_manager_v2.c:1154,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1159,21'
          Dst:             ike_config_create
        - Src:             'sa/ikev2/task_manager_v2.c:1160,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1161,21'
          Dst:             ike_mobike_create
        - Src:             'sa/ikev2/task_manager_v2.c:1162,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1164,21'
          Dst:             ike_establish_create
        - Src:             'sa/ikev2/task_manager_v2.c:1165,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1168,21'
          Dst:             ike_auth_lifetime_create
        - Src:             'sa/ikev2/task_manager_v2.c:1169,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1170,21'
          Dst:             child_create_create
        - Src:             'sa/ikev2/task_manager_v2.c:1172,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1219,23'
          Dst:             child_rekey_create
        - Src:             'sa/ikev2/task_manager_v2.c:1224,23'
          Dst:             child_create_create
        - Src:             'sa/ikev2/task_manager_v2.c:1230,22'
          Dst:             ike_rekey_create
        - Src:             'sa/ikev2/task_manager_v2.c:1232,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1265,26'
          Dst:             ike_mobike_create
        - Src:             'sa/ikev2/task_manager_v2.c:1269,26'
          Dst:             ike_auth_lifetime_create
        - Src:             'sa/ikev2/task_manager_v2.c:1278,26'
          Dst:             ike_delete_create
        - Src:             'sa/ikev2/task_manager_v2.c:1282,26'
          Dst:             ike_redirect_create
        - Src:             'sa/ikev2/task_manager_v2.c:1286,26'
          Dst:             ike_mid_sync_create
        - Src:             'sa/ikev2/task_manager_v2.c:1299,25'
          Dst:             ike_delete_create
        - Src:             'sa/ikev2/task_manager_v2.c:1304,25'
          Dst:             child_delete_create
        - Src:             'sa/ikev2/task_manager_v2.c:1321,22'
          Dst:             ike_dpd_create
        - Src:             'sa/ikev2/task_manager_v2.c:1323,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/task_manager_v2.c:1338,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:1363,7'
          Dst:             flush_queue
        - Src:             'sa/ikev2/task_manager_v2.c:1377,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:1384,5'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:1396,5'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:1404,15'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/task_manager_v2.c:1414,5'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:1421,5'
          Dst:             array_remove_at
        - Src:             'sa/ikev2/task_manager_v2.c:1429,9'
          Dst:             build_response
    - functionName:    handle_fragment
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1478
      functionLinenumberEnd: 1524
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          185
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - hash_message
        - message_create_defrag
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:1489,4'
          Dst:             hash_message
        - Src:             'sa/ikev2/task_manager_v2.c:1495,13'
          Dst:             message_create_defrag
        - Src:             'sa/ikev2/task_manager_v2.c:1508,4'
          Dst:             hash_message
    - functionName:    reject_request
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1711
      functionLinenumberEnd: 1762
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          153
      EdgeCount:       24
      CyclomaticComplexity: 3
      functionsReached:
        - has_queued
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:1721,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:1740,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:1729,8'
          Dst:             has_queued
    - functionName:    is_mid_sync
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1772
      functionLinenumberEnd: 1798
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:1784,4'
          Branch Sides:    []
      Callsites:       []
    - functionName:    parse_message
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1617
      functionLinenumberEnd: 1703
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          234
      EdgeCount:       43
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
        - derive_keys
        - has_unsupported_critical_payload
        - incr_mid
        - send_invalid_syntax
        - send_notify_response
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:1642,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:1685,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:1621,6'
          Dst:             derive_keys
        - Src:             'sa/ikev2/task_manager_v2.c:1627,19'
          Dst:             has_unsupported_critical_payload
        - Src:             'sa/ikev2/task_manager_v2.c:1650,12'
          Dst:             chunk_create
        - Src:             'sa/ikev2/task_manager_v2.c:1648,6'
          Dst:             send_notify_response
        - Src:             'sa/ikev2/task_manager_v2.c:1651,6'
          Dst:             incr_mid
        - Src:             'sa/ikev2/task_manager_v2.c:1658,15'
          Dst:             send_invalid_syntax
        - Src:             'sa/ikev2/task_manager_v2.c:1665,15'
          Dst:             send_invalid_syntax
    - functionName:    is_potential_mid_sync
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1808
      functionLinenumberEnd: 1811
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_retransmit
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1819
      functionLinenumberEnd: 1848
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          92
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - array_count
        - hash_message
        - memeq_const
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:1831,3'
          Dst:             array_count
        - Src:             'sa/ikev2/task_manager_v2.c:1833,8'
          Dst:             hash_message
        - Src:             'sa/ikev2/task_manager_v2.c:1838,7'
          Dst:             memeq_const
    - functionName:    process_message
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1852
      functionLinenumberEnd: 2045
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         83
      ICount:          734
      EdgeCount:       107
      CyclomaticComplexity: 26
      functionsReached:
        - delete_ike_sa_job_create
        - flush
        - handle_fragment
        - is_mid_sync
        - is_potential_mid_sync
        - is_retransmit
        - memcpy_noop
        - parse_message
        - process_request
        - process_response
        - reject_request
        - send_notify_response
        - send_packets
        - time_monotonic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/task_manager_v2.c:1868,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/task_manager_v2.c:1978,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:1868,11'
          Dst:             is_retransmit
        - Src:             'sa/ikev2/task_manager_v2.c:1874,12'
          Dst:             time_monotonic
        - Src:             'sa/ikev2/task_manager_v2.c:1876,5'
          Dst:             send_packets
        - Src:             'sa/ikev2/task_manager_v2.c:1880,21'
          Dst:             is_potential_mid_sync
        - Src:             'sa/ikev2/task_manager_v2.c:1891,14'
          Dst:             parse_message
        - Src:             'sa/ikev2/task_manager_v2.c:1893,7'
          Dst:             is_mid_sync
        - Src:             'sa/ikev2/task_manager_v2.c:1907,13'
          Dst:             parse_message
        - Src:             'sa/ikev2/task_manager_v2.c:1938,4'
          Dst:             send_notify_response
        - Src:             'sa/ikev2/task_manager_v2.c:1953,7'
          Dst:             reject_request
        - Src:             'sa/ikev2/task_manager_v2.c:1963,12'
          Dst:             handle_fragment
        - Src:             'sa/ikev2/task_manager_v2.c:1969,12'
          Dst:             time_monotonic
        - Src:             'sa/ikev2/task_manager_v2.c:1978,11'
          Dst:             process_request
        - Src:             'sa/ikev2/task_manager_v2.c:1982,12'
          Dst:             time_monotonic
        - Src:             'sa/ikev2/task_manager_v2.c:1984,5'
          Dst:             memcpy_noop
        - Src:             'sa/ikev2/task_manager_v2.c:1990,5'
          Dst:             flush
        - Src:             'sa/ikev2/task_manager_v2.c:2008,12'
          Dst:             handle_fragment
        - Src:             'sa/ikev2/task_manager_v2.c:2014,12'
          Dst:             time_monotonic
        - Src:             'sa/ikev2/task_manager_v2.c:2023,7'
          Dst:             process_response
        - Src:             'sa/ikev2/task_manager_v2.c:2025,4'
          Dst:             flush
        - Src:             'sa/ikev2/task_manager_v2.c:2029,10'
          Dst:             time_monotonic
        - Src:             'sa/ikev2/task_manager_v2.c:2038,17'
          Dst:             delete_ike_sa_job_create
    - functionName:    task_manager_v2_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/task_manager_v2.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2614
      functionLinenumberEnd: 2657
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          151
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create
        - retransmission_parse_default
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/task_manager_v2.c:2617,2'
          Dst:             array_create
        - Src:             'sa/ikev2/task_manager_v2.c:2617,2'
          Dst:             array_create
        - Src:             'sa/ikev2/task_manager_v2.c:2617,2'
          Dst:             array_create
        - Src:             'sa/ikev2/task_manager_v2.c:2655,2'
          Dst:             retransmission_parse_default
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1936
      functionLinenumberEnd: 1955
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - get_nonce
        - process_payloads
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_create.c:1937,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1940,11'
          Dst:             get_nonce
        - Src:             'sa/ikev2/tasks/child_create.c:1942,4'
          Dst:             get_nonce
        - Src:             'sa/ikev2/tasks/child_create.c:1952,2'
          Dst:             process_payloads
    - functionName:    get_nonce
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1417
      functionLinenumberEnd: 1456
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          146
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - handle_notify
        - process_ke_payload
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_create.c:1429,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1436,5'
          Dst:             process_ke_payload
        - Src:             'sa/ikev2/tasks/child_create.c:1449,5'
          Dst:             handle_notify
    - functionName:    process_ke_payload
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1307
      functionLinenumberEnd: 1354
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          220
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle_notify
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1176
      functionLinenumberEnd: 1237
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          207
      EdgeCount:       24
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create_clone
        - chunk_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_create.c:1179,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/child_create.c:1208,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1230,4'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:1231,26'
          Dst:             chunk_create_clone
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1926
      functionLinenumberEnd: 1931
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - process_payloads_multi_ke
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1929,3'
          Dst:             process_payloads_multi_ke
    - functionName:    process_payloads_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1908
      functionLinenumberEnd: 1922
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - process_ke_payload
        - process_link
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1914,3'
          Dst:             process_ke_payload
        - Src:             'sa/ikev2/tasks/child_create.c:1921,2'
          Dst:             process_link
    - functionName:    process_link
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1877
      functionLinenumberEnd: 1901
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          118
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create_clone
        - chunk_equals_const
        - chunk_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1887,4'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:1888,17'
          Dst:             chunk_create_clone
        - Src:             'sa/ikev2/tasks/child_create.c:1890,13'
          Dst:             chunk_equals_const
        - Src:             'sa/ikev2/tasks/child_create.c:1894,4'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:1899,3'
          Dst:             chunk_free
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_r_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2250
      functionLinenumberEnd: 2276
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - handle_child_sa_failure
        - key_exchange_done_and_install_r
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2254,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2260,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2268,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2271,7'
          Dst:             key_exchange_done_and_install_r
    - functionName:    handle_child_sa_failure
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1962
      functionLinenumberEnd: 1988
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          104
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - delete_ike_sa_job_create
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1979,4'
          Dst:             delete_ike_sa_job_create
    - functionName:    key_exchange_done_and_install_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2202
      functionLinenumberEnd: 2246
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          190
      EdgeCount:       32
      CyclomaticComplexity: 7
      functionsReached:
        - build_payloads
        - chunk_clear
        - chunk_create_clone
        - handle_child_sa_failure
        - install_child_sa
        - key_exchange_done
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_create.c:2224,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2205,6'
          Dst:             key_exchange_done
        - Src:             'sa/ikev2/tasks/child_create.c:2207,3'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/tasks/child_create.c:2212,16'
          Dst:             chunk_create_clone
        - Src:             'sa/ikev2/tasks/child_create.c:2215,7'
          Dst:             build_payloads
        - Src:             'sa/ikev2/tasks/child_create.c:2218,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2224,11'
          Dst:             install_child_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2231,5'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2237,5'
          Dst:             handle_child_sa_failure
    - functionName:    key_exchange_done
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2179
      functionLinenumberEnd: 2194
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - additional_key_exchange_required
        - array_insert_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2188,18'
          Dst:             additional_key_exchange_required
        - Src:             'sa/ikev2/tasks/child_create.c:2190,2'
          Dst:             array_insert_create
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    build_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1055
      functionLinenumberEnd: 1150
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          367
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached:
        - add_ke_payload
        - build_payloads_multi_ke
        - chunk_create
        - htonl
        - nonce_payload_create
        - sa_payload_create_from_proposal_v2
        - sa_payload_create_from_proposals_v2
        - ts_payload_create_from_traffic_selectors
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_create.c:1103,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1063,10'
          Dst:             build_payloads_multi_ke
        - Src:             'sa/ikev2/tasks/child_create.c:1068,16'
          Dst:             sa_payload_create_from_proposals_v2
        - Src:             'sa/ikev2/tasks/child_create.c:1072,16'
          Dst:             sa_payload_create_from_proposal_v2
        - Src:             'sa/ikev2/tasks/child_create.c:1079,19'
          Dst:             nonce_payload_create
        - Src:             'sa/ikev2/tasks/child_create.c:1089,7'
          Dst:             add_ke_payload
        - Src:             'sa/ikev2/tasks/child_create.c:1095,15'
          Dst:             ts_payload_create_from_traffic_selectors
        - Src:             'sa/ikev2/tasks/child_create.c:1098,15'
          Dst:             ts_payload_create_from_traffic_selectors
        - Src:             'sa/ikev2/tasks/child_create.c:1121,9'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/child_create.c:1143,10'
          Dst:             htonl
        - Src:             'sa/ikev2/tasks/child_create.c:1144,13'
          Dst:             chunk_create
    - functionName:    install_child_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 886
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         54
      ICount:          822
      EdgeCount:       72
      CyclomaticComplexity: 20
      functionsReached:
        - chunk_clear
        - schedule_inactivity_timeout
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:848,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/tasks/child_create.c:849,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/tasks/child_create.c:850,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/tasks/child_create.c:851,2'
          Dst:             chunk_clear
        - Src:             'sa/ikev2/tasks/child_create.c:884,2'
          Dst:             schedule_inactivity_timeout
    - functionName:    schedule_inactivity_timeout
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 460
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          85
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - inactivity_job_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:458,7'
          Dst:             inactivity_job_create
    - functionName:    build_payloads_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1039
      functionLinenumberEnd: 1049
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - add_ke_payload
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1040,7'
          Dst:             add_ke_payload
    - functionName:    add_ke_payload
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1011
      functionLinenumberEnd: 1032
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          70
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - array_get
        - ke_payload_create_from_key_exchange
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1019,12'
          Dst:             array_get
        - Src:             'sa/ikev2/tasks/child_create.c:1024,8'
          Dst:             ke_payload_create_from_key_exchange
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    additional_key_exchange_required
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1271
      functionLinenumberEnd: 1282
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ts_if_nat_transport
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1995
      functionLinenumberEnd: 2012
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_transport_nat_ts
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2004,10'
          Dst:             get_transport_nat_ts
    - functionName:    get_transport_nat_ts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          162
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:483,8'
          Dst:             linked_list_create
    - functionName:    check_ke_method_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1392
      functionLinenumberEnd: 1411
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - check_ke_method
        - chunk_create
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1395,7'
          Dst:             check_ke_method
        - Src:             'sa/ikev2/tasks/child_create.c:1400,9'
          Dst:             htons
        - Src:             'sa/ikev2/tasks/child_create.c:1402,8'
          Dst:             chunk_create
    - functionName:    check_ke_method
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1361
      functionLinenumberEnd: 1385
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          102
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select_child_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2019
      functionLinenumberEnd: 2056
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         40
      ICount:          276
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - get_ts_if_nat_transport
        - ike_sa_get_dynamic_hosts
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2028,9'
          Dst:             get_ts_if_nat_transport
        - Src:             'sa/ikev2/tasks/child_create.c:2029,9'
          Dst:             get_ts_if_nat_transport
        - Src:             'sa/ikev2/tasks/child_create.c:2031,11'
          Dst:             ike_sa_get_dynamic_hosts
        - Src:             'sa/ikev2/tasks/child_create.c:2032,11'
          Dst:             ike_sa_get_dynamic_hosts
    - functionName:    handle_childless
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2063
      functionLinenumberEnd: 2088
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2280
      functionLinenumberEnd: 2477
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         79
      ICount:          711
      EdgeCount:       98
      CyclomaticComplexity: 21
      functionsReached:
        - add_ipcomp_notify
        - allocate_spi
        - check_ke_method_r
        - child_sa_create
        - determine_key_exchanges
        - generate_nonce
        - get_nonce
        - handle_child_sa_failure
        - handle_childless
        - handle_per_resource
        - key_exchange_done_and_install_r
        - narrow_and_check_ts
        - select_child_cfg
        - select_label
        - select_proposal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_create.c:2285,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/child_create.c:2307,4'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/child_create.c:2369,4'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/child_create.c:2455,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2288,11'
          Dst:             get_nonce
        - Src:             'sa/ikev2/tasks/child_create.c:2290,9'
          Dst:             generate_nonce
        - Src:             'sa/ikev2/tasks/child_create.c:2307,12'
          Dst:             handle_childless
        - Src:             'sa/ikev2/tasks/child_create.c:2341,18'
          Dst:             select_child_cfg
        - Src:             'sa/ikev2/tasks/child_create.c:2357,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2377,6'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2387,7'
          Dst:             select_proposal
        - Src:             'sa/ikev2/tasks/child_create.c:2390,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2394,7'
          Dst:             check_ke_method_r
        - Src:             'sa/ikev2/tasks/child_create.c:2404,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2408,2'
          Dst:             determine_key_exchanges
        - Src:             'sa/ikev2/tasks/child_create.c:2410,7'
          Dst:             select_label
        - Src:             'sa/ikev2/tasks/child_create.c:2413,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2423,3'
          Dst:             handle_per_resource
        - Src:             'sa/ikev2/tasks/child_create.c:2429,19'
          Dst:             child_sa_create
        - Src:             'sa/ikev2/tasks/child_create.c:2434,7'
          Dst:             allocate_spi
        - Src:             'sa/ikev2/tasks/child_create.c:2437,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2446,4'
          Dst:             add_ipcomp_notify
        - Src:             'sa/ikev2/tasks/child_create.c:2455,10'
          Dst:             narrow_and_check_ts
        - Src:             'sa/ikev2/tasks/child_create.c:2461,4'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2466,4'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2470,7'
          Dst:             key_exchange_done_and_install_r
    - functionName:    generate_nonce
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 335
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 892
      functionLinenumberEnd: 926
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          159
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    determine_key_exchanges
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1243
      functionLinenumberEnd: 1265
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          107
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select_label
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2097
      functionLinenumberEnd: 2131
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          144
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle_per_resource
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2137
      functionLinenumberEnd: 2173
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          107
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - get_cpu
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2152,21'
          Dst:             get_cpu
    - functionName:    allocate_spi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          109
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_ipcomp_notify
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1157
      functionLinenumberEnd: 1170
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          123
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1163,8'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/child_create.c:1163,8'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/child_create.c:1163,8'
          Dst:             chunk_length
        - Src:             'sa/ikev2/tasks/child_create.c:1163,8'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/child_create.c:1163,8'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/child_create.c:1163,8'
          Dst:             chunk_create_cat
    - functionName:    narrow_and_check_ts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          303
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - check_mode
        - narrow_ts
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:628,11'
          Dst:             narrow_ts
        - Src:             'sa/ikev2/tasks/child_create.c:629,14'
          Dst:             narrow_ts
        - Src:             'sa/ikev2/tasks/child_create.c:633,11'
          Dst:             narrow_ts
        - Src:             'sa/ikev2/tasks/child_create.c:634,14'
          Dst:             narrow_ts
        - Src:             'sa/ikev2/tasks/child_create.c:673,8'
          Dst:             check_mode
        - Src:             'sa/ikev2/tasks/child_create.c:685,8'
          Dst:             check_mode
    - functionName:    narrow_ts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          129
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - child_cfg_select_ts
        - ensure_ts_lists
        - get_transport_nat_ts
        - ike_sa_get_dynamic_hosts
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:535,2'
          Dst:             ensure_ts_lists
        - Src:             'sa/ikev2/tasks/child_create.c:538,10'
          Dst:             ike_sa_get_dynamic_hosts
        - Src:             'sa/ikev2/tasks/child_create.c:543,9'
          Dst:             get_transport_nat_ts
        - Src:             'sa/ikev2/tasks/child_create.c:544,12'
          Dst:             child_cfg_select_ts
        - Src:             'sa/ikev2/tasks/child_create.c:549,12'
          Dst:             child_cfg_select_ts
    - functionName:    check_mode
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          188
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - ts_list_is_host
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_create.c:561,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:565,10'
          Dst:             ts_list_is_host
        - Src:             'sa/ikev2/tasks/child_create.c:566,7'
          Dst:             ts_list_is_host
        - Src:             'sa/ikev2/tasks/child_create.c:578,9'
          Dst:             ts_list_is_host
        - Src:             'sa/ikev2/tasks/child_create.c:579,6'
          Dst:             ts_list_is_host
    - functionName:    ts_list_is_host
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          83
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ensure_ts_lists
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - traffic_selector_list_create_from_list
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:516,17'
          Dst:             traffic_selector_list_create_from_list
        - Src:             'sa/ikev2/tasks/child_create.c:521,20'
          Dst:             traffic_selector_list_create_from_list
    - functionName:    get_cpu
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 958
      functionLinenumberEnd: 1002
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          174
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - get_system_cpus
        - hashtable_create
        - hashtable_equals_ptr
        - hashtable_hash_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:965,9'
          Dst:             hashtable_create
        - Src:             'sa/ikev2/tasks/child_create.c:965,9'
          Dst:             hashtable_hash_ptr
        - Src:             'sa/ikev2/tasks/child_create.c:965,9'
          Dst:             hashtable_equals_ptr
        - Src:             'sa/ikev2/tasks/child_create.c:992,9'
          Dst:             get_system_cpus
    - functionName:    get_system_cpus
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 933
      functionLinenumberEnd: 950
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sysconf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:941,9'
          Dst:             sysconf
    - functionName:    sysconf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2563
      functionLinenumberEnd: 2584
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          88
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - delete_failed_sa
        - handle_child_sa_failure
        - key_exchange_done_and_install_i
        - process_payloads_multi_ke
        - schedule_delayed_retry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2570,4'
          Dst:             schedule_delayed_retry
        - Src:             'sa/ikev2/tasks/child_create.c:2575,2'
          Dst:             process_payloads_multi_ke
        - Src:             'sa/ikev2/tasks/child_create.c:2579,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2580,10'
          Dst:             delete_failed_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2583,9'
          Dst:             key_exchange_done_and_install_i
    - functionName:    schedule_delayed_retry
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          180
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - child_create_create
        - random
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:289,28'
          Dst:             random
        - Src:             'sa/ikev2/tasks/child_create.c:291,9'
          Dst:             child_create_create
    - functionName:    delete_failed_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2524
      functionLinenumberEnd: 2535
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    key_exchange_done_and_install_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2543
      functionLinenumberEnd: 2559
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - delete_failed_sa
        - handle_child_sa_failure
        - install_child_sa
        - key_exchange_done
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2544,6'
          Dst:             key_exchange_done
        - Src:             'sa/ikev2/tasks/child_create.c:2546,7'
          Dst:             install_child_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2555,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2556,10'
          Dst:             delete_failed_sa
    - functionName:    build_i_delete
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2504
      functionLinenumberEnd: 2517
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          70
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - delete_payload_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2510,9'
          Dst:             delete_payload_create
    - functionName:    child_create_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3065
      functionLinenumberEnd: 3118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          299
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2588
      functionLinenumberEnd: 2810
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         92
      ICount:          701
      EdgeCount:       119
      CyclomaticComplexity: 29
      functionsReached:
        - check_ke_method
        - chunk_free
        - defer_child_sa
        - delete_failed_sa
        - determine_key_exchanges
        - get_nonce
        - handle_child_sa_failure
        - handle_per_resource
        - key_exchange_done_and_install_i
        - narrow_and_check_ts
        - process_link
        - process_payloads
        - raise_alerts
        - schedule_delayed_retry
        - select_label
        - select_proposal
        - untoh16
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_create.c:2593,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/child_create.c:2626,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2596,11'
          Dst:             get_nonce
        - Src:             'sa/ikev2/tasks/child_create.c:2598,4'
          Dst:             get_nonce
        - Src:             'sa/ikev2/tasks/child_create.c:2606,8'
          Dst:             defer_child_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2608,5'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:2640,6'
          Dst:             raise_alerts
        - Src:             'sa/ikev2/tasks/child_create.c:2641,6'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2651,7'
          Dst:             schedule_delayed_retry
        - Src:             'sa/ikev2/tasks/child_create.c:2671,13'
          Dst:             untoh16
        - Src:             'sa/ikev2/tasks/child_create.c:2678,7'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2713,2'
          Dst:             process_payloads
        - Src:             'sa/ikev2/tasks/child_create.c:2718,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2719,10'
          Dst:             delete_failed_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2722,7'
          Dst:             select_proposal
        - Src:             'sa/ikev2/tasks/child_create.c:2724,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2725,10'
          Dst:             delete_failed_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2739,10'
          Dst:             delete_failed_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2746,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2747,10'
          Dst:             delete_failed_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2759,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2760,10'
          Dst:             delete_failed_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2763,7'
          Dst:             check_ke_method
        - Src:             'sa/ikev2/tasks/child_create.c:2765,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2766,10'
          Dst:             delete_failed_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2771,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2772,10'
          Dst:             delete_failed_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2775,2'
          Dst:             determine_key_exchanges
        - Src:             'sa/ikev2/tasks/child_create.c:2777,7'
          Dst:             select_label
        - Src:             'sa/ikev2/tasks/child_create.c:2779,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2780,10'
          Dst:             delete_failed_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2783,6'
          Dst:             narrow_and_check_ts
        - Src:             'sa/ikev2/tasks/child_create.c:2785,3'
          Dst:             handle_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_create.c:2786,10'
          Dst:             delete_failed_sa
        - Src:             'sa/ikev2/tasks/child_create.c:2791,3'
          Dst:             handle_per_resource
        - Src:             'sa/ikev2/tasks/child_create.c:2796,6'
          Dst:             key_exchange_done_and_install_i
        - Src:             'sa/ikev2/tasks/child_create.c:2803,4'
          Dst:             process_link
    - functionName:    defer_child_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1473
      functionLinenumberEnd: 1498
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - generic_label_only
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1487,4'
          Dst:             generic_label_only
    - functionName:    raise_alerts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2483
      functionLinenumberEnd: 2500
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          80
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_create.c:2486,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    untoh16
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:162,9'
          Dst:             ntohs
    - functionName:    build_i_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1626
      functionLinenumberEnd: 1652
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          111
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - build_payloads_multi_ke
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1647,7'
          Dst:             build_payloads_multi_ke
    - functionName:    generic_label_only
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1463
      functionLinenumberEnd: 1465
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          58
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1713
      functionLinenumberEnd: 1871
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         68
      ICount:          618
      EdgeCount:       87
      CyclomaticComplexity: 21
      functionsReached:
        - add_ipcomp_notify
        - allocate_spi
        - build_payloads
        - check_for_duplicate
        - check_for_generic_label
        - child_sa_create
        - chunk_free
        - defer_child_sa
        - generate_nonce
        - generic_label_only
        - get_nonce
        - prepare_proposed_ts
        - update_and_check_proposals
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_create.c:1716,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/child_create.c:1729,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1719,11'
          Dst:             get_nonce
        - Src:             'sa/ikev2/tasks/child_create.c:1721,9'
          Dst:             generate_nonce
        - Src:             'sa/ikev2/tasks/child_create.c:1729,12'
          Dst:             defer_child_sa
        - Src:             'sa/ikev2/tasks/child_create.c:1736,6'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:1749,2'
          Dst:             prepare_proposed_ts
        - Src:             'sa/ikev2/tasks/child_create.c:1751,7'
          Dst:             generic_label_only
        - Src:             'sa/ikev2/tasks/child_create.c:1777,19'
          Dst:             child_sa_create
        - Src:             'sa/ikev2/tasks/child_create.c:1785,4'
          Dst:             check_for_generic_label
        - Src:             'sa/ikev2/tasks/child_create.c:1785,37'
          Dst:             check_for_duplicate
        - Src:             'sa/ikev2/tasks/child_create.c:1804,7'
          Dst:             allocate_spi
        - Src:             'sa/ikev2/tasks/child_create.c:1822,7'
          Dst:             update_and_check_proposals
        - Src:             'sa/ikev2/tasks/child_create.c:1844,3'
          Dst:             add_ipcomp_notify
        - Src:             'sa/ikev2/tasks/child_create.c:1858,7'
          Dst:             build_payloads
    - functionName:    prepare_proposed_ts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1658
      functionLinenumberEnd: 1709
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          250
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - child_cfg_select_ts
        - ensure_ts_lists
        - host_create_any
        - ike_sa_get_dynamic_hosts
        - linked_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1664,2'
          Dst:             ensure_ts_lists
        - Src:             'sa/ikev2/tasks/child_create.c:1666,9'
          Dst:             linked_list_create
        - Src:             'sa/ikev2/tasks/child_create.c:1675,10'
          Dst:             host_create_any
        - Src:             'sa/ikev2/tasks/child_create.c:1682,15'
          Dst:             child_cfg_select_ts
        - Src:             'sa/ikev2/tasks/child_create.c:1689,10'
          Dst:             ike_sa_get_dynamic_hosts
        - Src:             'sa/ikev2/tasks/child_create.c:1690,15'
          Dst:             child_cfg_select_ts
        - Src:             'sa/ikev2/tasks/child_create.c:1694,9'
          Dst:             ike_sa_get_dynamic_hosts
        - Src:             'sa/ikev2/tasks/child_create.c:1695,14'
          Dst:             child_cfg_select_ts
    - functionName:    check_for_generic_label
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1609
      functionLinenumberEnd: 1622
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - generic_label_only
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1610,6'
          Dst:             generic_label_only
    - functionName:    check_for_duplicate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1565
      functionLinenumberEnd: 1601
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          128
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - child_sa_equals
        - linked_list_create_from_enumerator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1573,4'
          Dst:             child_sa_equals
        - Src:             'sa/ikev2/tasks/child_create.c:1585,11'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/ikev2/tasks/child_create.c:1587,14'
          Dst:             linked_list_create_from_enumerator
    - functionName:    update_and_check_proposals
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          176
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - linked_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:409,21'
          Dst:             linked_list_create
    - functionName:    child_sa_equals
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1548
      functionLinenumberEnd: 1557
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          195
      EdgeCount:       25
      CyclomaticComplexity: 9
      functionsReached:
        - reqid_and_ts_equals
        - sec_labels_equal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1556,3'
          Dst:             sec_labels_equal
        - Src:             'sa/ikev2/tasks/child_create.c:1557,3'
          Dst:             reqid_and_ts_equals
    - functionName:    sec_labels_equal
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/selectors/sec_label.h'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reqid_and_ts_equals
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1508
      functionLinenumberEnd: 1539
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          120
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - child_sa_ts_lists_match
        - child_sa_ts_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1530,10'
          Dst:             child_sa_ts_match
        - Src:             'sa/ikev2/tasks/child_create.c:1534,10'
          Dst:             child_sa_ts_lists_match
    - functionName:    abort_
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2972
      functionLinenumberEnd: 2974
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_config
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2953
      functionLinenumberEnd: 2954
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_config
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2946
      functionLinenumberEnd: 2949
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_other_spi
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2940
      functionLinenumberEnd: 2941
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_child
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2934
      functionLinenumberEnd: 2935
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_lower_nonce
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2959
      functionLinenumberEnd: 2968
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_compare_prefix
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2960,6'
          Dst:             chunk_compare_prefix
    - functionName:    recreate_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2912
      functionLinenumberEnd: 2930
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - reuse_ts
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2928,2'
          Dst:             reuse_ts
        - Src:             'sa/ikev2/tasks/child_create.c:2929,2'
          Dst:             reuse_ts
    - functionName:    reuse_ts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2860
      functionLinenumberEnd: 2908
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          195
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ike_sa_get_dynamic_hosts
        - linked_list_create
        - traffic_selector_create_dynamic
        - traffic_selector_list_create_from_enumerator
        - traffic_selector_list_create_from_list
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2871,13'
          Dst:             traffic_selector_list_create_from_enumerator
        - Src:             'sa/ikev2/tasks/child_create.c:2879,9'
          Dst:             linked_list_create
        - Src:             'sa/ikev2/tasks/child_create.c:2880,10'
          Dst:             ike_sa_get_dynamic_hosts
        - Src:             'sa/ikev2/tasks/child_create.c:2889,14'
          Dst:             traffic_selector_create_dynamic
        - Src:             'sa/ikev2/tasks/child_create.c:2907,12'
          Dst:             traffic_selector_list_create_from_list
    - functionName:    use_per_cpu
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2850
      functionLinenumberEnd: 2853
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          42
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    use_label
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2843
      functionLinenumberEnd: 2846
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    use_if_ids
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2836
      functionLinenumberEnd: 2839
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    use_marks
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2829
      functionLinenumberEnd: 2832
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    use_reqid
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2814
      functionLinenumberEnd: 2825
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3027
      functionLinenumberEnd: 3056
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         54
      ICount:          432
      EdgeCount:       71
      CyclomaticComplexity: 19
      functionsReached:
        - chunk_free
        - clear_key_exchanges
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:3028,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:3029,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:3030,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:3031,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:3050,2'
          Dst:             clear_key_exchanges
    - functionName:    clear_key_exchanges
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1288
      functionLinenumberEnd: 1301
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          62
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - array_destroy_offset
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:1299,2'
          Dst:             array_destroy_offset
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2984
      functionLinenumberEnd: 3023
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          344
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - chunk_free
        - clear_key_exchanges
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_create.c:2985,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:2986,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:2987,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:2988,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/child_create.c:2998,2'
          Dst:             clear_key_exchanges
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_create.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2978
      functionLinenumberEnd: 2979
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 685
      functionLinenumberEnd: 688
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - log_children
        - process_payloads
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:686,2'
          Dst:             process_payloads
        - Src:             'sa/ikev2/tasks/child_delete.c:687,2'
          Dst:             log_children
    - functionName:    process_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 600
      functionLinenumberEnd: 674
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          260
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - possible_rekey_collision
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:629,18'
          Dst:             possible_rekey_collision
    - functionName:    log_children
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          115
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - linked_list_create_from_enumerator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:452,11'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/ikev2/tasks/child_delete.c:454,14'
          Dst:             linked_list_create_from_enumerator
    - functionName:    possible_rekey_collision
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_match_child
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          46
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - build_payloads
        - destroy_and_reestablish
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:694,2'
          Dst:             build_payloads
        - Src:             'sa/ikev2/tasks/child_delete.c:695,9'
          Dst:             destroy_and_reestablish
    - functionName:    build_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          147
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - delete_payload_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_delete.c:111,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:116,12'
          Dst:             delete_payload_create
        - Src:             'sa/ikev2/tasks/child_delete.c:126,11'
          Dst:             delete_payload_create
    - functionName:    destroy_and_reestablish
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         36
      ICount:          245
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - child_delete_destroy_rekeyed
        - conclude_rekeying
        - destroy_and_reestablish_internal
        - keep_while_rekeying
        - log_kept_sa
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:356,7'
          Dst:             keep_while_rekeying
        - Src:             'sa/ikev2/tasks/child_delete.c:379,4'
          Dst:             log_kept_sa
        - Src:             'sa/ikev2/tasks/child_delete.c:393,5'
          Dst:             conclude_rekeying
        - Src:             'sa/ikev2/tasks/child_delete.c:406,5'
          Dst:             log_kept_sa
        - Src:             'sa/ikev2/tasks/child_delete.c:410,5'
          Dst:             child_delete_destroy_rekeyed
        - Src:             'sa/ikev2/tasks/child_delete.c:422,5'
          Dst:             conclude_rekeying
        - Src:             'sa/ikev2/tasks/child_delete.c:424,13'
          Dst:             destroy_and_reestablish_internal
    - functionName:    keep_while_rekeying
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/child_delete.c:289,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    log_kept_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 329
      functionLinenumberEnd: 336
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conclude_rekeying
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - child_rekey_conclude_rekeying
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:151,2'
          Dst:             child_rekey_conclude_rekeying
    - functionName:    child_delete_destroy_rekeyed
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          127
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - delete_child_sa_job_create_id
        - destroy_and_reestablish_internal
        - time_monotonic
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:255,8'
          Dst:             time_monotonic
        - Src:             'sa/ikev2/tasks/child_delete.c:266,12'
          Dst:             delete_child_sa_job_create_id
        - Src:             'sa/ikev2/tasks/child_delete.c:280,2'
          Dst:             destroy_and_reestablish_internal
    - functionName:    destroy_and_reestablish_internal
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          189
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - queue_child_create
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:214,4'
          Dst:             queue_child_create
    - functionName:    queue_child_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          127
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - child_create_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:164,17'
          Dst:             child_create_create
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_and_reestablish
        - process_payloads
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:679,2'
          Dst:             process_payloads
        - Src:             'sa/ikev2/tasks/child_delete.c:680,9'
          Dst:             destroy_and_reestablish
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          233
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - build_payloads
        - conclude_rekeying
        - destroy_and_reestablish_internal
        - log_children
        - queue_child_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:521,4'
          Dst:             conclude_rekeying
        - Src:             'sa/ikev2/tasks/child_delete.c:534,4'
          Dst:             conclude_rekeying
        - Src:             'sa/ikev2/tasks/child_delete.c:543,3'
          Dst:             destroy_and_reestablish_internal
        - Src:             'sa/ikev2/tasks/child_delete.c:555,2'
          Dst:             log_children
        - Src:             'sa/ikev2/tasks/child_delete.c:556,2'
          Dst:             build_payloads
        - Src:             'sa/ikev2/tasks/child_delete.c:561,3'
          Dst:             queue_child_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 706
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:710,20'
          Dst:             linked_list_create
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 700
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    child_delete_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 725
      functionLinenumberEnd: 755
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          118
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - linked_list_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:728,2'
          Dst:             linked_list_create
    - functionName:    child_delete_destroy_and_force_reestablish
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_and_reestablish_internal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:238,9'
          Dst:             destroy_and_reestablish_internal
    - functionName:    child_delete_destroy_and_reestablish
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_and_reestablish_internal
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_delete.c:229,9'
          Dst:             destroy_and_reestablish_internal
    - functionName:    find_child
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          176
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create_clone
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:349,21'
          Dst:             chunk_create_clone
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_child
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:360,2'
          Dst:             find_child
    - functionName:    actively_rekeying
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          104
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 400
      functionLinenumberEnd: 493
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          550
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - actively_rekeying
        - notify_payload_create_from_protocol_and_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:412,12'
          Dst:             notify_payload_create_from_protocol_and_type
        - Src:             'sa/ikev2/tasks/child_rekey.c:426,11'
          Dst:             actively_rekeying
    - functionName:    process_i_delete
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i_delete
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_passive_rekey_task
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i_delete_replacement_recreate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - build_delete_recreate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:231,9'
          Dst:             build_delete_recreate
    - functionName:    build_delete_recreate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - build_delete_old_sa
        - child_delete_destroy_and_force_reestablish
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:221,3'
          Dst:             build_delete_old_sa
        - Src:             'sa/ikev2/tasks/child_rekey.c:224,2'
          Dst:             child_delete_destroy_and_force_reestablish
    - functionName:    build_delete_old_sa
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          68
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - delete_payload_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:184,8'
          Dst:             delete_payload_create
    - functionName:    build_i_delete_both_recreate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - build_delete_recreate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:237,9'
          Dst:             build_delete_recreate
    - functionName:    build_i_delete_old_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - build_delete_old_sa
        - child_delete_destroy_and_reestablish
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:207,2'
          Dst:             build_delete_old_sa
        - Src:             'sa/ikev2/tasks/child_rekey.c:208,2'
          Dst:             child_delete_destroy_and_reestablish
    - functionName:    build_i_delete_replacement
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_our_replacement_deleted
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 500
      functionLinenumberEnd: 524
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          87
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - array_count
        - array_get
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:515,18'
          Dst:             array_count
        - Src:             'sa/ikev2/tasks/child_rekey.c:517,3'
          Dst:             array_get
    - functionName:    lost_collision
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 555
      functionLinenumberEnd: 568
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          84
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_compare_prefix
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:567,9'
          Dst:             chunk_compare_prefix
    - functionName:    handle_collision
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 732
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          469
      EdgeCount:       81
      CyclomaticComplexity: 22
      functionsReached:
        - child_delete_destroy_rekeyed
        - is_our_replacement_deleted
        - lost_collision
        - remove_passive_rekey_task
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:582,6'
          Dst:             lost_collision
        - Src:             'sa/ikev2/tasks/child_rekey.c:619,5'
          Dst:             child_delete_destroy_rekeyed
        - Src:             'sa/ikev2/tasks/child_rekey.c:639,7'
          Dst:             is_our_replacement_deleted
        - Src:             'sa/ikev2/tasks/child_rekey.c:672,7'
          Dst:             is_our_replacement_deleted
        - Src:             'sa/ikev2/tasks/child_rekey.c:709,4'
          Dst:             child_delete_destroy_rekeyed
        - Src:             'sa/ikev2/tasks/child_rekey.c:728,3'
          Dst:             remove_passive_rekey_task
    - functionName:    handle_local_failure
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 906
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          123
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - child_delete_destroy_and_reestablish
        - child_delete_destroy_rekeyed
        - is_our_replacement_deleted
        - lost_collision
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:855,25'
          Dst:             lost_collision
        - Src:             'sa/ikev2/tasks/child_rekey.c:859,4'
          Dst:             child_delete_destroy_rekeyed
        - Src:             'sa/ikev2/tasks/child_rekey.c:869,6'
          Dst:             is_our_replacement_deleted
        - Src:             'sa/ikev2/tasks/child_rekey.c:877,4'
          Dst:             child_delete_destroy_and_reestablish
    - functionName:    ignore_child_sa_failure
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 843
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          94
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - child_delete_destroy_and_reestablish
        - child_delete_destroy_rekeyed
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:822,4'
          Dst:             child_delete_destroy_rekeyed
        - Src:             'sa/ikev2/tasks/child_rekey.c:839,3'
          Dst:             child_delete_destroy_and_reestablish
    - functionName:    ignore_child_sa_not_found
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          98
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - child_delete_destroy_and_reestablish
        - child_delete_destroy_rekeyed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:766,3'
          Dst:             child_delete_destroy_and_reestablish
        - Src:             'sa/ikev2/tasks/child_rekey.c:779,3'
          Dst:             child_delete_destroy_rekeyed
        - Src:             'sa/ikev2/tasks/child_rekey.c:794,2'
          Dst:             child_delete_destroy_rekeyed
        - Src:             'sa/ikev2/tasks/child_rekey.c:795,2'
          Dst:             child_delete_destroy_and_reestablish
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 1034
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          362
      EdgeCount:       56
      CyclomaticComplexity: 17
      functionsReached:
        - child_delete_create
        - child_delete_destroy_and_force_reestablish
        - child_delete_destroy_and_reestablish
        - child_delete_destroy_rekeyed
        - child_rekey_conclude_rekeying
        - handle_collision
        - handle_local_failure
        - ignore_child_sa_failure
        - ignore_child_sa_not_found
        - rekey_ike_sa_job_create
        - schedule_delayed_rekey
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:922,13'
          Dst:             rekey_ike_sa_job_create
        - Src:             'sa/ikev2/tasks/child_rekey.c:930,7'
          Dst:             ignore_child_sa_not_found
        - Src:             'sa/ikev2/tasks/child_rekey.c:934,10'
          Dst:             child_delete_destroy_and_force_reestablish
        - Src:             'sa/ikev2/tasks/child_rekey.c:944,11'
          Dst:             ignore_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_rekey.c:949,11'
          Dst:             handle_local_failure
        - Src:             'sa/ikev2/tasks/child_rekey.c:957,8'
          Dst:             handle_collision
        - Src:             'sa/ikev2/tasks/child_rekey.c:970,8'
          Dst:             ignore_child_sa_failure
        - Src:             'sa/ikev2/tasks/child_rekey.c:974,4'
          Dst:             schedule_delayed_rekey
        - Src:             'sa/ikev2/tasks/child_rekey.c:981,18'
          Dst:             handle_collision
        - Src:             'sa/ikev2/tasks/child_rekey.c:991,3'
          Dst:             child_delete_destroy_and_reestablish
        - Src:             'sa/ikev2/tasks/child_rekey.c:998,3'
          Dst:             child_rekey_conclude_rekeying
        - Src:             'sa/ikev2/tasks/child_rekey.c:1011,3'
          Dst:             child_delete_destroy_rekeyed
        - Src:             'sa/ikev2/tasks/child_rekey.c:1029,23'
          Dst:             child_delete_create
    - functionName:    schedule_delayed_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          79
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - random
        - rekey_child_sa_job_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:144,28'
          Dst:             random
        - Src:             'sa/ikev2/tasks/child_rekey.c:145,16'
          Dst:             rekey_child_sa_job_create
    - functionName:    child_rekey_conclude_rekeying
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1040
      functionLinenumberEnd: 1079
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          103
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - linked_list_create_from_enumerator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:1052,10'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/ikev2/tasks/child_rekey.c:1054,13'
          Dst:             linked_list_create_from_enumerator
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          489
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - child_create_create
        - notify_payload_create_from_protocol_and_type
        - schedule_delayed_rekey
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:275,24'
          Dst:             child_create_create
        - Src:             'sa/ikev2/tasks/child_rekey.c:302,3'
          Dst:             schedule_delayed_rekey
        - Src:             'sa/ikev2/tasks/child_rekey.c:309,12'
          Dst:             notify_payload_create_from_protocol_and_type
    - functionName:    collide
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1133
      functionLinenumberEnd: 1172
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle_delete
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1089
      functionLinenumberEnd: 1129
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          104
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - array_insert_create_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:1102,3'
          Dst:             array_insert_create_value
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1200
      functionLinenumberEnd: 1216
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_destroy
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:1213,2'
          Dst:             array_destroy
        - Src:             'sa/ikev2/tasks/child_rekey.c:1214,2'
          Dst:             chunk_free
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1176
      functionLinenumberEnd: 1196
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          119
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:1190,2'
          Dst:             array_destroy
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1083
      functionLinenumberEnd: 1084
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    child_rekey_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/child_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1223
      functionLinenumberEnd: 1257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          137
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - child_create_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/child_rekey.c:1253,24'
          Dst:             child_create_create
    - functionName:    send_auth_failed_informational
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1426
      functionLinenumberEnd: 1446
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          145
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - message_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:1431,12'
          Dst:             message_create
    - functionName:    require_strict
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1452
      functionLinenumberEnd: 1477
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          109
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:1461,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1481
      functionLinenumberEnd: 1754
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         147
      ICount:          1030
      EdgeCount:       185
      CyclomaticComplexity: 40
      functionsReached:
        - apply_auth_cfg
        - apply_ppk
        - authenticator_create_verifier
        - clear_ppk
        - collect_int_auth_data
        - collect_other_init_data
        - do_another_auth
        - get_reserved_id_bytes
        - is_first_round
        - multiple_auth_enabled
        - redirect_data_parse
        - require_strict
        - send_auth_failed_informational
        - update_cfg_candidates
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:1487,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:1512,4'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:1622,4'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:1665,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:1491,5'
          Dst:             multiple_auth_enabled
        - Src:             'sa/ikev2/tasks/ike_auth.c:1495,11'
          Dst:             collect_other_init_data
        - Src:             'sa/ikev2/tasks/ike_auth.c:1497,11'
          Dst:             collect_int_auth_data
        - Src:             'sa/ikev2/tasks/ike_auth.c:1537,26'
          Dst:             redirect_data_parse
        - Src:             'sa/ikev2/tasks/ike_auth.c:1586,4'
          Dst:             get_reserved_id_bytes
        - Src:             'sa/ikev2/tasks/ike_auth.c:1594,24'
          Dst:             authenticator_create_verifier
        - Src:             'sa/ikev2/tasks/ike_auth.c:1617,27'
          Dst:             is_first_round
        - Src:             'sa/ikev2/tasks/ike_auth.c:1643,4'
          Dst:             apply_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:1647,6'
          Dst:             require_strict
        - Src:             'sa/ikev2/tasks/ike_auth.c:1649,8'
          Dst:             update_cfg_candidates
        - Src:             'sa/ikev2/tasks/ike_auth.c:1668,5'
          Dst:             apply_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:1671,6'
          Dst:             apply_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:1675,29'
          Dst:             do_another_auth
        - Src:             'sa/ikev2/tasks/ike_auth.c:1691,9'
          Dst:             apply_ppk
        - Src:             'sa/ikev2/tasks/ike_auth.c:1706,3'
          Dst:             clear_ppk
        - Src:             'sa/ikev2/tasks/ike_auth.c:1727,7'
          Dst:             update_cfg_candidates
        - Src:             'sa/ikev2/tasks/ike_auth.c:1748,2'
          Dst:             send_auth_failed_informational
        - Src:             'sa/ikev2/tasks/ike_auth.c:1752,2'
          Dst:             send_auth_failed_informational
    - functionName:    multiple_auth_enabled
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    collect_other_init_data
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    collect_int_auth_data
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          231
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - chunk_free
        - memcpy_noop
        - memset_noop
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:231,3'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_auth.c:234,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_auth.c:238,20'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/ike_auth.c:239,22'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/ike_auth.c:240,3'
          Dst:             memset_noop
        - Src:             'sa/ikev2/tasks/ike_auth.c:245,22'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/ike_auth.c:249,2'
          Dst:             memcpy_noop
        - Src:             'sa/ikev2/tasks/ike_auth.c:250,2'
          Dst:             chunk_free
    - functionName:    get_reserved_id_bytes
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - payload_get_field
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:276,10'
          Dst:             payload_get_field
    - functionName:    is_first_round
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          83
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    apply_auth_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - auth_cfg_create
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:325,8'
          Dst:             auth_cfg_create
    - functionName:    update_cfg_candidates
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          246
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    do_another_auth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          139
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    apply_ppk
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1176
      functionLinenumberEnd: 1191
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - clear_ppk
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:1189,2'
          Dst:             clear_ppk
    - functionName:    clear_ppk
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1166
      functionLinenumberEnd: 1170
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_clear
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:1169,2'
          Dst:             chunk_clear
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    post_build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 973
      functionLinenumberEnd: 983
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - collect_int_auth_data
        - collect_my_init_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:974,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:977,11'
          Dst:             collect_my_init_data
        - Src:             'sa/ikev2/tasks/ike_auth.c:979,11'
          Dst:             collect_int_auth_data
    - functionName:    collect_my_init_data
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_ppk_identity
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          100
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:668,9'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/ike_auth.c:668,9'
          Dst:             chunk_length
        - Src:             'sa/ikev2/tasks/ike_auth.c:668,9'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/ike_auth.c:668,9'
          Dst:             chunk_create_cat
    - functionName:    get_ppk_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 702
      functionLinenumberEnd: 726
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          95
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - get_ppk
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:725,9'
          Dst:             get_ppk
    - functionName:    get_ppk
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 676
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          121
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create_clone
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:691,14'
          Dst:             chunk_create_clone
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 809
      functionLinenumberEnd: 969
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         84
      ICount:          809
      EdgeCount:       110
      CyclomaticComplexity: 28
      functionsReached:
        - add_ppk_identity
        - apply_auth_cfg
        - authenticator_create_builder
        - determine_default_id
        - do_another_auth
        - get_auth_cfg
        - get_ppk_i
        - get_reserved_id_bytes
        - id_payload_create_from_identification
        - set_ike_auth_mid
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:813,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:936,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:845,8'
          Dst:             get_ppk_i
        - Src:             'sa/ikev2/tasks/ike_auth.c:851,3'
          Dst:             set_ike_auth_mid
        - Src:             'sa/ikev2/tasks/ike_auth.c:870,9'
          Dst:             get_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:878,18'
          Dst:             id_payload_create_from_identification
        - Src:             'sa/ikev2/tasks/ike_auth.c:885,19'
          Dst:             get_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:891,10'
          Dst:             determine_default_id
        - Src:             'sa/ikev2/tasks/ike_auth.c:895,16'
          Dst:             id_payload_create_from_identification
        - Src:             'sa/ikev2/tasks/ike_auth.c:896,3'
          Dst:             get_reserved_id_bytes
        - Src:             'sa/ikev2/tasks/ike_auth.c:913,19'
          Dst:             authenticator_create_builder
        - Src:             'sa/ikev2/tasks/ike_auth.c:939,4'
          Dst:             apply_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:953,3'
          Dst:             add_ppk_identity
        - Src:             'sa/ikev2/tasks/ike_auth.c:957,6'
          Dst:             do_another_auth
    - functionName:    set_ike_auth_mid
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htoun32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:261,3'
          Dst:             htoun32
    - functionName:    get_auth_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          124
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    determine_default_id
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 777
      functionLinenumberEnd: 804
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          123
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - identification_create_from_sockaddr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:801,8'
          Dst:             identification_create_from_sockaddr
    - functionName:    htoun32
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:132,9'
          Dst:             htonl
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1795
      functionLinenumberEnd: 1808
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          181
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_free
        - clear_ppk
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:1796,2'
          Dst:             clear_ppk
        - Src:             'sa/ikev2/tasks/ike_auth.c:1797,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_auth.c:1798,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_auth.c:1799,2'
          Dst:             chunk_free
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1764
      functionLinenumberEnd: 1791
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          225
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_free
        - clear_ppk
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:1765,2'
          Dst:             clear_ppk
        - Src:             'sa/ikev2/tasks/ike_auth.c:1766,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_auth.c:1767,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_auth.c:1768,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_auth.c:1789,21'
          Dst:             linked_list_create
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1758
      functionLinenumberEnd: 1759
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_ppk_identity
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 639
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_skip
        - identification_create_from_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:647,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:650,11'
          Dst:             chunk_skip
        - Src:             'sa/ikev2/tasks/ike_auth.c:655,8'
          Dst:             identification_create_from_data
    - functionName:    find_alternative_eap_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 627
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          142
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - copy_eap_cfg
        - find_eap_cfg
        - get_auth_cfg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:596,9'
          Dst:             get_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:618,8'
          Dst:             find_eap_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:625,2'
          Dst:             copy_eap_cfg
    - functionName:    find_eap_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - get_auth_cfg
        - is_eap_cfg
        - update_cfg_candidates
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:531,8'
          Dst:             is_eap_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:537,8'
          Dst:             update_cfg_candidates
        - Src:             'sa/ikev2/tasks/ike_auth.c:541,11'
          Dst:             get_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:543,10'
          Dst:             is_eap_cfg
    - functionName:    copy_eap_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          121
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_eap_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ppk_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 733
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          161
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - get_ppk
        - parse_ppk_identity
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:749,18'
          Dst:             parse_ppk_identity
        - Src:             'sa/ikev2/tasks/ike_auth.c:767,11'
          Dst:             get_ppk
    - functionName:    load_cfg_candidates
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          242
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 987
      functionLinenumberEnd: 1160
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         89
      ICount:          689
      EdgeCount:       116
      CyclomaticComplexity: 29
      functionsReached:
        - apply_auth_cfg
        - authenticator_create_verifier
        - collect_int_auth_data
        - collect_other_init_data
        - copy_eap_cfg
        - find_alternative_eap_cfg
        - find_eap_cfg
        - get_auth_cfg
        - get_ppk_r
        - get_reserved_id_bytes
        - identification_create_from_encoding
        - is_eap_cfg
        - is_first_round
        - load_cfg_candidates
        - set_ike_auth_mid
        - update_cfg_candidates
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:992,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:1110,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:995,11'
          Dst:             collect_other_init_data
        - Src:             'sa/ikev2/tasks/ike_auth.c:997,11'
          Dst:             collect_int_auth_data
        - Src:             'sa/ikev2/tasks/ike_auth.c:1014,9'
          Dst:             identification_create_from_encoding
        - Src:             'sa/ikev2/tasks/ike_auth.c:1040,3'
          Dst:             set_ike_auth_mid
        - Src:             'sa/ikev2/tasks/ike_auth.c:1054,3'
          Dst:             get_reserved_id_bytes
        - Src:             'sa/ikev2/tasks/ike_auth.c:1061,9'
          Dst:             load_cfg_candidates
        - Src:             'sa/ikev2/tasks/ike_auth.c:1070,11'
          Dst:             get_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:1071,9'
          Dst:             is_eap_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:1071,30'
          Dst:             find_eap_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:1076,4'
          Dst:             copy_eap_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:1080,22'
          Dst:             authenticator_create_verifier
        - Src:             'sa/ikev2/tasks/ike_auth.c:1096,3'
          Dst:             is_first_round
        - Src:             'sa/ikev2/tasks/ike_auth.c:1098,8'
          Dst:             get_ppk_r
        - Src:             'sa/ikev2/tasks/ike_auth.c:1124,8'
          Dst:             find_alternative_eap_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:1142,2'
          Dst:             apply_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:1144,7'
          Dst:             update_cfg_candidates
        - Src:             'sa/ikev2/tasks/ike_auth.c:1153,8'
          Dst:             update_cfg_candidates
    - functionName:    post_build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1409
      functionLinenumberEnd: 1419
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - collect_int_auth_data
        - collect_my_init_data
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:1410,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:1413,11'
          Dst:             collect_my_init_data
        - Src:             'sa/ikev2/tasks/ike_auth.c:1415,11'
          Dst:             collect_int_auth_data
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1195
      functionLinenumberEnd: 1405
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         97
      ICount:          890
      EdgeCount:       124
      CyclomaticComplexity: 29
      functionsReached:
        - apply_auth_cfg
        - apply_ppk
        - authenticator_create_builder
        - chunk_free
        - delete_ike_sa_job_create
        - determine_default_id
        - do_another_auth
        - get_auth_cfg
        - get_reserved_id_bytes
        - id_payload_create_from_identification
        - multiple_auth_enabled
        - redirect_data_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:1199,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:1297,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/ike_auth.c:1319,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:1202,8'
          Dst:             multiple_auth_enabled
        - Src:             'sa/ikev2/tasks/ike_auth.c:1227,19'
          Dst:             get_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:1237,14'
          Dst:             determine_default_id
        - Src:             'sa/ikev2/tasks/ike_auth.c:1252,16'
          Dst:             id_payload_create_from_identification
        - Src:             'sa/ikev2/tasks/ike_auth.c:1253,3'
          Dst:             get_reserved_id_bytes
        - Src:             'sa/ikev2/tasks/ike_auth.c:1279,20'
          Dst:             authenticator_create_builder
        - Src:             'sa/ikev2/tasks/ike_auth.c:1322,5'
          Dst:             apply_auth_cfg
        - Src:             'sa/ikev2/tasks/ike_auth.c:1337,8'
          Dst:             apply_ppk
        - Src:             'sa/ikev2/tasks/ike_auth.c:1344,6'
          Dst:             do_another_auth
        - Src:             'sa/ikev2/tasks/ike_auth.c:1379,10'
          Dst:             redirect_data_create
        - Src:             'sa/ikev2/tasks/ike_auth.c:1382,3'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_auth.c:1386,9'
          Dst:             delete_ike_sa_job_create
    - functionName:    ike_auth_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1814
      functionLinenumberEnd: 1840
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          138
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth.c:1817,2'
          Dst:             linked_list_create
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - final_auth
        - process_certreqs
        - process_certs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:601,3'
          Dst:             process_certreqs
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:602,3'
          Dst:             process_certs
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:603,7'
          Dst:             final_auth
    - functionName:    process_certreqs
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          87
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - process_certreq
        - process_notify
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_cert_pre.c:179,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:182,5'
          Dst:             process_certreq
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:185,5'
          Dst:             process_notify
    - functionName:    process_certs
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          183
      EdgeCount:       31
      CyclomaticComplexity: 4
      functionsReached:
        - process_ac
        - process_crl
        - process_ocsp
        - process_x509
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_cert_pre.c:373,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:384,6'
          Dst:             process_x509
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:387,6'
          Dst:             process_crl
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:390,6'
          Dst:             process_ocsp
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:394,6'
          Dst:             process_ac
    - functionName:    final_auth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 582
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_x509
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          116
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - strdup
        - try_get_cert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:243,9'
          Dst:             try_get_cert
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:271,9'
          Dst:             strdup
    - functionName:    process_crl
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_ocsp
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_ac
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    try_get_cert
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          95
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - identification_create_from_encoding
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_cert_pre.c:204,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:220,9'
          Dst:             identification_create_from_encoding
    - functionName:    process_certreq
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          255
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - identification_create_from_encoding
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:77,9'
          Dst:             identification_create_from_encoding
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:124,8'
          Dst:             identification_create_from_encoding
    - functionName:    process_notify
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_cert_pre.c:155,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - build_certreqs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:616,3'
          Dst:             build_certreqs
    - functionName:    build_certreqs
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          257
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - add_certreq
        - add_certreq_ocsp
        - add_certreqs
        - certreq_payload_create_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:529,5'
          Dst:             add_certreqs
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:541,5'
          Dst:             add_certreq
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:562,9'
          Dst:             certreq_payload_create_type
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:568,4'
          Dst:             add_certreq_ocsp
    - functionName:    add_certreqs
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 457
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - add_certreq
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_cert_pre.c:465,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:468,5'
          Dst:             add_certreq
    - functionName:    add_certreq
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          116
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - certreq_payload_create_type
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_cert_pre.c:418,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:437,12'
          Dst:             certreq_payload_create_type
    - functionName:    add_certreq_ocsp
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          115
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 623
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - final_auth
        - process_certreqs
        - process_certs
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_cert_pre.c:624,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:627,4'
          Dst:             process_certreqs
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:630,4'
          Dst:             process_certs
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:631,8'
          Dst:             final_auth
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 587
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - build_certreqs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_pre.c:590,3'
          Dst:             build_certreqs
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 657
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 644
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_cert_pre_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_pre.c'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          96
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 350
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - build_certs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:353,3'
          Dst:             build_certs
    - functionName:    build_certs
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          227
      EdgeCount:       39
      CyclomaticComplexity: 7
      functionsReached:
        - add_attribute_certs
        - add_cert_ocsp
        - add_im_certs
        - add_subject_cert
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_cert_post.c:294,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/ike_cert_post.c:314,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:306,8'
          Dst:             add_subject_cert
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:308,5'
          Dst:             add_im_certs
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:309,5'
          Dst:             add_attribute_certs
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:326,5'
          Dst:             add_cert_ocsp
    - functionName:    add_subject_cert
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          62
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - build_cert_payload
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:136,12'
          Dst:             build_cert_payload
    - functionName:    add_im_certs
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - build_cert_payload
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:162,14'
          Dst:             build_cert_payload
    - functionName:    add_attribute_certs
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          189
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - cert_payload_create_from_cert
        - identification_create_from_encoding
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:193,12'
          Dst:             identification_create_from_encoding
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:204,15'
          Dst:             cert_payload_create_from_cert
    - functionName:    add_cert_ocsp
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          124
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - build_cert_ocsp_payload
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:261,14'
          Dst:             build_cert_ocsp_payload
    - functionName:    build_cert_ocsp_payload
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cert_payload_create_from_cert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:234,12'
          Dst:             cert_payload_create_from_cert
    - functionName:    build_cert_payload
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          97
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - build_hash_url_payload
        - cert_payload_create_from_cert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:108,10'
          Dst:             cert_payload_create_from_cert
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:114,4'
          Dst:             build_hash_url_payload
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:116,13'
          Dst:             cert_payload_create_from_cert
    - functionName:    build_hash_url_payload
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          142
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - cert_payload_create_from_hash_and_url
        - chunk_free
        - chunk_to_hex
        - strcpy
        - strlen
        - strncat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:77,3'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:80,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:83,15'
          Dst:             strlen
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:84,2'
          Dst:             strcpy
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:85,13'
          Dst:             chunk_to_hex
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:86,2'
          Dst:             strncat
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:90,13'
          Dst:             cert_payload_create_from_hash_and_url
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:91,2'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strncat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - build_certs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_cert_post.c:337,3'
          Dst:             build_certs
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_cert_post_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_cert_post.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - process_payloads
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_config.c:339,3'
          Dst:             process_payloads
    - functionName:    process_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          122
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - process_attribute
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_config.c:216,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_config.c:226,7'
          Dst:             process_attribute
    - functionName:    process_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          179
      EdgeCount:       34
      CyclomaticComplexity: 7
      functionsReached:
        - handle_attribute
        - host_create_any
        - host_create_from_chunk
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_config.c:152,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_config.c:161,5'
          Dst:             handle_attribute
        - Src:             'sa/ikev2/tasks/ike_config.c:168,10'
          Dst:             host_create_any
        - Src:             'sa/ikev2/tasks/ike_config.c:177,10'
          Dst:             host_create_from_chunk
        - Src:             'sa/ikev2/tasks/ike_config.c:194,5'
          Dst:             handle_attribute
    - functionName:    handle_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          167
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          462
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - build_vip
        - configuration_attribute_create_chunk
        - cp_payload_create_type
        - linked_list_create
        - linked_list_create_from_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_config.c:367,10'
          Dst:             linked_list_create
        - Src:             'sa/ikev2/tasks/ike_config.c:368,11'
          Dst:             linked_list_create_from_enumerator
        - Src:             'sa/ikev2/tasks/ike_config.c:389,11'
          Dst:             cp_payload_create_type
        - Src:             'sa/ikev2/tasks/ike_config.c:391,27'
          Dst:             build_vip
        - Src:             'sa/ikev2/tasks/ike_config.c:433,10'
          Dst:             cp_payload_create_type
        - Src:             'sa/ikev2/tasks/ike_config.c:438,5'
          Dst:             configuration_attribute_create_chunk
    - functionName:    build_vip
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          154
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - configuration_attribute_create_chunk
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_config.c:101,13'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/ike_config.c:104,12'
          Dst:             chunk_length
        - Src:             'sa/ikev2/tasks/ike_config.c:104,12'
          Dst:             chunk_create_cat
        - Src:             'sa/ikev2/tasks/ike_config.c:107,9'
          Dst:             configuration_attribute_create_chunk
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          126
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - process_payloads
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_config.c:462,3'
          Dst:             process_payloads
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          328
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - build_vip
        - configuration_attribute_create_chunk
        - cp_payload_create_type
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_config.c:259,10'
          Dst:             linked_list_create
        - Src:             'sa/ikev2/tasks/ike_config.c:283,9'
          Dst:             cp_payload_create_type
        - Src:             'sa/ikev2/tasks/ike_config.c:287,27'
          Dst:             build_vip
        - Src:             'sa/ikev2/tasks/ike_config.c:303,9'
          Dst:             configuration_attribute_create_chunk
        - Src:             'sa/ikev2/tasks/ike_config.c:307,10'
          Dst:             cp_payload_create_type
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 501
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_config.c:493,15'
          Dst:             linked_list_create
        - Src:             'sa/ikev2/tasks/ike_config.c:495,20'
          Dst:             linked_list_create
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_config_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 539
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          102
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_config.c:514,2'
          Dst:             linked_list_create
        - Src:             'sa/ikev2/tasks/ike_config.c:514,2'
          Dst:             linked_list_create
    - functionName:    after_rekey_collision
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          92
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          159
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - after_rekey_collision
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_delete.c:144,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_delete.c:151,8'
          Dst:             after_rekey_collision
    - functionName:    is_reauthenticating
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          92
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - is_reauthenticating
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_delete.c:218,6'
          Dst:             is_reauthenticating
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - delete_payload_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_delete.c:65,19'
          Dst:             delete_payload_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_delete_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_delete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          96
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_dpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_dpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_dpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_dpd_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_dpd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_establish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_establish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - establish
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_establish.c:73,3'
          Dst:             establish
    - functionName:    establish
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_establish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_establish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - establish
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_establish.c:85,3'
          Dst:             establish
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_establish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_establish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_establish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_establish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_establish_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_establish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          87
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 958
      functionLinenumberEnd: 985
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - generate_nonce
        - process_payloads
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:964,7'
          Dst:             generate_nonce
        - Src:             'sa/ikev2/tasks/ike_init.c:982,2'
          Dst:             process_payloads
    - functionName:    generate_nonce
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 654
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         54
      ICount:          423
      EdgeCount:       64
      CyclomaticComplexity: 12
      functionsReached:
        - determine_key_exchanges
        - handle_supported_hash_algorithms
        - process_ke_payload
        - process_sa_payload
        - redirect_data_parse
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_init.c:663,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/tasks/ike_init.c:688,5'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:667,5'
          Dst:             process_sa_payload
        - Src:             'sa/ikev2/tasks/ike_init.c:697,8'
          Dst:             handle_supported_hash_algorithms
        - Src:             'sa/ikev2/tasks/ike_init.c:713,17'
          Dst:             redirect_data_parse
        - Src:             'sa/ikev2/tasks/ike_init.c:776,3'
          Dst:             determine_key_exchanges
        - Src:             'sa/ikev2/tasks/ike_init.c:779,4'
          Dst:             process_ke_payload
    - functionName:    process_sa_payload
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 555
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          296
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle_supported_hash_algorithms
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          175
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - bio_reader_create
        - hasher_algorithm_for_ikev2
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:277,11'
          Dst:             bio_reader_create
        - Src:             'sa/ikev2/tasks/ike_init.c:280,7'
          Dst:             hasher_algorithm_for_ikev2
        - Src:             'sa/ikev2/tasks/ike_init.c:286,14'
          Dst:             snprintf
    - functionName:    determine_key_exchanges
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 561
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          101
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_ke_payload
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 648
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          195
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 953
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - exchange_type_multi_ke
        - process_payloads_multi_ke
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:949,45'
          Dst:             exchange_type_multi_ke
        - Src:             'sa/ikev2/tasks/ike_init.c:951,3'
          Dst:             process_payloads_multi_ke
    - functionName:    exchange_type_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_payloads_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 931
      functionLinenumberEnd: 944
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - process_ke_payload
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:937,3'
          Dst:             process_ke_payload
    - functionName:    build_r_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1080
      functionLinenumberEnd: 1109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          108
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - build_payloads_multi_ke
        - derive_keys
        - key_exchange_done
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:1091,7'
          Dst:             build_payloads_multi_ke
        - Src:             'sa/ikev2/tasks/ike_init.c:1096,6'
          Dst:             key_exchange_done
        - Src:             'sa/ikev2/tasks/ike_init.c:1099,7'
          Dst:             derive_keys
    - functionName:    build_payloads_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 789
      functionLinenumberEnd: 800
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ke_payload_create_from_key_exchange
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:792,7'
          Dst:             ke_payload_create_from_key_exchange
    - functionName:    key_exchange_done
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1065
      functionLinenumberEnd: 1075
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - additional_key_exchange_required
        - array_insert_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:1069,3'
          Dst:             array_insert_create
        - Src:             'sa/ikev2/tasks/ike_init.c:1075,9'
          Dst:             additional_key_exchange_required
    - functionName:    derive_keys
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1034
      functionLinenumberEnd: 1059
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          116
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - additional_key_exchange_required
        - derive_keys_internal
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:1044,13'
          Dst:             derive_keys_internal
        - Src:             'sa/ikev2/tasks/ike_init.c:1048,13'
          Dst:             derive_keys_internal
        - Src:             'sa/ikev2/tasks/ike_init.c:1058,9'
          Dst:             additional_key_exchange_required
    - functionName:    derive_keys_internal
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 992
      functionLinenumberEnd: 1029
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          174
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_destroy_offset
        - array_insert_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:1010,3'
          Dst:             array_insert_create
        - Src:             'sa/ikev2/tasks/ike_init.c:1027,3'
          Dst:             array_destroy_offset
    - functionName:    additional_key_exchange_required
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 585
      functionLinenumberEnd: 596
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1113
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         45
      ICount:          375
      EdgeCount:       62
      CyclomaticComplexity: 19
      functionsReached:
        - build_payloads
        - chunk_create
        - chunk_free
        - derive_keys
        - htons
        - key_exchange_done
        - redirect_data_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:1134,10'
          Dst:             redirect_data_create
        - Src:             'sa/ikev2/tasks/ike_init.c:1137,3'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_init.c:1155,12'
          Dst:             htons
        - Src:             'sa/ikev2/tasks/ike_init.c:1157,9'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/ike_init.c:1174,7'
          Dst:             build_payloads
        - Src:             'sa/ikev2/tasks/ike_init.c:1180,6'
          Dst:             key_exchange_done
        - Src:             'sa/ikev2/tasks/ike_init.c:1197,7'
          Dst:             derive_keys
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         60
      ICount:          569
      EdgeCount:       81
      CyclomaticComplexity: 23
      functionsReached:
        - chunk_free
        - identification_create_from_sockaddr
        - initiator_or_extension
        - ke_payload_create_from_key_exchange
        - linked_list_create
        - nonce_payload_create
        - proposal_has_additional_ke
        - redirect_data_create
        - sa_payload_create_from_proposal_v2
        - sa_payload_create_from_proposals_v2
        - send_supported_hash_algorithms
        - send_use_ppk
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:371,22'
          Dst:             linked_list_create
        - Src:             'sa/ikev2/tasks/ike_init.c:388,8'
          Dst:             proposal_has_additional_ke
        - Src:             'sa/ikev2/tasks/ike_init.c:400,16'
          Dst:             sa_payload_create_from_proposals_v2
        - Src:             'sa/ikev2/tasks/ike_init.c:410,16'
          Dst:             sa_payload_create_from_proposal_v2
        - Src:             'sa/ikev2/tasks/ike_init.c:411,19'
          Dst:             proposal_has_additional_ke
        - Src:             'sa/ikev2/tasks/ike_init.c:415,15'
          Dst:             ke_payload_create_from_key_exchange
        - Src:             'sa/ikev2/tasks/ike_init.c:424,18'
          Dst:             nonce_payload_create
        - Src:             'sa/ikev2/tasks/ike_init.c:435,3'
          Dst:             initiator_or_extension
        - Src:             'sa/ikev2/tasks/ike_init.c:442,3'
          Dst:             initiator_or_extension
        - Src:             'sa/ikev2/tasks/ike_init.c:444,3'
          Dst:             send_supported_hash_algorithms
        - Src:             'sa/ikev2/tasks/ike_init.c:456,14'
          Dst:             identification_create_from_sockaddr
        - Src:             'sa/ikev2/tasks/ike_init.c:458,11'
          Dst:             redirect_data_create
        - Src:             'sa/ikev2/tasks/ike_init.c:460,4'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_init.c:470,6'
          Dst:             send_use_ppk
        - Src:             'sa/ikev2/tasks/ike_init.c:481,3'
          Dst:             initiator_or_extension
    - functionName:    initiator_or_extension
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_supported_hash_algorithms
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          352
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - bio_writer_create
        - hash_algorithm_set_create
        - hasher_algorithm_for_ikev2
        - hasher_from_signature_scheme
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:197,10'
          Dst:             hash_algorithm_set_create
        - Src:             'sa/ikev2/tasks/ike_init.c:209,13'
          Dst:             hasher_from_signature_scheme
        - Src:             'sa/ikev2/tasks/ike_init.c:211,10'
          Dst:             hasher_algorithm_for_ikev2
        - Src:             'sa/ikev2/tasks/ike_init.c:227,8'
          Dst:             hasher_algorithm_for_ikev2
        - Src:             'sa/ikev2/tasks/ike_init.c:237,12'
          Dst:             bio_writer_create
        - Src:             'sa/ikev2/tasks/ike_init.c:244,14'
          Dst:             snprintf
    - functionName:    send_use_ppk
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    pre_process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1289
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          222
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_equals
        - chunk_free
        - redirect_data_parse
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_init.c:1244,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:1251,10'
          Dst:             chunk_equals
        - Src:             'sa/ikev2/tasks/ike_init.c:1271,16'
          Dst:             redirect_data_parse
        - Src:             'sa/ikev2/tasks/ike_init.c:1272,23'
          Dst:             chunk_equals
        - Src:             'sa/ikev2/tasks/ike_init.c:1278,6'
          Dst:             chunk_free
    - functionName:    process_i_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1293
      functionLinenumberEnd: 1309
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - derive_keys
        - key_exchange_done
        - process_payloads_multi_ke
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:1294,2'
          Dst:             process_payloads_multi_ke
        - Src:             'sa/ikev2/tasks/ike_init.c:1301,6'
          Dst:             key_exchange_done
        - Src:             'sa/ikev2/tasks/ike_init.c:1304,10'
          Dst:             derive_keys
    - functionName:    build_i_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 824
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          102
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - build_payloads_multi_ke
        - exchange_type_multi_ke
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:807,38'
          Dst:             exchange_type_multi_ke
        - Src:             'sa/ikev2/tasks/ike_init.c:819,7'
          Dst:             build_payloads_multi_ke
    - functionName:    raise_alerts
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1212
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_init.c:1216,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1313
      functionLinenumberEnd: 1457
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         58
      ICount:          481
      EdgeCount:       75
      CyclomaticComplexity: 19
      functionsReached:
        - chunk_create_clone
        - chunk_free
        - derive_keys
        - key_exchange_done
        - ntohs
        - process_payloads
        - raise_alerts
        - redirect_data_parse
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_init.c:1326,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:1335,24'
          Dst:             ntohs
        - Src:             'sa/ikev2/tasks/ike_init.c:1364,6'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_init.c:1365,21'
          Dst:             chunk_create_clone
        - Src:             'sa/ikev2/tasks/ike_init.c:1385,16'
          Dst:             redirect_data_parse
        - Src:             'sa/ikev2/tasks/ike_init.c:1391,6'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_init.c:1402,7'
          Dst:             raise_alerts
        - Src:             'sa/ikev2/tasks/ike_init.c:1414,2'
          Dst:             process_payloads
        - Src:             'sa/ikev2/tasks/ike_init.c:1437,6'
          Dst:             key_exchange_done
        - Src:             'sa/ikev2/tasks/ike_init.c:1453,10'
          Dst:             derive_keys
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 924
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          306
      EdgeCount:       47
      CyclomaticComplexity: 14
      functionsReached:
        - build_payloads
        - generate_nonce
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:897,8'
          Dst:             generate_nonce
        - Src:             'sa/ikev2/tasks/ike_init.c:908,7'
          Dst:             build_payloads
    - functionName:    get_lower_nonce
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1495
      functionLinenumberEnd: 1504
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_compare_prefix
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:1496,6'
          Dst:             chunk_compare_prefix
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1482
      functionLinenumberEnd: 1491
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_free
        - clear_key_exchanges
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:1486,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_init.c:1487,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_init.c:1488,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_init.c:1489,2'
          Dst:             clear_key_exchanges
    - functionName:    clear_key_exchanges
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 602
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy_offset
        - memset_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:603,2'
          Dst:             memset_noop
        - Src:             'sa/ikev2/tasks/ike_init.c:606,2'
          Dst:             array_destroy_offset
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1467
      functionLinenumberEnd: 1478
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - clear_key_exchanges
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_init.c:1469,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_init.c:1470,2'
          Dst:             clear_key_exchanges
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1461
      functionLinenumberEnd: 1462
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_init_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_init.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1510
      functionLinenumberEnd: 1546
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          177
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - process_payloads
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_natd.c:448,2'
          Dst:             process_payloads
    - functionName:    process_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         56
      ICount:          465
      EdgeCount:       74
      CyclomaticComplexity: 20
      functionsReached:
        - chunk_equals
        - chunk_free
        - force_encap
        - generate_natd_hash
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_natd.c:207,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_natd.c:193,13'
          Dst:             generate_natd_hash
        - Src:             'sa/ikev2/tasks/ike_natd.c:194,13'
          Dst:             generate_natd_hash
        - Src:             'sa/ikev2/tasks/ike_natd.c:216,10'
          Dst:             chunk_equals
        - Src:             'sa/ikev2/tasks/ike_natd.c:239,10'
          Dst:             chunk_equals
        - Src:             'sa/ikev2/tasks/ike_natd.c:252,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_natd.c:253,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_natd.c:288,4'
          Dst:             force_encap
    - functionName:    generate_natd_hash
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          132
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_cat
        - chunk_free
        - chunk_length
        - htons
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_natd.c:118,9'
          Dst:             htons
        - Src:             'sa/ikev2/tasks/ike_natd.c:124,15'
          Dst:             chunk_length
        - Src:             'sa/ikev2/tasks/ike_natd.c:124,15'
          Dst:             chunk_create_cat
        - Src:             'sa/ikev2/tasks/ike_natd.c:132,2'
          Dst:             chunk_free
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    force_encap
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          145
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - build_natd_payload
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_natd.c:430,12'
          Dst:             build_natd_payload
        - Src:             'sa/ikev2/tasks/ike_natd.c:436,12'
          Dst:             build_natd_payload
    - functionName:    build_natd_payload
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          184
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - chunk_free
        - chunk_hash
        - force_encap
        - generate_natd_hash
        - host_create_from_chunk
        - notify_payload_create
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_natd.c:149,42'
          Dst:             force_encap
        - Src:             'sa/ikev2/tasks/ike_natd.c:155,10'
          Dst:             chunk_hash
        - Src:             'sa/ikev2/tasks/ike_natd.c:156,42'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/ike_natd.c:156,10'
          Dst:             host_create_from_chunk
        - Src:             'sa/ikev2/tasks/ike_natd.c:157,10'
          Dst:             generate_natd_hash
        - Src:             'sa/ikev2/tasks/ike_natd.c:162,10'
          Dst:             generate_natd_hash
        - Src:             'sa/ikev2/tasks/ike_natd.c:168,11'
          Dst:             notify_payload_create
        - Src:             'sa/ikev2/tasks/ike_natd.c:171,2'
          Dst:             chunk_free
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          145
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - ike_mobike_create
        - process_payloads
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_natd.c:298,2'
          Dst:             process_payloads
        - Src:             'sa/ikev2/tasks/ike_natd.c:320,13'
          Dst:             ike_mobike_create
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          246
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - build_natd_payload
        - force_encap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_natd.c:366,33'
          Dst:             force_encap
        - Src:             'sa/ikev2/tasks/ike_natd.c:368,12'
          Dst:             build_natd_payload
        - Src:             'sa/ikev2/tasks/ike_natd.c:383,13'
          Dst:             build_natd_payload
        - Src:             'sa/ikev2/tasks/ike_natd.c:398,12'
          Dst:             build_natd_payload
    - functionName:    has_mapping_changed
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 455
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_natd_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_natd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          124
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mid_sync.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mid_sync.c:240,2'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mid_sync.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mid_sync.c:234,2'
          Dst:             chunk_free
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mid_sync.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pre_process
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mid_sync.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          197
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - bio_reader_create
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mid_sync.c:125,11'
          Dst:             bio_reader_create
        - Src:             'sa/ikev2/tasks/ike_mid_sync.c:144,16'
          Dst:             chunk_create_clone
    - functionName:    has_active_tasks
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mid_sync.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mid_sync.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          190
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - has_active_tasks
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mid_sync.c:194,7'
          Dst:             has_active_tasks
    - functionName:    build
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mid_sync.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          90
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bio_writer_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mid_sync.c:211,11'
          Dst:             bio_writer_create
    - functionName:    ike_mid_sync_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mid_sync.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          58
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          220
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - process_payloads
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mobike.c:430,3'
          Dst:             process_payloads
        - Src:             'sa/ikev2/tasks/ike_mobike.c:438,3'
          Dst:             process_payloads
    - functionName:    process_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          369
      EdgeCount:       44
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create_clone
        - chunk_free
        - host_create_from_chunk
        - ike_natd_create
      functionUses:    5
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_mobike.c:131,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mobike.c:152,5'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_mobike.c:153,21'
          Dst:             chunk_create_clone
        - Src:             'sa/ikev2/tasks/ike_mobike.c:173,12'
          Dst:             host_create_from_chunk
        - Src:             'sa/ikev2/tasks/ike_mobike.c:199,19'
          Dst:             ike_natd_create
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          156
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - build_address_list
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mobike.c:482,4'
          Dst:             build_address_list
        - Src:             'sa/ikev2/tasks/ike_mobike.c:495,4'
          Dst:             chunk_free
    - functionName:    build_address_list
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          162
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_mobike.c:229,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    is_newer_update_queued
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 504
      functionLinenumberEnd: 596
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         50
      ICount:          390
      EdgeCount:       67
      CyclomaticComplexity: 19
      functionsReached:
        - chunk_equals_const
        - chunk_free
        - ike_natd_create
        - is_newer_update_queued
        - process_payloads
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mobike.c:508,3'
          Dst:             process_payloads
        - Src:             'sa/ikev2/tasks/ike_mobike.c:515,7'
          Dst:             is_newer_update_queued
        - Src:             'sa/ikev2/tasks/ike_mobike.c:525,4'
          Dst:             process_payloads
        - Src:             'sa/ikev2/tasks/ike_mobike.c:526,9'
          Dst:             chunk_equals_const
        - Src:             'sa/ikev2/tasks/ike_mobike.c:528,5'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_mobike.c:532,4'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_mobike.c:536,4'
          Dst:             process_payloads
        - Src:             'sa/ikev2/tasks/ike_mobike.c:587,19'
          Dst:             ike_natd_create
    - functionName:    build_cookie
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          99
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mobike.c:261,2'
          Dst:             chunk_free
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          257
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - build_address_list
        - build_cookie
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mobike.c:372,3'
          Dst:             build_address_list
        - Src:             'sa/ikev2/tasks/ike_mobike.c:408,9'
          Dst:             build_cookie
        - Src:             'sa/ikev2/tasks/ike_mobike.c:415,4'
          Dst:             build_address_list
    - functionName:    enable_probing
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 628
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_probing
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 623
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    apply_port
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          116
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    transmit
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          366
      EdgeCount:       36
      CyclomaticComplexity: 8
      functionsReached:
        - apply_port
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_mobike.c:327,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mobike.c:351,4'
          Dst:             apply_port
        - Src:             'sa/ikev2/tasks/ike_mobike.c:353,4'
          Dst:             apply_port
    - functionName:    dpd
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ike_natd_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mobike.c:616,16'
          Dst:             ike_natd_create
    - functionName:    roam
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addresses
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 600
      functionLinenumberEnd: 602
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mobike.c:653,2'
          Dst:             chunk_free
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 640
      functionLinenumberEnd: 648
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_mobike.c:641,2'
          Dst:             chunk_free
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_mobike_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_mobike.c'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 697
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          126
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i_delete
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i_delete
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_passive_rekey_task
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    wait_for_redundant_delete
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          86
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - delete_ike_sa_job_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:534,16'
          Dst:             delete_ike_sa_job_create
    - functionName:    delete_redundant
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 504
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          149
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          78
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    collision_lost
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 649
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          153
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_compare_prefix
        - conclude_collision
        - delete_redundant
        - remove_passive_rekey_task
        - wait_for_redundant_delete
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:585,6'
          Dst:             chunk_compare_prefix
        - Src:             'sa/ikev2/tasks/ike_rekey.c:597,4'
          Dst:             delete_redundant
        - Src:             'sa/ikev2/tasks/ike_rekey.c:602,3'
          Dst:             conclude_collision
        - Src:             'sa/ikev2/tasks/ike_rekey.c:627,3'
          Dst:             wait_for_redundant_delete
        - Src:             'sa/ikev2/tasks/ike_rekey.c:645,3'
          Dst:             remove_passive_rekey_task
    - functionName:    conclude_collision
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 498
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          57
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - establish_new
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:494,3'
          Dst:             establish_new
    - functionName:    establish_new
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          150
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - check_queued_tasks
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:170,9'
          Dst:             check_queued_tasks
    - functionName:    check_queued_tasks
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - initiate_tasks_job_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:140,17'
          Dst:             initiate_tasks_job_create
    - functionName:    schedule_delayed_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - random
        - rekey_ike_sa_job_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:120,28'
          Dst:             random
        - Src:             'sa/ikev2/tasks/ike_rekey.c:121,16'
          Dst:             rekey_ike_sa_job_create
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 653
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          296
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - collision_lost
        - conclude_collision
        - establish_new
        - ike_delete_create
        - process_link
        - rekey_ike_sa_job_create
        - schedule_delayed_rekey
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_rekey.c:676,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:660,13'
          Dst:             rekey_ike_sa_job_create
        - Src:             'sa/ikev2/tasks/ike_rekey.c:668,8'
          Dst:             conclude_collision
        - Src:             'sa/ikev2/tasks/ike_rekey.c:670,4'
          Dst:             schedule_delayed_rekey
        - Src:             'sa/ikev2/tasks/ike_rekey.c:681,9'
          Dst:             conclude_collision
        - Src:             'sa/ikev2/tasks/ike_rekey.c:683,5'
          Dst:             schedule_delayed_rekey
        - Src:             'sa/ikev2/tasks/ike_rekey.c:695,4'
          Dst:             process_link
        - Src:             'sa/ikev2/tasks/ike_rekey.c:700,10'
          Dst:             conclude_collision
        - Src:             'sa/ikev2/tasks/ike_rekey.c:702,6'
          Dst:             schedule_delayed_rekey
        - Src:             'sa/ikev2/tasks/ike_rekey.c:710,11'
          Dst:             collision_lost
        - Src:             'sa/ikev2/tasks/ike_rekey.c:719,6'
          Dst:             collision_lost
        - Src:             'sa/ikev2/tasks/ike_rekey.c:724,2'
          Dst:             establish_new
        - Src:             'sa/ikev2/tasks/ike_rekey.c:726,21'
          Dst:             ike_delete_create
    - functionName:    process_link
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          122
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create_clone
        - chunk_equals_const
        - chunk_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:331,4'
          Dst:             chunk_free
        - Src:             'sa/ikev2/tasks/ike_rekey.c:332,17'
          Dst:             chunk_create_clone
        - Src:             'sa/ikev2/tasks/ike_rekey.c:334,13'
          Dst:             chunk_equals_const
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          181
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ike_init_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:236,20'
          Dst:             ike_init_create
    - functionName:    collide
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 747
      functionLinenumberEnd: 786
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - conclude_collision
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_rekey.c:751,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:754,4'
          Dst:             conclude_collision
    - functionName:    did_collide
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 742
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 830
      functionLinenumberEnd: 833
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cleanup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:831,2'
          Dst:             cleanup
    - functionName:    cleanup
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 792
      functionLinenumberEnd: 814
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          156
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:813,2'
          Dst:             chunk_free
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 818
      functionLinenumberEnd: 826
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cleanup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:819,2'
          Dst:             cleanup
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 735
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    have_half_open_children
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          140
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_rekey.c:256,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          193
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - actively_rekeying
        - have_half_open_children
        - ike_init_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:381,6'
          Dst:             have_half_open_children
        - Src:             'sa/ikev2/tasks/ike_rekey.c:387,6'
          Dst:             actively_rekeying
        - Src:             'sa/ikev2/tasks/ike_rekey.c:402,19'
          Dst:             ike_init_create
    - functionName:    actively_rekeying
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r_multi_ke
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          106
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - process_link
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:358,2'
          Dst:             process_link
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          354
      EdgeCount:       36
      CyclomaticComplexity: 9
      functionsReached:
        - actively_rekeying
        - chunk_create_clone
        - delete_ike_sa_job_create
        - establish_new
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/tasks/ike_rekey.c:429,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_rekey.c:442,18'
          Dst:             chunk_create_clone
        - Src:             'sa/ikev2/tasks/ike_rekey.c:464,7'
          Dst:             actively_rekeying
        - Src:             'sa/ikev2/tasks/ike_rekey.c:466,3'
          Dst:             establish_new
        - Src:             'sa/ikev2/tasks/ike_rekey.c:469,4'
          Dst:             delete_ike_sa_job_create
    - functionName:    ike_rekey_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_rekey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 839
      functionLinenumberEnd: 863
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          104
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_reauth_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ike_delete_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_reauth.c:96,2'
          Dst:             ike_delete_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth_complete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth_complete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth_complete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth_complete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth_complete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - delete_ike_sa_job_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_reauth_complete.c:51,18'
          Dst:             delete_ike_sa_job_create
    - functionName:    ike_reauth_complete_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_reauth_complete.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_redirect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - delete_ike_sa_job_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_redirect.c:96,8'
          Dst:             delete_ike_sa_job_create
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_redirect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
        - redirect_data_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_redirect.c:51,9'
          Dst:             redirect_data_create
        - Src:             'sa/ikev2/tasks/ike_redirect.c:53,2'
          Dst:             chunk_free
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_redirect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_redirect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_redirect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_redirect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - redirect_data_parse
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_redirect.c:70,7'
          Dst:             redirect_data_parse
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_redirect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_redirect_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_redirect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          88
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth_lifetime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - process_payloads
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth_lifetime.c:95,3'
          Dst:             process_payloads
    - functionName:    process_payloads
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth_lifetime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth_lifetime.c:74,14'
          Dst:             ntohl
    - functionName:    build_r
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth_lifetime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_auth_lifetime
        - ike_sa_can_reauthenticate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth_lifetime.c:107,8'
          Dst:             ike_sa_can_reauthenticate
        - Src:             'sa/ikev2/tasks/ike_auth_lifetime.c:109,4'
          Dst:             add_auth_lifetime
    - functionName:    add_auth_lifetime
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth_lifetime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - htonl
        - time_monotonic
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth_lifetime.c:54,15'
          Dst:             time_monotonic
        - Src:             'sa/ikev2/tasks/ike_auth_lifetime.c:55,11'
          Dst:             chunk_create
        - Src:             'sa/ikev2/tasks/ike_auth_lifetime.c:56,27'
          Dst:             htonl
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth_lifetime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - process_payloads
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth_lifetime.c:122,3'
          Dst:             process_payloads
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth_lifetime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add_auth_lifetime
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_auth_lifetime.c:84,3'
          Dst:             add_auth_lifetime
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth_lifetime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth_lifetime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth_lifetime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_auth_lifetime_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_auth_lifetime.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          87
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_vendor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_vendor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_vendor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    known_vid
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_vendor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_equals
        - get_vid_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_vendor.c:183,18'
          Dst:             get_vid_data
        - Src:             'sa/ikev2/tasks/ike_vendor.c:189,9'
          Dst:             chunk_equals
    - functionName:    get_vid_data
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_vendor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_vendor.c:90,45'
          Dst:             strlen
        - Src:             'sa/ikev2/tasks/ike_vendor.c:90,9'
          Dst:             chunk_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_vendor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          161
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - known_vid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_vendor.c:213,9'
          Dst:             known_vid
    - functionName:    build
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_vendor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          145
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create_clone
        - get_vid_data
        - vendor_id_payload_create_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_vendor.c:170,11'
          Dst:             get_vid_data
        - Src:             'sa/ikev2/tasks/ike_vendor.c:170,11'
          Dst:             chunk_create_clone
        - Src:             'sa/ikev2/tasks/ike_vendor.c:169,10'
          Dst:             vendor_id_payload_create_data
    - functionName:    ike_vendor_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_vendor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_verify_peer_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    migrate
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_verify_peer_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_verify_peer_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_verify_peer_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_i
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_verify_peer_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ike_delete_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/tasks/ike_verify_peer_cert.c:51,22'
          Dst:             ike_delete_create
    - functionName:    ike_verify_peer_cert_create
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/tasks/ike_verify_peer_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reset_all
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_entry
        - equals
        - hash
        - hashtable_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:407,14'
          Dst:             hashtable_create
        - Src:             'counters_listener.c:407,14'
          Dst:             hash
        - Src:             'counters_listener.c:407,14'
          Dst:             equals
        - Src:             'counters_listener.c:415,2'
          Dst:             destroy_entry
    - functionName:    hash
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:99,20'
          Dst:             strlen
        - Src:             'counters_listener.c:99,20'
          Dst:             chunk_create
        - Src:             'counters_listener.c:99,9'
          Dst:             chunk_hash
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - streq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:107,9'
          Dst:             streq
    - functionName:    destroy_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reset
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - destroy_entry
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:391,3'
          Dst:             memset_noop
        - Src:             'counters_listener.c:397,3'
          Dst:             destroy_entry
    - functionName:    get_all
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 350
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          134
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - calloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:356,11'
          Dst:             calloc
    - functionName:    get
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          121
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_free_names
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy_function
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:293,2'
          Dst:             array_destroy_function
    - functionName:    get_names
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          103
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create
        - array_create_enumerator
        - array_insert
        - array_sort
        - enumerator_create_cleaner
        - strcmp
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:305,10'
          Dst:             array_create
        - Src:             'counters_listener.c:309,35'
          Dst:             strdup
        - Src:             'counters_listener.c:309,3'
          Dst:             array_insert
        - Src:             'counters_listener.c:314,2'
          Dst:             array_sort
        - Src:             'counters_listener.c:314,2'
          Dst:             strcmp
        - Src:             'counters_listener.c:316,35'
          Dst:             array_create_enumerator
        - Src:             'counters_listener.c:316,9'
          Dst:             enumerator_create_cleaner
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:423,2'
          Dst:             destroy_entry
    - functionName:    child_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - count_named
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:209,2'
          Dst:             count_named
    - functionName:    count_named
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          92
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_ike_sa_name
        - strdup
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:137,9'
          Dst:             get_ike_sa_name
        - Src:             'counters_listener.c:143,4'
          Dst:             strdup
    - functionName:    get_ike_sa_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - count_named
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:197,2'
          Dst:             count_named
    - functionName:    message_hook
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          213
      EdgeCount:       40
      CyclomaticComplexity: 9
      functionsReached:
        - count_named
      functionUses:    0
      BranchProfiles:
        - Branch String:   'counters_listener.c:228,2'
          Branch Sides:    []
      Callsites:
        - Src:             'counters_listener.c:284,2'
          Dst:             count_named
    - functionName:    alert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          82
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - count_named
      functionUses:    0
      BranchProfiles:
        - Branch String:   'counters_listener.c:158,2'
          Branch Sides:    []
      Callsites:
        - Src:             'counters_listener.c:173,2'
          Dst:             count_named
    - functionName:    counters_listener_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/counters/counters_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          96
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - equals
        - hash
        - hashtable_create
        - spinlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'counters_listener.c:435,2'
          Dst:             hashtable_create
        - Src:             'counters_listener.c:435,2'
          Dst:             hash
        - Src:             'counters_listener.c:435,2'
          Dst:             equals
        - Src:             'counters_listener.c:435,2'
          Dst:             spinlock_create
    - functionName:    _cb_get_pools
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          306
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - snprintf
        - streq
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:683,12'
          Dst:             vici_builder_create
        - Src:             'vici_attribute.c:689,18'
          Dst:             streq
        - Src:             'vici_attribute.c:710,5'
          Dst:             snprintf
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    _cb_unload_pool
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 625
      functionLinenumberEnd: 664
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          144
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - create_reply
        - pool_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:633,10'
          Dst:             create_reply
        - Src:             'vici_attribute.c:646,12'
          Dst:             create_reply
        - Src:             'vici_attribute.c:652,12'
          Dst:             create_reply
        - Src:             'vici_attribute.c:653,4'
          Dst:             pool_destroy
        - Src:             'vici_attribute.c:658,11'
          Dst:             create_reply
    - functionName:    create_reply
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - vici_builder_create
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:363,12'
          Dst:             vici_builder_create
    - functionName:    pool_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_destroy_function
        - attribute_destroy
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:90,2'
          Dst:             array_destroy_function
        - Src:             'vici_attribute.c:90,2'
          Dst:             attribute_destroy
    - functionName:    attribute_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_pool_li
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          494
      EdgeCount:       63
      CyclomaticComplexity: 15
      functionsReached:
        - array_insert_create
        - atoi
        - chunk_create
        - chunk_create_cat
        - chunk_create_clone
        - chunk_length
        - create_reply
        - host_create_from_string
        - host_create_from_subnet
        - htonl
        - strchr
        - streq
        - vici_stringify
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_attribute.c:467,4'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_attribute.c:436,7'
          Dst:             streq
        - Src:             'vici_attribute.c:444,10'
          Dst:             atoi
        - Src:             'vici_attribute.c:447,27'
          Dst:             create_reply
        - Src:             'vici_attribute.c:452,6'
          Dst:             vici_stringify
        - Src:             'vici_attribute.c:454,7'
          Dst:             strchr
        - Src:             'vici_attribute.c:456,11'
          Dst:             host_create_from_subnet
        - Src:             'vici_attribute.c:460,11'
          Dst:             host_create_from_string
        - Src:             'vici_attribute.c:480,15'
          Dst:             chunk_create_clone
        - Src:             'vici_attribute.c:491,16'
          Dst:             htonl
        - Src:             'vici_attribute.c:493,16'
          Dst:             chunk_create
        - Src:             'vici_attribute.c:493,16'
          Dst:             chunk_length
        - Src:             'vici_attribute.c:493,16'
          Dst:             chunk_create
        - Src:             'vici_attribute.c:493,16'
          Dst:             chunk_create_cat
        - Src:             'vici_attribute.c:498,16'
          Dst:             chunk_length
        - Src:             'vici_attribute.c:498,16'
          Dst:             chunk_create_cat
        - Src:             'vici_attribute.c:508,27'
          Dst:             create_reply
        - Src:             'vici_attribute.c:513,14'
          Dst:             chunk_create_clone
        - Src:             'vici_attribute.c:519,2'
          Dst:             array_insert_create
    - functionName:    create_pool_range
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 390
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - host_create_from_range
        - mem_pool_create_range
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:382,7'
          Dst:             host_create_from_range
        - Src:             'vici_attribute.c:386,9'
          Dst:             mem_pool_create_range
    - functionName:    _cb_pool_kv
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          148
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - create_pool_range
        - create_reply
        - host_create_from_subnet
        - mem_pool_create
        - streq
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:526,6'
          Dst:             streq
        - Src:             'vici_attribute.c:535,27'
          Dst:             create_reply
        - Src:             'vici_attribute.c:538,8'
          Dst:             vici_stringify
        - Src:             'vici_attribute.c:540,27'
          Dst:             create_reply
        - Src:             'vici_attribute.c:543,10'
          Dst:             create_pool_range
        - Src:             'vici_attribute.c:546,11'
          Dst:             host_create_from_subnet
        - Src:             'vici_attribute.c:549,12'
          Dst:             mem_pool_create
        - Src:             'vici_attribute.c:555,27'
          Dst:             create_reply
        - Src:             'vici_attribute.c:561,25'
          Dst:             create_reply
    - functionName:    merge_pool
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          240
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - pool_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:337,3'
          Dst:             pool_destroy
        - Src:             'vici_attribute.c:345,3'
          Dst:             pool_destroy
    - functionName:    _cb_pool_sn
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          146
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - create_reply
        - merge_pool
        - pool_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:579,3'
          Dst:             pool_destroy
        - Src:             'vici_attribute.c:585,20'
          Dst:             create_reply
        - Src:             'vici_attribute.c:586,3'
          Dst:             pool_destroy
        - Src:             'vici_attribute.c:591,11'
          Dst:             merge_pool
        - Src:             'vici_attribute.c:596,20'
          Dst:             create_reply
        - Src:             'vici_attribute.c:598,3'
          Dst:             pool_destroy
    - functionName:    _cb_load_pool
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 620
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - create_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:617,10'
          Dst:             create_reply
        - Src:             'vici_attribute.c:619,9'
          Dst:             create_reply
    - functionName:    manage_command
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 730
      functionLinenumberEnd: 733
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 747
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - manage_commands
        - pool_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:751,2'
          Dst:             manage_commands
        - Src:             'vici_attribute.c:756,3'
          Dst:             pool_destroy
    - functionName:    manage_commands
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 743
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_command
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:740,2'
          Dst:             manage_command
        - Src:             'vici_attribute.c:741,2'
          Dst:             manage_command
        - Src:             'vici_attribute.c:742,2'
          Dst:             manage_command
    - functionName:    _cb_nested_cleanup
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_attr_filter
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          107
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_create_nested
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_enumerator
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:210,34'
          Dst:             array_create_enumerator
        - Src:             'vici_attribute.c:210,9'
          Dst:             enumerator_create_filter
    - functionName:    htoun32
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/byteorder.h:132,9'
          Dst:             htonl
    - functionName:    untoh32
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/byteorder.h:177,9'
          Dst:             ntohl
    - functionName:    have_vips_from_pool
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          198
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_compare
        - chunk_create_clone
        - htoun32
        - untoh32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:249,9'
          Dst:             chunk_create_clone
        - Src:             'vici_attribute.c:253,10'
          Dst:             untoh32
        - Src:             'vici_attribute.c:254,3'
          Dst:             htoun32
        - Src:             'vici_attribute.c:260,8'
          Dst:             chunk_compare
        - Src:             'vici_attribute.c:261,5'
          Dst:             chunk_compare
    - functionName:    create_attribute_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          138
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - enumerator_create_nested
        - have_vips_from_pool
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:283,2'
          Dst:             linked_list_create
        - Src:             'vici_attribute.c:294,15'
          Dst:             have_vips_from_pool
        - Src:             'vici_attribute.c:301,9'
          Dst:             enumerator_create_nested
    - functionName:    release_address
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          132
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_addr
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          105
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    acquire_address
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          101
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - find_addr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:137,9'
          Dst:             find_addr
        - Src:             'vici_attribute.c:140,10'
          Dst:             find_addr
        - Src:             'vici_attribute.c:143,11'
          Dst:             find_addr
    - functionName:    vici_attribute_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_attribute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashtable_create
        - hashtable_equals_str
        - hashtable_hash_str
        - manage_commands
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_attribute.c:771,2'
          Dst:             hashtable_create
        - Src:             'vici_attribute.c:771,2'
          Dst:             hashtable_hash_str
        - Src:             'vici_attribute.c:771,2'
          Dst:             hashtable_equals_str
        - Src:             'vici_attribute.c:771,2'
          Dst:             rwlock_create
        - Src:             'vici_attribute.c:785,2'
          Dst:             manage_commands
    - functionName:    _cb_list_authorities
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          304
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - streq
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:663,15'
          Dst:             streq
        - Src:             'vici_authority.c:667,7'
          Dst:             vici_builder_create
        - Src:             'vici_authority.c:710,6'
          Dst:             vici_builder_create
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    _cb_get_authorities
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 627
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          112
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:632,12'
          Dst:             vici_builder_create
    - functionName:    _cb_unload_authority
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 588
      functionLinenumberEnd: 622
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          171
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - create_reply
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:597,10'
          Dst:             create_reply
        - Src:             'vici_authority.c:604,7'
          Dst:             streq
        - Src:             'vici_authority.c:618,10'
          Dst:             create_reply
        - Src:             'vici_authority.c:621,9'
          Dst:             create_reply
    - functionName:    create_reply
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - vici_builder_create
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:235,12'
          Dst:             vici_builder_create
    - functionName:    _cb_authority_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_remove_cert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          61
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_ca_cert_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_parse_uris
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_printable
        - strndup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:363,7'
          Dst:             chunk_printable
        - Src:             'vici_authority.c:367,8'
          Dst:             strndup
    - functionName:    _cb_authority_li
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_rules
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:427,9'
          Dst:             parse_rules
    - functionName:    parse_rules
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - create_reply
        - streq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:268,7'
          Dst:             streq
        - Src:             'vici_authority.c:274,13'
          Dst:             create_reply
        - Src:             'vici_authority.c:279,11'
          Dst:             create_reply
    - functionName:    _cb_parse_uint32
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          58
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - strtoul
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:342,7'
          Dst:             vici_stringify
        - Src:             'vici_authority.c:346,6'
          Dst:             strtoul
    - functionName:    strtoul
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_parse_string
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_printable
        - strndup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:324,7'
          Dst:             chunk_printable
        - Src:             'vici_authority.c:329,9'
          Dst:             strndup
    - functionName:    _cb_parse_cacert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 401
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          97
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_authority_kv
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          97
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_rules
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:415,9'
          Dst:             parse_rules
    - functionName:    log_authority_data
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          113
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_load_data
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    authority_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:104,2'
          Dst:             strdup
        - Src:             'vici_authority.c:104,2'
          Dst:             linked_list_create
        - Src:             'vici_authority.c:104,2'
          Dst:             linked_list_create
    - functionName:    _cb_authority_sn
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          391
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - add_cert_internal
        - authority_create
        - chunk_create
        - chunk_free
        - chunk_from_hex
        - create_reply
        - free_load_data
        - log_authority_data
        - streq
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:487,2'
          Dst:             authority_create
        - Src:             'vici_authority.c:497,3'
          Dst:             free_load_data
        - Src:             'vici_authority.c:510,28'
          Dst:             strlen
        - Src:             'vici_authority.c:510,28'
          Dst:             chunk_create
        - Src:             'vici_authority.c:510,13'
          Dst:             chunk_from_hex
        - Src:             'vici_authority.c:528,4'
          Dst:             chunk_free
        - Src:             'vici_authority.c:533,20'
          Dst:             create_reply
        - Src:             'vici_authority.c:534,3'
          Dst:             free_load_data
        - Src:             'vici_authority.c:537,2'
          Dst:             log_authority_data
        - Src:             'vici_authority.c:541,26'
          Dst:             add_cert_internal
        - Src:             'vici_authority.c:548,7'
          Dst:             streq
        - Src:             'vici_authority.c:563,2'
          Dst:             free_load_data
    - functionName:    add_cert_internal
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          116
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_match_cert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_load_authority
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 584
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - create_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:581,10'
          Dst:             create_reply
        - Src:             'vici_authority.c:583,9'
          Dst:             create_reply
    - functionName:    manage_command
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 716
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 894
      functionLinenumberEnd: 902
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_commands
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:895,2'
          Dst:             manage_commands
    - functionName:    manage_commands
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 725
      functionLinenumberEnd: 732
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_command
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:728,2'
          Dst:             manage_command
        - Src:             'vici_authority.c:729,2'
          Dst:             manage_command
        - Src:             'vici_authority.c:730,2'
          Dst:             manage_command
        - Src:             'vici_authority.c:731,2'
          Dst:             manage_command
    - functionName:    _cb_remove_external_certs
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clear_ca_certs
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 886
      functionLinenumberEnd: 890
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_ca_cert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 877
      functionLinenumberEnd: 881
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_cert_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:879,9'
          Dst:             add_cert_internal
    - functionName:    _cb_create_inner_cdp
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 792
      functionLinenumberEnd: 823
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          133
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_create_inner_cdp_hashandurl
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 843
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - enumerator_create_single
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:839,41'
          Dst:             strdup
        - Src:             'vici_authority.c:839,16'
          Dst:             enumerator_create_single
    - functionName:    create_cdp_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 848
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          108
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_nested
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_authority.c:851,2'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_authority.c:869,9'
          Dst:             enumerator_create_nested
    - functionName:    _cb_cert_data_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 746
      functionLinenumberEnd: 749
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_certs_filter
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 768
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          95
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - certificate_matches
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:761,7'
          Dst:             certificate_matches
    - functionName:    create_cert_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          73
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:786,9'
          Dst:             enumerator_create_filter
    - functionName:    vici_authority_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_authority.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 932
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - manage_commands
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_authority.c:911,2'
          Dst:             linked_list_create
        - Src:             'vici_authority.c:911,2'
          Dst:             linked_list_create
        - Src:             'vici_authority.c:911,2'
          Dst:             rwlock_create
        - Src:             'vici_authority.c:930,2'
          Dst:             manage_commands
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    finalize
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - destroy
        - vici_message_create_from_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_builder.c:256,3'
          Dst:             destroy
        - Src:             'vici_builder.c:259,12'
          Dst:             vici_message_create_from_data
        - Src:             'vici_builder.c:261,2'
          Dst:             destroy
    - functionName:    end_list
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_builder.c:237,2'
          Dst:             add
    - functionName:    add
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         43
      ICount:          391
      EdgeCount:       49
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - strlen
        - vici_verify_type
      functionUses:    6
      BranchProfiles:
        - Branch String:   'vici_builder.c:61,2'
          Branch Sides:    []
        - Branch String:   'vici_builder.c:108,2'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_builder.c:69,11'
          Dst:             strlen
        - Src:             'vici_builder.c:69,11'
          Dst:             chunk_create
        - Src:             'vici_builder.c:72,11'
          Dst:             strlen
        - Src:             'vici_builder.c:72,11'
          Dst:             chunk_create
        - Src:             'vici_builder.c:99,7'
          Dst:             vici_verify_type
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    begin_list
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_builder.c:231,2'
          Dst:             add
    - functionName:    end_section
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_builder.c:225,2'
          Dst:             add
    - functionName:    begin_section
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_builder.c:219,2'
          Dst:             add
    - functionName:    vadd_li
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vadd_kv_or_li
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_builder.c:203,2'
          Dst:             vadd_kv_or_li
    - functionName:    vadd_kv_or_li
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          149
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - add
        - chunk_create
        - vsnprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_builder.c:149,8'
          Dst:             vsnprintf
        - Src:             'vici_builder.c:153,11'
          Dst:             chunk_create
        - Src:             'vici_builder.c:154,9'
          Dst:             vsnprintf
        - Src:             'vici_builder.c:159,11'
          Dst:             chunk_create
        - Src:             'vici_builder.c:171,4'
          Dst:             add
        - Src:             'vici_builder.c:175,4'
          Dst:             add
    - functionName:    add_li
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vadd_li
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_builder.c:212,2'
          Dst:             vadd_li
    - functionName:    vadd_kv
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vadd_kv_or_li
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_builder.c:187,2'
          Dst:             vadd_kv_or_li
    - functionName:    add_kv
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vadd_kv
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_builder.c:196,2'
          Dst:             vadd_kv
    - functionName:    vici_builder_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          68
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bio_writer_create
      functionUses:    42
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_builder.c:272,2'
          Dst:             bio_writer_create
    - functionName:    strcaseeq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:55,32'
          Dst:             strcasecmp
    - functionName:    vici_cert_info_from_str
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cert_info.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcaseeq
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cert_info.c:49,7'
          Dst:             strcaseeq
    - functionName:    _cb_get_conns
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3091
      functionLinenumberEnd: 3110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          116
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:3096,12'
          Dst:             vici_builder_create
    - functionName:    _cb_unload_conn
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3057
      functionLinenumberEnd: 3087
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          147
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - create_reply
        - handle_start_actions
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:3064,10'
          Dst:             create_reply
        - Src:             'vici_config.c:3076,3'
          Dst:             handle_start_actions
        - Src:             'vici_config.c:3084,10'
          Dst:             create_reply
        - Src:             'vici_config.c:3086,9'
          Dst:             create_reply
    - functionName:    create_reply
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - vici_builder_create
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:214,12'
          Dst:             vici_builder_create
    - functionName:    handle_start_actions
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2692
      functionLinenumberEnd: 2708
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create
        - array_destroy
        - array_insert_enumerator
        - clear_start_actions
        - run_start_actions
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2695,15'
          Dst:             array_create
        - Src:             'vici_config.c:2696,2'
          Dst:             array_insert_enumerator
        - Src:             'vici_config.c:2701,3'
          Dst:             clear_start_actions
        - Src:             'vici_config.c:2705,3'
          Dst:             run_start_actions
        - Src:             'vici_config.c:2707,2'
          Dst:             array_destroy
    - functionName:    clear_start_actions
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2636
      functionLinenumberEnd: 2661
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          106
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
        - clear_start_action
        - hashtable_create
        - hashtable_equals_str
        - hashtable_hash_str
        - terminate_for_action
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2645,17'
          Dst:             hashtable_create
        - Src:             'vici_config.c:2645,17'
          Dst:             hashtable_hash_str
        - Src:             'vici_config.c:2645,17'
          Dst:             hashtable_equals_str
        - Src:             'vici_config.c:2649,15'
          Dst:             array_create_enumerator
        - Src:             'vici_config.c:2652,3'
          Dst:             clear_start_action
        - Src:             'vici_config.c:2656,2'
          Dst:             terminate_for_action
    - functionName:    run_start_actions
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2668
      functionLinenumberEnd: 2684
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          77
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
        - run_start_action
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2675,15'
          Dst:             array_create_enumerator
        - Src:             'vici_config.c:2678,3'
          Dst:             run_start_action
    - functionName:    run_start_action
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2371
      functionLinenumberEnd: 2400
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          129
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'vici_config.c:2379,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    clear_start_action
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2602
      functionLinenumberEnd: 2627
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          118
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'vici_config.c:2611,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    terminate_for_action
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2512
      functionLinenumberEnd: 2592
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          337
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - array_destroy
        - array_insert_create_value
        - array_remove
        - check_queued_tasks
        - strdup
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2525,8'
          Dst:             streq
        - Src:             'vici_config.c:2544,3'
          Dst:             check_queued_tasks
        - Src:             'vici_config.c:2550,4'
          Dst:             array_insert_create_value
        - Src:             'vici_config.c:2566,21'
          Dst:             strdup
        - Src:             'vici_config.c:2567,5'
          Dst:             array_insert_create_value
        - Src:             'vici_config.c:2575,9'
          Dst:             array_remove
        - Src:             'vici_config.c:2583,2'
          Dst:             array_destroy
        - Src:             'vici_config.c:2585,9'
          Dst:             array_remove
        - Src:             'vici_config.c:2591,2'
          Dst:             array_destroy
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    check_queued_tasks
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2447
      functionLinenumberEnd: 2504
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          204
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - abort_child_task
        - get_task_config
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2467,10'
          Dst:             get_task_config
        - Src:             'vici_config.c:2472,5'
          Dst:             abort_child_task
        - Src:             'vici_config.c:2489,10'
          Dst:             get_task_config
    - functionName:    get_task_config
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2414
      functionLinenumberEnd: 2423
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    abort_child_task
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2429
      functionLinenumberEnd: 2438
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    replace_children
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2715
      functionLinenumberEnd: 2744
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_destroy
        - array_insert_create
        - clear_start_actions
        - run_start_actions
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2726,4'
          Dst:             array_insert_create
        - Src:             'vici_config.c:2735,4'
          Dst:             array_insert_create
        - Src:             'vici_config.c:2739,2'
          Dst:             clear_start_actions
        - Src:             'vici_config.c:2740,2'
          Dst:             run_start_actions
        - Src:             'vici_config.c:2741,2'
          Dst:             array_destroy
        - Src:             'vici_config.c:2742,2'
          Dst:             array_destroy
    - functionName:    log_auth
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          104
      EdgeCount:       21
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'vici_config.c:371,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    _cb_parse_hosts
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1866
      functionLinenumberEnd: 1881
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          58
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - host_create_from_string
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1870,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1874,9'
          Dst:             host_create_from_string
    - functionName:    _cb_parse_ike_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 672
      functionLinenumberEnd: 673
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_proposal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:673,9'
          Dst:             parse_proposal
    - functionName:    parse_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - add_default_proposals
        - proposal_create_from_string
        - strcaseeq
        - vici_stringify
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:649,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:653,6'
          Dst:             strcaseeq
        - Src:             'vici_config.c:655,3'
          Dst:             add_default_proposals
        - Src:             'vici_config.c:658,13'
          Dst:             proposal_create_from_string
    - functionName:    strcaseeq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:55,32'
          Dst:             strcasecmp
    - functionName:    add_default_proposals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 639
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          79
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - proposal_create_default
        - proposal_create_default_aead
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:623,11'
          Dst:             proposal_create_default
        - Src:             'vici_config.c:624,12'
          Dst:             proposal_create_default_aead
        - Src:             'vici_config.c:628,11'
          Dst:             proposal_create_default_aead
        - Src:             'vici_config.c:629,12'
          Dst:             proposal_create_default
    - functionName:    _cb_parse_stringlist
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1726
      functionLinenumberEnd: 1750
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          81
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - asprintf
        - chunk_printable
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1729,7'
          Dst:             chunk_printable
        - Src:             'vici_config.c:1736,7'
          Dst:             asprintf
        - Src:             'vici_config.c:1744,7'
          Dst:             asprintf
    - functionName:    asprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    32
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_peer_li
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2013
      functionLinenumberEnd: 2023
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          85
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_rules
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2022,9'
          Dst:             parse_rules
    - functionName:    parse_rules
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - create_reply
        - streq
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:247,7'
          Dst:             streq
        - Src:             'vici_config.c:253,13'
          Dst:             create_reply
        - Src:             'vici_config.c:258,11'
          Dst:             create_reply
    - functionName:    _cb_parse_opt_ppk_req
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 982
      functionLinenumberEnd: 983
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_peer_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:983,9'
          Dst:             parse_peer_option
    - functionName:    parse_peer_option
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 946
      functionLinenumberEnd: 948
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_parse_bool
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 877
      functionLinenumberEnd: 896
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_map
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:890,6'
          Dst:             parse_map
    - functionName:    parse_map
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 870
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strcaseeq
        - vici_stringify
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:857,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:863,7'
          Dst:             strcaseeq
    - functionName:    _cb_parse_peer_id
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1888
      functionLinenumberEnd: 1897
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - identification_create_from_string
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1891,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1895,9'
          Dst:             identification_create_from_string
    - functionName:    _cb_parse_unique
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1844
      functionLinenumberEnd: 1859
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_map
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1853,6'
          Dst:             parse_map
    - functionName:    _cb_parse_ocsp
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1822
      functionLinenumberEnd: 1837
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_map
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1831,6'
          Dst:             parse_map
    - functionName:    _cb_parse_send_cert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1801
      functionLinenumberEnd: 1815
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_map
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1809,6'
          Dst:             parse_map
    - functionName:    _cb_parse_childless
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1779
      functionLinenumberEnd: 1794
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_map
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1788,6'
          Dst:             parse_map
    - functionName:    _cb_parse_frag
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1757
      functionLinenumberEnd: 1772
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_map
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1766,6'
          Dst:             parse_map
    - functionName:    _cb_parse_opt_mobike
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 955
      functionLinenumberEnd: 956
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_peer_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:956,9'
          Dst:             parse_peer_option
    - functionName:    _cb_parse_uint32_bin
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1209
      functionLinenumberEnd: 1210
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_uint32_base
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1210,9'
          Dst:             parse_uint32_base
    - functionName:    parse_uint32_base
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1178
      functionLinenumberEnd: 1193
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - strtoul
        - vici_stringify
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1182,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1186,6'
          Dst:             strtoul
    - functionName:    _cb_parse_dscp
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1444
      functionLinenumberEnd: 1451
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_parse_opt_pull
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 973
      functionLinenumberEnd: 974
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_peer_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:974,9'
          Dst:             parse_peer_option
    - functionName:    _cb_parse_opt_aggr
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 964
      functionLinenumberEnd: 965
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_peer_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:965,9'
          Dst:             parse_peer_option
    - functionName:    _cb_peer_kv
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2028
      functionLinenumberEnd: 2063
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          283
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_rules
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2062,9'
          Dst:             parse_rules
    - functionName:    _cb_parse_if_id
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1383
      functionLinenumberEnd: 1391
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - if_id_from_string
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1386,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1390,9'
          Dst:             if_id_from_string
    - functionName:    _cb_parse_time
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1240
      functionLinenumberEnd: 1283
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          132
      EdgeCount:       28
      CyclomaticComplexity: 4
      functionsReached:
        - strtoul
        - vici_stringify
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_config.c:1254,2'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_config.c:1244,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1249,6'
          Dst:             strtoul
    - functionName:    _cb_parse_uint32
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1200
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_uint32_base
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1201,9'
          Dst:             parse_uint32_base
    - functionName:    _cb_parse_pubkeys
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1665
      functionLinenumberEnd: 1670
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_insert_create_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1668,2'
          Dst:             array_insert_create_value
    - functionName:    _cb_parse_cacerts
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1656
      functionLinenumberEnd: 1657
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_cert
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1657,9'
          Dst:             parse_cert
    - functionName:    parse_cert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1630
      functionLinenumberEnd: 1640
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add_cert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1637,10'
          Dst:             add_cert
    - functionName:    add_cert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1608
      functionLinenumberEnd: 1623
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_parse_certs
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1647
      functionLinenumberEnd: 1648
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_cert
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1648,9'
          Dst:             parse_cert
    - functionName:    _cb_parse_cert_policy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1593
      functionLinenumberEnd: 1602
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1596,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1600,39'
          Dst:             strdup
    - functionName:    _cb_parse_group
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1584
      functionLinenumberEnd: 1585
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_id
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1585,9'
          Dst:             parse_id
    - functionName:    parse_id
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1521
      functionLinenumberEnd: 1532
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - identification_create_from_string_with_regex
        - vici_stringify
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1525,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1526,10'
          Dst:             identification_create_from_string_with_regex
    - functionName:    _cb_auth_li
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1980
      functionLinenumberEnd: 1990
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          82
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_rules
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1989,9'
          Dst:             parse_rules
    - functionName:    _cb_parse_revocation
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1702
      functionLinenumberEnd: 1719
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - parse_map
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1710,6'
          Dst:             parse_map
    - functionName:    _cb_parse_xauth_id
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1575
      functionLinenumberEnd: 1576
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_id
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1576,9'
          Dst:             parse_id
    - functionName:    _cb_parse_eap_id
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1566
      functionLinenumberEnd: 1567
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_id
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1567,9'
          Dst:             parse_id
    - functionName:    _cb_parse_aaa_id
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1557
      functionLinenumberEnd: 1558
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_id
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1558,9'
          Dst:             parse_id
    - functionName:    _cb_parse_ca_id
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1548
      functionLinenumberEnd: 1549
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_id
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1549,9'
          Dst:             parse_id
    - functionName:    _cb_parse_ike_id
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1539
      functionLinenumberEnd: 1540
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_id
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1540,9'
          Dst:             parse_id
    - functionName:    strneq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:39,32'
          Dst:             strncmp
    - functionName:    strncmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strpfx
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - strneq
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:47,27'
          Dst:             strlen
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:47,9'
          Dst:             strneq
    - functionName:    _cb_parse_auth
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1458
      functionLinenumberEnd: 1515
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          222
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - eap_vendor_type_from_string
        - strcaseeq
        - strcasepfx
        - strchr
        - strdup
        - strpfx
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1462,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1466,6'
          Dst:             strpfx
        - Src:             'vici_config.c:1467,3'
          Dst:             strpfx
        - Src:             'vici_config.c:1468,3'
          Dst:             strpfx
        - Src:             'vici_config.c:1469,3'
          Dst:             strpfx
        - Src:             'vici_config.c:1475,6'
          Dst:             strcaseeq
        - Src:             'vici_config.c:1480,6'
          Dst:             strcasepfx
        - Src:             'vici_config.c:1482,9'
          Dst:             strchr
        - Src:             'vici_config.c:1485,43'
          Dst:             strdup
        - Src:             'vici_config.c:1490,6'
          Dst:             strcasepfx
        - Src:             'vici_config.c:1496,9'
          Dst:             strchr
        - Src:             'vici_config.c:1502,10'
          Dst:             eap_vendor_type_from_string
    - functionName:    strcasepfx
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - strncaseeq
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:71,31'
          Dst:             strlen
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:71,9'
          Dst:             strncaseeq
    - functionName:    strncaseeq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:63,32'
          Dst:             strncasecmp
    - functionName:    strncasecmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_auth_kv
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1995
      functionLinenumberEnd: 2008
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          120
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_rules
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2007,9'
          Dst:             parse_rules
    - functionName:    _cb_cert_kv
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1902
      functionLinenumberEnd: 1911
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          73
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_rules
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1910,9'
          Dst:             parse_rules
    - functionName:    _cb_parse_string
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 827
      functionLinenumberEnd: 839
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - asprintf
        - chunk_printable
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:828,7'
          Dst:             chunk_printable
        - Src:             'vici_config.c:834,6'
          Dst:             asprintf
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_cert_data
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_auth_sn
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2069
      functionLinenumberEnd: 2141
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          311
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - add_cert
        - chunk_create
        - chunk_free
        - chunk_from_hex
        - create_reply
        - free_cert_data
        - strcasepfx
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2070,6'
          Dst:             strcasepfx
        - Src:             'vici_config.c:2071,3'
          Dst:             strcasepfx
        - Src:             'vici_config.c:2085,4'
          Dst:             free_cert_data
        - Src:             'vici_config.c:2090,27'
          Dst:             create_reply
        - Src:             'vici_config.c:2092,4'
          Dst:             free_cert_data
        - Src:             'vici_config.c:2097,27'
          Dst:             create_reply
        - Src:             'vici_config.c:2099,4'
          Dst:             free_cert_data
        - Src:             'vici_config.c:2110,28'
          Dst:             strlen
        - Src:             'vici_config.c:2110,28'
          Dst:             chunk_create
        - Src:             'vici_config.c:2110,13'
          Dst:             chunk_from_hex
        - Src:             'vici_config.c:2126,4'
          Dst:             chunk_free
        - Src:             'vici_config.c:2128,3'
          Dst:             free_cert_data
        - Src:             'vici_config.c:2131,27'
          Dst:             create_reply
        - Src:             'vici_config.c:2135,10'
          Dst:             strcasepfx
        - Src:             'vici_config.c:2137,10'
          Dst:             add_cert
        - Src:             'vici_config.c:2139,25'
          Dst:             create_reply
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_parse_ts
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 820
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         67
      ICount:          423
      EdgeCount:       91
      CyclomaticComplexity: 26
      functionsReached:
        - getprotobyname
        - getservbyname
        - host_create_from_range
        - ntohs
        - strchr
        - streq
        - strrchr
        - strtol
        - traffic_selector_create_dynamic
        - traffic_selector_create_from_bytes
        - traffic_selector_create_from_cidr
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:708,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:713,14'
          Dst:             strchr
        - Src:             'vici_config.c:718,9'
          Dst:             strrchr
        - Src:             'vici_config.c:725,9'
          Dst:             strchr
        - Src:             'vici_config.c:732,7'
          Dst:             streq
        - Src:             'vici_config.c:738,15'
          Dst:             getprotobyname
        - Src:             'vici_config.c:745,9'
          Dst:             strtol
        - Src:             'vici_config.c:753,7'
          Dst:             streq
        - Src:             'vici_config.c:758,22'
          Dst:             streq
        - Src:             'vici_config.c:760,10'
          Dst:             getservbyname
        - Src:             'vici_config.c:763,17'
          Dst:             ntohs
        - Src:             'vici_config.c:767,9'
          Dst:             strtol
        - Src:             'vici_config.c:776,10'
          Dst:             strtol
        - Src:             'vici_config.c:790,6'
          Dst:             streq
        - Src:             'vici_config.c:792,8'
          Dst:             traffic_selector_create_dynamic
        - Src:             'vici_config.c:794,11'
          Dst:             strchr
        - Src:             'vici_config.c:799,7'
          Dst:             host_create_from_range
        - Src:             'vici_config.c:803,9'
          Dst:             traffic_selector_create_from_bytes
        - Src:             'vici_config.c:812,8'
          Dst:             traffic_selector_create_from_cidr
    - functionName:    strrchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getprotobyname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getservbyname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_parse_esp_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_proposal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:682,9'
          Dst:             parse_proposal
    - functionName:    _cb_parse_ah_proposal
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 690
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_proposal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:691,9'
          Dst:             parse_proposal
    - functionName:    _cb_child_li
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1916
      functionLinenumberEnd: 1925
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          77
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_rules
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1924,9'
          Dst:             parse_rules
    - functionName:    _cb_parse_opt_cpus
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1073
      functionLinenumberEnd: 1085
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_map
        - parse_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1079,6'
          Dst:             parse_map
        - Src:             'vici_config.c:1084,9'
          Dst:             parse_option
    - functionName:    parse_option
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 992
      functionLinenumberEnd: 994
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_parse_label_mode
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1414
      functionLinenumberEnd: 1423
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - sec_label_mode_from_string
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1417,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1418,4'
          Dst:             sec_label_mode_from_string
    - functionName:    _cb_parse_label
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1398
      functionLinenumberEnd: 1407
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sec_label_from_string
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1401,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1405,9'
          Dst:             sec_label_from_string
    - functionName:    _cb_parse_opt_icmp
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1114
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1115,9'
          Dst:             parse_option
    - functionName:    _cb_parse_copy_dscp
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1092
      functionLinenumberEnd: 1107
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_map
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1101,6'
          Dst:             parse_map
    - functionName:    _cb_parse_opt_copy_ecn
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1064
      functionLinenumberEnd: 1065
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1065,9'
          Dst:             parse_option
    - functionName:    _cb_parse_opt_copy_df
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1055
      functionLinenumberEnd: 1056
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1056,9'
          Dst:             parse_option
    - functionName:    _cb_parse_opt_sha256_96
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1037
      functionLinenumberEnd: 1038
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1038,9'
          Dst:             parse_option
    - functionName:    _cb_parse_hw_offload
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1156
      functionLinenumberEnd: 1172
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_map
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1166,6'
          Dst:             parse_map
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    _cb_parse_tfc
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1430
      functionLinenumberEnd: 1437
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - chunk_equals
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1431,22'
          Dst:             strlen
        - Src:             'vici_config.c:1431,22'
          Dst:             chunk_create
        - Src:             'vici_config.c:1431,6'
          Dst:             chunk_equals
    - functionName:    _cb_parse_set_mark
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1368
      functionLinenumberEnd: 1376
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mark_from_string
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1371,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1375,9'
          Dst:             mark_from_string
    - functionName:    _cb_parse_opt_mark_in
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1046
      functionLinenumberEnd: 1047
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1047,9'
          Dst:             parse_option
    - functionName:    _cb_parse_mark
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1353
      functionLinenumberEnd: 1361
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mark_from_string
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1356,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1360,9'
          Dst:             mark_from_string
    - functionName:    _cb_parse_time32
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1290
      functionLinenumberEnd: 1299
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_parse_opt_ipcomp
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1028
      functionLinenumberEnd: 1029
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1029,9'
          Dst:             parse_option
    - functionName:    _cb_parse_action
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1123
      functionLinenumberEnd: 1149
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          90
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - enum_flags_from_string_as_int
        - parse_map
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1135,6'
          Dst:             parse_map
        - Src:             'vici_config.c:1140,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1144,6'
          Dst:             enum_flags_from_string_as_int
    - functionName:    _cb_parse_uint64
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1218
      functionLinenumberEnd: 1233
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - strtoull
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1222,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1226,6'
          Dst:             strtoull
    - functionName:    strtoull
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_parse_bytes
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1306
      functionLinenumberEnd: 1346
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          136
      EdgeCount:       29
      CyclomaticComplexity: 5
      functionsReached:
        - strtoull
        - vici_stringify
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_config.c:1320,2'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_config.c:1310,7'
          Dst:             vici_stringify
        - Src:             'vici_config.c:1315,11'
          Dst:             strtoull
    - functionName:    _cb_parse_opt_fwd_out
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1019
      functionLinenumberEnd: 1020
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1020,9'
          Dst:             parse_option
    - functionName:    _cb_parse_opt_policies
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1010
      functionLinenumberEnd: 1011
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1011,9'
          Dst:             parse_option
    - functionName:    _cb_parse_mode
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 903
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          67
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - parse_map
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:915,6'
          Dst:             parse_map
    - functionName:    _cb_parse_opt_haccess
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1001
      functionLinenumberEnd: 1002
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_option
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1002,9'
          Dst:             parse_option
    - functionName:    _cb_child_kv
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1930
      functionLinenumberEnd: 1975
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          489
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_rules
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1974,9'
          Dst:             parse_rules
    - functionName:    log_child_data
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_lifetimes
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2147
      functionLinenumberEnd: 2211
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         46
      ICount:          366
      EdgeCount:       60
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_child_data
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 611
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          83
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_children_sn
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2216
      functionLinenumberEnd: 2300
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          329
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - add_default_proposals
        - check_lifetimes
        - child_cfg_create
        - free_child_data
        - linked_list_create
        - log_child_data
        - traffic_selector_create_dynamic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2219,16'
          Dst:             linked_list_create
        - Src:             'vici_config.c:2220,15'
          Dst:             linked_list_create
        - Src:             'vici_config.c:2221,16'
          Dst:             linked_list_create
        - Src:             'vici_config.c:2250,3'
          Dst:             free_child_data
        - Src:             'vici_config.c:2257,8'
          Dst:             traffic_selector_create_dynamic
        - Src:             'vici_config.c:2262,8'
          Dst:             traffic_selector_create_dynamic
        - Src:             'vici_config.c:2266,3'
          Dst:             add_default_proposals
        - Src:             'vici_config.c:2269,2'
          Dst:             check_lifetimes
        - Src:             'vici_config.c:2271,2'
          Dst:             log_child_data
        - Src:             'vici_config.c:2273,8'
          Dst:             child_cfg_create
        - Src:             'vici_config.c:2297,2'
          Dst:             free_child_data
    - functionName:    parse_and_add_pubkeys
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1678
      functionLinenumberEnd: 1695
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          96
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - add_cert
        - array_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:1683,9'
          Dst:             array_remove
        - Src:             'vici_config.c:1689,17'
          Dst:             add_cert
    - functionName:    _cb_peer_sn
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2305
      functionLinenumberEnd: 2364
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          268
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - auth_cfg_create
        - create_reply
        - free_auth_data
        - parse_and_add_pubkeys
        - strcaseeq
        - strcasepfx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2306,6'
          Dst:             strcaseeq
        - Src:             'vici_config.c:2310,6'
          Dst:             strcasepfx
        - Src:             'vici_config.c:2311,3'
          Dst:             strcasepfx
        - Src:             'vici_config.c:2319,3'
          Dst:             auth_cfg_create
        - Src:             'vici_config.c:2326,4'
          Dst:             free_auth_data
        - Src:             'vici_config.c:2331,8'
          Dst:             parse_and_add_pubkeys
        - Src:             'vici_config.c:2333,4'
          Dst:             free_auth_data
        - Src:             'vici_config.c:2349,11'
          Dst:             strcasepfx
        - Src:             'vici_config.c:2362,25'
          Dst:             create_reply
    - functionName:    free_auth_data
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_destroy
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:307,2'
          Dst:             array_destroy
    - functionName:    merge_config
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2750
      functionLinenumberEnd: 2791
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          211
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - handle_start_actions
        - replace_children
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2769,4'
          Dst:             replace_children
        - Src:             'vici_config.c:2778,4'
          Dst:             handle_start_actions
        - Src:             'vici_config.c:2779,4'
          Dst:             handle_start_actions
        - Src:             'vici_config.c:2787,3'
          Dst:             handle_start_actions
    - functionName:    log_peer_data
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 496
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          145
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - log_auth
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:485,3'
          Dst:             log_auth
        - Src:             'vici_config.c:493,3'
          Dst:             log_auth
    - functionName:    free_peer_data
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          104
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - free_auth_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:503,2'
          Dst:             free_auth_data
        - Src:             'vici_config.c:504,2'
          Dst:             free_auth_data
    - functionName:    _cb_config_sn
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2796
      functionLinenumberEnd: 3035
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         86
      ICount:          867
      EdgeCount:       114
      CyclomaticComplexity: 30
      functionsReached:
        - add_default_proposals
        - auth_cfg_create
        - enumerator_create_token
        - free_auth_data
        - free_peer_data
        - ike_cfg_create
        - linked_list_create
        - log_peer_data
        - merge_config
        - peer_cfg_create
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:2799,12'
          Dst:             linked_list_create
        - Src:             'vici_config.c:2800,13'
          Dst:             linked_list_create
        - Src:             'vici_config.c:2803,16'
          Dst:             linked_list_create
        - Src:             'vici_config.c:2802,15'
          Dst:             linked_list_create
        - Src:             'vici_config.c:2801,11'
          Dst:             linked_list_create
        - Src:             'vici_config.c:2832,3'
          Dst:             free_peer_data
        - Src:             'vici_config.c:2838,3'
          Dst:             auth_cfg_create
        - Src:             'vici_config.c:2845,3'
          Dst:             auth_cfg_create
        - Src:             'vici_config.c:2852,3'
          Dst:             add_default_proposals
        - Src:             'vici_config.c:2856,22'
          Dst:             strdup
        - Src:             'vici_config.c:2860,23'
          Dst:             strdup
        - Src:             'vici_config.c:2937,2'
          Dst:             log_peer_data
        - Src:             'vici_config.c:2961,12'
          Dst:             ike_cfg_create
        - Src:             'vici_config.c:2990,13'
          Dst:             peer_cfg_create
        - Src:             'vici_config.c:2997,3'
          Dst:             free_auth_data
        - Src:             'vici_config.c:3004,3'
          Dst:             free_auth_data
        - Src:             'vici_config.c:3022,16'
          Dst:             enumerator_create_token
        - Src:             'vici_config.c:3030,2'
          Dst:             free_peer_data
        - Src:             'vici_config.c:3032,2'
          Dst:             merge_config
    - functionName:    _cb_load_conn
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3039
      functionLinenumberEnd: 3053
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - create_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:3050,10'
          Dst:             create_reply
        - Src:             'vici_config.c:3052,9'
          Dst:             create_reply
    - functionName:    manage_command
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3115
      functionLinenumberEnd: 3118
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_destroy_conn
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3132
      functionLinenumberEnd: 3134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3138
      functionLinenumberEnd: 3144
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_commands
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:3139,2'
          Dst:             manage_commands
    - functionName:    manage_commands
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3124
      functionLinenumberEnd: 3128
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_command
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:3125,2'
          Dst:             manage_command
        - Src:             'vici_config.c:3126,2'
          Dst:             manage_command
        - Src:             'vici_config.c:3127,2'
          Dst:             manage_command
    - functionName:    get_peer_cfg_by_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_peer_filter
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_peer_cfg_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:161,9'
          Dst:             enumerator_create_filter
    - functionName:    _cb_ike_filter
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_ike_cfg_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:186,9'
          Dst:             enumerator_create_filter
    - functionName:    vici_config_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3152
      functionLinenumberEnd: 3174
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          67
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashtable_create
        - hashtable_equals_str
        - hashtable_hash_str
        - manage_commands
        - rwlock_condvar_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_config.c:3155,2'
          Dst:             hashtable_create
        - Src:             'vici_config.c:3155,2'
          Dst:             hashtable_hash_str
        - Src:             'vici_config.c:3155,2'
          Dst:             hashtable_equals_str
        - Src:             'vici_config.c:3155,2'
          Dst:             rwlock_create
        - Src:             'vici_config.c:3155,2'
          Dst:             rwlock_condvar_create
        - Src:             'vici_config.c:3172,2'
          Dst:             manage_commands
    - functionName:    _cb_reload_settings
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 694
      functionLinenumberEnd: 702
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - send_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:699,10'
          Dst:             send_reply
        - Src:             'vici_control.c:701,9'
          Dst:             send_reply
    - functionName:    send_reply
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - vici_builder_create
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:106,12'
          Dst:             vici_builder_create
    - functionName:    _cb_uninstall
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 690
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          100
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - send_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:676,10'
          Dst:             send_reply
        - Src:             'vici_control.c:683,10'
          Dst:             send_reply
        - Src:             'vici_control.c:687,10'
          Dst:             send_reply
        - Src:             'vici_control.c:689,9'
          Dst:             send_reply
    - functionName:    _cb_install
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          149
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - find_child_cfg
        - send_reply
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_control.c:650,2'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_control.c:640,10'
          Dst:             send_reply
        - Src:             'vici_control.c:645,14'
          Dst:             find_child_cfg
        - Src:             'vici_control.c:648,10'
          Dst:             send_reply
        - Src:             'vici_control.c:664,9'
          Dst:             send_reply
    - functionName:    find_child_cfg
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          119
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - get_child_from_peer
        - streq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:152,17'
          Dst:             streq
        - Src:             'vici_control.c:161,15'
          Dst:             get_child_from_peer
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    get_child_from_peer
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:128,7'
          Dst:             streq
    - functionName:    parse_peer_ip
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 502
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          101
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - host_create_from_range
        - traffic_selector_create_from_bytes
        - traffic_selector_create_from_cidr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:484,6'
          Dst:             host_create_from_range
        - Src:             'vici_control.c:494,8'
          Dst:             traffic_selector_create_from_bytes
        - Src:             'vici_control.c:501,9'
          Dst:             traffic_selector_create_from_cidr
    - functionName:    _cb_redirect
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 506
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         83
      ICount:          543
      EdgeCount:       110
      CyclomaticComplexity: 29
      functionsReached:
        - identification_create_from_string
        - parse_peer_ip
        - redirect_job_create
        - send_reply
        - streq
        - vici_builder_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_control.c:525,2'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_control.c:521,25'
          Dst:             identification_create_from_string
        - Src:             'vici_control.c:523,10'
          Dst:             send_reply
        - Src:             'vici_control.c:537,8'
          Dst:             parse_peer_ip
        - Src:             'vici_control.c:548,14'
          Dst:             identification_create_from_string
        - Src:             'vici_control.c:583,15'
          Dst:             streq
        - Src:             'vici_control.c:600,13'
          Dst:             redirect_job_create
        - Src:             'vici_control.c:605,12'
          Dst:             vici_builder_create
        - Src:             'vici_control.c:625,9'
          Dst:             send_reply
    - functionName:    _cb_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 472
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          476
      EdgeCount:       84
      CyclomaticComplexity: 24
      functionsReached:
        - format_sa_selector
        - rekey_child_sa_job_create
        - rekey_ike_sa_job_create
        - send_reply
        - streq
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:406,10'
          Dst:             send_reply
        - Src:             'vici_control.c:409,2'
          Dst:             format_sa_selector
        - Src:             'vici_control.c:410,2'
          Dst:             format_sa_selector
        - Src:             'vici_control.c:422,16'
          Dst:             streq
        - Src:             'vici_control.c:433,19'
          Dst:             streq
        - Src:             'vici_control.c:442,15'
          Dst:             rekey_child_sa_job_create
        - Src:             'vici_control.c:450,20'
          Dst:             streq
        - Src:             'vici_control.c:454,13'
          Dst:             rekey_ike_sa_job_create
        - Src:             'vici_control.c:460,12'
          Dst:             vici_builder_create
    - functionName:    format_sa_selector
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          72
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - snprintf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:237,3'
          Dst:             snprintf
        - Src:             'vici_control.c:241,3'
          Dst:             snprintf
        - Src:             'vici_control.c:245,3'
          Dst:             snprintf
    - functionName:    _cb_terminate
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         86
      ICount:          628
      EdgeCount:       116
      CyclomaticComplexity: 32
      functionsReached:
        - array_count
        - array_create
        - array_create_enumerator
        - array_destroy
        - array_insert
        - format_sa_selector
        - send_reply
        - streq
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:278,10'
          Dst:             send_reply
        - Src:             'vici_control.c:281,2'
          Dst:             format_sa_selector
        - Src:             'vici_control.c:282,2'
          Dst:             format_sa_selector
        - Src:             'vici_control.c:294,8'
          Dst:             array_create
        - Src:             'vici_control.c:301,16'
          Dst:             streq
        - Src:             'vici_control.c:312,19'
          Dst:             streq
        - Src:             'vici_control.c:321,5'
          Dst:             array_insert
        - Src:             'vici_control.c:325,19'
          Dst:             streq
        - Src:             'vici_control.c:328,4'
          Dst:             array_insert
        - Src:             'vici_control.c:332,4'
          Dst:             array_insert
        - Src:             'vici_control.c:337,15'
          Dst:             array_create_enumerator
        - Src:             'vici_control.c:359,12'
          Dst:             vici_builder_create
        - Src:             'vici_control.c:360,6'
          Dst:             array_count
        - Src:             'vici_control.c:364,18'
          Dst:             array_count
        - Src:             'vici_control.c:366,7'
          Dst:             array_count
        - Src:             'vici_control.c:376,44'
          Dst:             array_count
        - Src:             'vici_control.c:382,2'
          Dst:             array_destroy
    - functionName:    log_vici
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          153
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - vici_builder_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:74,14'
          Dst:             vici_builder_create
    - functionName:    _cb_initiate
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          220
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - find_child_cfg
        - send_reply
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_control.c:212,2'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_control.c:195,10'
          Dst:             send_reply
        - Src:             'vici_control.c:205,14'
          Dst:             find_child_cfg
        - Src:             'vici_control.c:210,10'
          Dst:             send_reply
        - Src:             'vici_control.c:216,11'
          Dst:             send_reply
        - Src:             'vici_control.c:218,11'
          Dst:             send_reply
        - Src:             'vici_control.c:221,11'
          Dst:             send_reply
        - Src:             'vici_control.c:225,11'
          Dst:             send_reply
    - functionName:    manage_command
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 706
      functionLinenumberEnd: 709
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_commands
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:729,2'
          Dst:             manage_commands
    - functionName:    manage_commands
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 724
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          64
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_command
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:716,2'
          Dst:             manage_command
        - Src:             'vici_control.c:717,2'
          Dst:             manage_command
        - Src:             'vici_control.c:718,2'
          Dst:             manage_command
        - Src:             'vici_control.c:719,2'
          Dst:             manage_command
        - Src:             'vici_control.c:720,2'
          Dst:             manage_command
        - Src:             'vici_control.c:721,2'
          Dst:             manage_command
        - Src:             'vici_control.c:722,2'
          Dst:             manage_command
    - functionName:    vici_control_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_control.c'
      linkageType:     InternalLinkage
      functionLinenumber: 737
      functionLinenumberEnd: 749
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_commands
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_control.c:747,2'
          Dst:             manage_commands
    - functionName:    _cb_get_shared
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          88
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:516,12'
          Dst:             vici_builder_create
    - functionName:    _cb_unload_shared
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 507
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - create_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:502,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:506,9'
          Dst:             create_reply
    - functionName:    create_reply
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - vici_builder_create
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:123,12'
          Dst:             vici_builder_create
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    _cb_shared_owners
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - identification_create_from_string_with_regex
        - streq
        - vici_stringify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:396,6'
          Dst:             streq
        - Src:             'vici_cred.c:401,8'
          Dst:             vici_stringify
        - Src:             'vici_cred.c:402,11'
          Dst:             identification_create_from_string_with_regex
    - functionName:    strcaseeq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:55,32'
          Dst:             strcasecmp
    - functionName:    _cb_load_shared
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          305
      EdgeCount:       53
      CyclomaticComplexity: 15
      functionsReached:
        - chunk_create_clone
        - create_reply
        - identification_create_from_string
        - linked_list_create
        - shared_key_create
        - snprintf
        - strcaseeq
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:426,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:428,6'
          Dst:             strcaseeq
        - Src:             'vici_cred.c:432,11'
          Dst:             strcaseeq
        - Src:             'vici_cred.c:432,36'
          Dst:             strcaseeq
        - Src:             'vici_cred.c:436,11'
          Dst:             strcaseeq
        - Src:             'vici_cred.c:440,11'
          Dst:             strcaseeq
        - Src:             'vici_cred.c:446,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:451,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:454,11'
          Dst:             linked_list_create
        - Src:             'vici_cred.c:458,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:462,31'
          Dst:             identification_create_from_string
        - Src:             'vici_cred.c:468,9'
          Dst:             strlen
        - Src:             'vici_cred.c:471,4'
          Dst:             snprintf
        - Src:             'vici_cred.c:489,31'
          Dst:             chunk_create_clone
        - Src:             'vici_cred.c:489,7'
          Dst:             shared_key_create
        - Src:             'vici_cred.c:491,9'
          Dst:             create_reply
    - functionName:    _cb_load_token
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          426
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - chunk_create
        - chunk_create_clone
        - chunk_free
        - chunk_from_hex
        - create_reply
        - identification_create_from_encoding
        - linked_list_create_with_items
        - mem_cred_create
        - shared_key_create
        - snprintf
        - strlen
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:326,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:328,26'
          Dst:             strlen
        - Src:             'vici_cred.c:328,26'
          Dst:             chunk_create
        - Src:             'vici_cred.c:328,11'
          Dst:             chunk_from_hex
        - Src:             'vici_cred.c:335,42'
          Dst:             strlen
        - Src:             'vici_cred.c:335,42'
          Dst:             chunk_create
        - Src:             'vici_cred.c:335,42'
          Dst:             chunk_create_clone
        - Src:             'vici_cred.c:335,12'
          Dst:             shared_key_create
        - Src:             'vici_cred.c:336,11'
          Dst:             identification_create_from_encoding
        - Src:             'vici_cred.c:337,9'
          Dst:             mem_cred_create
        - Src:             'vici_cred.c:363,3'
          Dst:             chunk_free
        - Src:             'vici_cred.c:365,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:367,12'
          Dst:             vici_builder_create
        - Src:             'vici_cred.c:371,3'
          Dst:             snprintf
        - Src:             'vici_cred.c:378,11'
          Dst:             identification_create_from_encoding
        - Src:             'vici_cred.c:380,10'
          Dst:             linked_list_create_with_items
        - Src:             'vici_cred.c:389,2'
          Dst:             chunk_free
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_get_keys
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          103
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:293,12'
          Dst:             vici_builder_create
    - functionName:    _cb_unload_key
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          114
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - chunk_free
        - chunk_from_hex
        - create_reply
        - snprintf
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:268,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:270,25'
          Dst:             strlen
        - Src:             'vici_cred.c:270,25'
          Dst:             chunk_create
        - Src:             'vici_cred.c:270,10'
          Dst:             chunk_from_hex
        - Src:             'vici_cred.c:271,2'
          Dst:             snprintf
        - Src:             'vici_cred.c:281,2'
          Dst:             chunk_free
        - Src:             'vici_cred.c:282,9'
          Dst:             create_reply
    - functionName:    _cb_load_key
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          189
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - create_reply
        - enum_from_name_as_int
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:226,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:228,7'
          Dst:             enum_from_name_as_int
        - Src:             'vici_cred.c:230,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:235,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:241,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:246,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:251,12'
          Dst:             vici_builder_create
    - functionName:    _cb_load_cert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          332
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - create_reply
        - enum_from_name_as_int
        - vici_cert_info_from_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:147,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:149,6'
          Dst:             enum_from_name_as_int
        - Src:             'vici_cred.c:154,9'
          Dst:             enum_from_name_as_int
        - Src:             'vici_cred.c:156,12'
          Dst:             create_reply
        - Src:             'vici_cred.c:160,12'
          Dst:             vici_cert_info_from_str
        - Src:             'vici_cred.c:162,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:168,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:180,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:192,11'
          Dst:             create_reply
        - Src:             'vici_cred.c:199,11'
          Dst:             create_reply
        - Src:             'vici_cred.c:211,9'
          Dst:             create_reply
    - functionName:    _cb_flush_certs
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          102
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - create_reply
        - enum_from_name_as_int
        - vici_cert_info_from_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:549,14'
          Dst:             enum_from_name_as_int
        - Src:             'vici_cred.c:550,8'
          Dst:             vici_cert_info_from_str
        - Src:             'vici_cred.c:552,10'
          Dst:             create_reply
        - Src:             'vici_cred.c:556,9'
          Dst:             create_reply
    - functionName:    _cb_clear_creds
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 532
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          64
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:538,9'
          Dst:             create_reply
    - functionName:    manage_command
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 561
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 599
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          69
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_commands
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:592,2'
          Dst:             manage_commands
    - functionName:    manage_commands
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          66
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_command
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:571,2'
          Dst:             manage_command
        - Src:             'vici_cred.c:572,2'
          Dst:             manage_command
        - Src:             'vici_cred.c:573,2'
          Dst:             manage_command
        - Src:             'vici_cred.c:574,2'
          Dst:             manage_command
        - Src:             'vici_cred.c:575,2'
          Dst:             manage_command
        - Src:             'vici_cred.c:576,2'
          Dst:             manage_command
        - Src:             'vici_cred.c:577,2'
          Dst:             manage_command
        - Src:             'vici_cred.c:578,2'
          Dst:             manage_command
        - Src:             'vici_cred.c:579,2'
          Dst:             manage_command
        - Src:             'vici_cred.c:580,2'
          Dst:             manage_command
    - functionName:    add_cert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 585
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cache_cert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          150
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_to_hex
        - chunk_write
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:92,10'
          Dst:             chunk_to_hex
        - Src:             'vici_cred.c:93,4'
          Dst:             snprintf
        - Src:             'vici_cred.c:99,9'
          Dst:             chunk_write
    - functionName:    vici_cred_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 637
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          120
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - manage_commands
        - mem_cred_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_cred.c:609,2'
          Dst:             mem_cred_create
        - Src:             'vici_cred.c:609,2'
          Dst:             mem_cred_create
        - Src:             'vici_cred.c:635,2'
          Dst:             manage_commands
    - functionName:    _cb_disconnect
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          141
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_create_enumerator
        - array_remove_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_dispatcher.c:393,9'
          Dst:             array_create_enumerator
        - Src:             'vici_dispatcher.c:398,5'
          Dst:             array_remove_at
    - functionName:    _cb_connect_
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unregister_event
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          150
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - array_create_enumerator
        - array_remove_at
        - send_op
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_dispatcher.c:204,17'
          Dst:             array_create_enumerator
        - Src:             'vici_dispatcher.c:209,6'
          Dst:             array_remove_at
        - Src:             'vici_dispatcher.c:225,3'
          Dst:             send_op
        - Src:             'vici_dispatcher.c:229,3'
          Dst:             send_op
    - functionName:    send_op
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          196
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - bio_writer_create
        - chunk_create
        - strlen
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_dispatcher.c:126,28'
          Dst:             strlen
        - Src:             'vici_dispatcher.c:132,11'
          Dst:             bio_writer_create
        - Src:             'vici_dispatcher.c:136,31'
          Dst:             strlen
        - Src:             'vici_dispatcher.c:136,31'
          Dst:             chunk_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    register_event
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          109
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_insert
        - send_op
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_dispatcher.c:164,4'
          Dst:             array_insert
        - Src:             'vici_dispatcher.c:174,3'
          Dst:             send_op
        - Src:             'vici_dispatcher.c:179,3'
          Dst:             send_op
    - functionName:    _cb_inbound
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          200
      EdgeCount:       41
      CyclomaticComplexity: 8
      functionsReached:
        - bio_reader_create
        - process_request
        - register_event
        - thread_cleanup_pop
        - thread_cleanup_push
        - unregister_event
        - vici_stringify
      functionUses:    0
      BranchProfiles:
        - Branch String:   'vici_dispatcher.c:318,3'
          Branch Sides:    []
      Callsites:
        - Src:             'vici_dispatcher.c:315,11'
          Dst:             bio_reader_create
        - Src:             'vici_dispatcher.c:322,6'
          Dst:             vici_stringify
        - Src:             'vici_dispatcher.c:324,6'
          Dst:             register_event
        - Src:             'vici_dispatcher.c:333,6'
          Dst:             vici_stringify
        - Src:             'vici_dispatcher.c:335,6'
          Dst:             unregister_event
        - Src:             'vici_dispatcher.c:344,6'
          Dst:             vici_stringify
        - Src:             'vici_dispatcher.c:346,6'
          Dst:             thread_cleanup_push
        - Src:             'vici_dispatcher.c:347,6'
          Dst:             process_request
        - Src:             'vici_dispatcher.c:348,6'
          Dst:             thread_cleanup_pop
    - functionName:    process_request
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          158
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - send_op
        - thread_cleanup_pop
        - thread_cleanup_push
        - vici_message_create_from_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_dispatcher.c:287,3'
          Dst:             thread_cleanup_push
        - Src:             'vici_dispatcher.c:289,22'
          Dst:             vici_message_create_from_data
        - Src:             'vici_dispatcher.c:292,3'
          Dst:             thread_cleanup_pop
        - Src:             'vici_dispatcher.c:296,4'
          Dst:             send_op
        - Src:             'vici_dispatcher.c:303,3'
          Dst:             send_op
    - functionName:    _cb_release_command
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          89
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raise_event
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          185
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - array_create_enumerator
        - send_op
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_dispatcher.c:512,16'
          Dst:             array_create_enumerator
        - Src:             'vici_dispatcher.c:517,5'
          Dst:             send_op
    - functionName:    has_event_listeners
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          74
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_count
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_dispatcher.c:485,12'
          Dst:             array_count
    - functionName:    manage_event
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 443
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          146
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_create
        - array_destroy
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_dispatcher.c:449,3'
          Dst:             strdup
        - Src:             'vici_dispatcher.c:449,3'
          Dst:             array_create
        - Src:             'vici_dispatcher.c:465,3'
          Dst:             array_destroy
    - functionName:    manage_command
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          146
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_dispatcher.c:418,3'
          Dst:             strdup
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          83
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vici_dispatcher_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_dispatcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          83
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - condvar_create
        - destroy
        - hashtable_create
        - hashtable_equals_str
        - hashtable_hash_str
        - mutex_create
        - vici_socket_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_dispatcher.c:551,2'
          Dst:             hashtable_create
        - Src:             'vici_dispatcher.c:551,2'
          Dst:             hashtable_hash_str
        - Src:             'vici_dispatcher.c:551,2'
          Dst:             hashtable_equals_str
        - Src:             'vici_dispatcher.c:551,2'
          Dst:             hashtable_create
        - Src:             'vici_dispatcher.c:551,2'
          Dst:             hashtable_hash_str
        - Src:             'vici_dispatcher.c:551,2'
          Dst:             hashtable_equals_str
        - Src:             'vici_dispatcher.c:551,2'
          Dst:             mutex_create
        - Src:             'vici_dispatcher.c:551,2'
          Dst:             condvar_create
        - Src:             'vici_dispatcher.c:565,17'
          Dst:             vici_socket_create
        - Src:             'vici_dispatcher.c:568,3'
          Dst:             destroy
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - manage_commands
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_logger.c:155,2'
          Dst:             manage_commands
    - functionName:    manage_commands
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_level
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raise_events
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          106
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    queue_message
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - callback_job_create
        - raise_events
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_logger.c:90,6'
          Dst:             callback_job_create
        - Src:             'vici_logger.c:90,6'
          Dst:             raise_events
    - functionName:    log_
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          178
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - queue_message
        - vici_builder_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_logger.c:112,13'
          Dst:             vici_builder_create
        - Src:             'vici_logger.c:128,4'
          Dst:             queue_message
    - functionName:    vici_logger_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_logger.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - manage_commands
        - mutex_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_logger.c:168,2'
          Dst:             linked_list_create
        - Src:             'vici_logger.c:168,2'
          Dst:             mutex_create
        - Src:             'vici_logger.c:181,2'
          Dst:             manage_commands
    - functionName:    destroy_request_chunk
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_clear
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:488,2'
          Dst:             chunk_clear
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_process_queue
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          116
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_remove
        - destroy_request_chunk
        - find_entry
        - put_entry
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:505,11'
          Dst:             find_entry
        - Src:             'vici_socket.c:512,11'
          Dst:             array_remove
        - Src:             'vici_socket.c:518,3'
          Dst:             put_entry
        - Src:             'vici_socket.c:525,3'
          Dst:             thread_cleanup_push
        - Src:             'vici_socket.c:525,3'
          Dst:             destroy_request_chunk
        - Src:             'vici_socket.c:527,3'
          Dst:             thread_cleanup_pop
    - functionName:    find_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          255
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          91
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    untoh32
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/byteorder.h:177,9'
          Dst:             ntohl
    - functionName:    do_read
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          265
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - __errno_location
        - chunk_create
        - snprintf
        - strerror_safe
        - untoh32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:435,8'
          Dst:             __errno_location
        - Src:             'vici_socket.c:440,7'
          Dst:             __errno_location
        - Src:             'vici_socket.c:440,7'
          Dst:             strerror_safe
        - Src:             'vici_socket.c:439,4'
          Dst:             snprintf
        - Src:             'vici_socket.c:446,13'
          Dst:             untoh32
        - Src:             'vici_socket.c:449,5'
          Dst:             snprintf
        - Src:             'vici_socket.c:454,20'
          Dst:             chunk_create
        - Src:             'vici_socket.c:465,4'
          Dst:             snprintf
        - Src:             'vici_socket.c:470,8'
          Dst:             __errno_location
        - Src:             'vici_socket.c:474,52'
          Dst:             __errno_location
        - Src:             'vici_socket.c:474,52'
          Dst:             strerror_safe
        - Src:             'vici_socket.c:474,4'
          Dst:             snprintf
    - functionName:    _cb_on_read
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          180
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - array_insert
        - callback_job_cancel_thread
        - callback_job_create
        - disconnect
        - do_read
        - find_entry
        - put_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:543,10'
          Dst:             find_entry
        - Src:             'vici_socket.c:546,9'
          Dst:             do_read
        - Src:             'vici_socket.c:550,4'
          Dst:             disconnect
        - Src:             'vici_socket.c:555,4'
          Dst:             array_insert
        - Src:             'vici_socket.c:566,16'
          Dst:             callback_job_create
        - Src:             'vici_socket.c:566,16'
          Dst:             callback_job_cancel_thread
        - Src:             'vici_socket.c:571,3'
          Dst:             put_entry
    - functionName:    disconnect
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - callback_job_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:313,12'
          Dst:             callback_job_create
    - functionName:    _cb_disconnect_async
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - remove_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:292,10'
          Dst:             remove_entry
    - functionName:    remove_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          183
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_destroy_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          96
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_destroy
        - array_remove
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:149,9'
          Dst:             array_remove
        - Src:             'vici_socket.c:151,3'
          Dst:             chunk_clear
        - Src:             'vici_socket.c:154,2'
          Dst:             array_destroy
        - Src:             'vici_socket.c:155,9'
          Dst:             array_remove
        - Src:             'vici_socket.c:157,3'
          Dst:             chunk_clear
        - Src:             'vici_socket.c:159,2'
          Dst:             array_destroy
        - Src:             'vici_socket.c:160,2'
          Dst:             chunk_clear
    - functionName:    _cb_on_accept
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 587
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          127
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create
        - condvar_create
        - put_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:593,2'
          Dst:             array_create
        - Src:             'vici_socket.c:593,2'
          Dst:             array_create
        - Src:             'vici_socket.c:593,2'
          Dst:             condvar_create
        - Src:             'vici_socket.c:610,2'
          Dst:             put_entry
    - functionName:    _cb_flush_messages
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 682
      functionLinenumberEnd: 697
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - do_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:691,8'
          Dst:             do_write
    - functionName:    do_write
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          223
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - array_get
        - array_remove
        - chunk_clear
        - snprintf
        - strerror_safe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:325,9'
          Dst:             array_get
        - Src:             'vici_socket.c:338,9'
          Dst:             __errno_location
        - Src:             'vici_socket.c:343,8'
          Dst:             __errno_location
        - Src:             'vici_socket.c:343,8'
          Dst:             strerror_safe
        - Src:             'vici_socket.c:342,5'
          Dst:             snprintf
        - Src:             'vici_socket.c:356,5'
          Dst:             snprintf
        - Src:             'vici_socket.c:361,9'
          Dst:             __errno_location
        - Src:             'vici_socket.c:365,54'
          Dst:             __errno_location
        - Src:             'vici_socket.c:365,54'
          Dst:             strerror_safe
        - Src:             'vici_socket.c:365,5'
          Dst:             snprintf
        - Src:             'vici_socket.c:371,7'
          Dst:             array_remove
        - Src:             'vici_socket.c:373,4'
          Dst:             chunk_clear
    - functionName:    _cb_on_write
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          94
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - array_count
        - disconnect
        - do_write
        - find_entry
        - put_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:390,10'
          Dst:             find_entry
        - Src:             'vici_socket.c:393,9'
          Dst:             do_write
        - Src:             'vici_socket.c:397,10'
          Dst:             array_count
        - Src:             'vici_socket.c:402,4'
          Dst:             disconnect
        - Src:             'vici_socket.c:404,3'
          Dst:             put_entry
    - functionName:    _cb_enable_writer
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 633
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_entry
        - put_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:627,10'
          Dst:             find_entry
        - Src:             'vici_socket.c:631,3'
          Dst:             put_entry
    - functionName:    htoun32
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/../../../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/byteorder.h:132,9'
          Dst:             htonl
    - functionName:    send_
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          131
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_count
        - array_insert
        - callback_job_create
        - chunk_clear
        - find_entry
        - htoun32
        - put_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:645,11'
          Dst:             find_entry
        - Src:             'vici_socket.c:651,4'
          Dst:             htoun32
        - Src:             'vici_socket.c:653,4'
          Dst:             array_insert
        - Src:             'vici_socket.c:654,8'
          Dst:             array_count
        - Src:             'vici_socket.c:661,16'
          Dst:             callback_job_create
        - Src:             'vici_socket.c:664,4'
          Dst:             put_entry
        - Src:             'vici_socket.c:669,4'
          Dst:             chunk_clear
        - Src:             'vici_socket.c:676,3'
          Dst:             chunk_clear
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 707
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          75
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vici_socket_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/vici/vici_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 743
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          111
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - destroy
        - linked_list_create
        - mutex_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'vici_socket.c:718,2'
          Dst:             linked_list_create
        - Src:             'vici_socket.c:718,2'
          Dst:             mutex_create
        - Src:             'vici_socket.c:736,3'
          Dst:             destroy
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - attributes_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'updown_handler.c:207,2'
          Dst:             attributes_destroy
    - functionName:    attributes_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_dns_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          145
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - enumerator_create_cleaner
        - enumerator_create_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'updown_handler.c:181,10'
          Dst:             enumerator_create_empty
        - Src:             'updown_handler.c:191,11'
          Dst:             enumerator_create_cleaner
        - Src:             'updown_handler.c:199,9'
          Dst:             enumerator_create_empty
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    release
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          266
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - attributes_destroy
        - chunk_equals
      functionUses:    0
      BranchProfiles:
        - Branch String:   'updown_handler.c:124,2'
          Branch Sides:    []
      Callsites:
        - Src:             'updown_handler.c:146,6'
          Dst:             chunk_equals
        - Src:             'updown_handler.c:158,5'
          Dst:             attributes_destroy
    - functionName:    handle
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          200
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - host_create_from_chunk
        - linked_list_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'updown_handler.c:73,2'
          Branch Sides:    []
      Callsites:
        - Src:             'updown_handler.c:76,11'
          Dst:             host_create_from_chunk
        - Src:             'updown_handler.c:79,11'
          Dst:             host_create_from_chunk
        - Src:             'updown_handler.c:102,3'
          Dst:             linked_list_create
    - functionName:    updown_handler_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'updown_handler.c:218,2'
          Dst:             linked_list_create
        - Src:             'updown_handler.c:218,2'
          Dst:             rwlock_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    traffic_selector_icmp_code
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/../../../../src/libstrongswan/selectors/traffic_selector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    traffic_selector_icmp_type
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/../../../../src/libstrongswan/selectors/traffic_selector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_env
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    push_dns_env
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          110
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - push_env
      functionUses:    1
      BranchProfiles:
        - Branch String:   'updown_listener.c:156,4'
          Branch Sides:    []
      Callsites:
        - Src:             'updown_listener.c:159,6'
          Dst:             push_env
        - Src:             'updown_listener.c:162,6'
          Dst:             push_env
    - functionName:    push_env
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          79
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - vasprintf
      functionUses:    31
      BranchProfiles:  []
      Callsites:
        - Src:             'updown_listener.c:119,6'
          Dst:             vasprintf
    - functionName:    vasprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    push_vip_env
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          124
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - push_env
      functionUses:    2
      BranchProfiles:
        - Branch String:   'updown_listener.c:192,3'
          Branch Sides:    []
      Callsites:
        - Src:             'updown_listener.c:189,4'
          Dst:             push_env
        - Src:             'updown_listener.c:195,5'
          Dst:             push_env
        - Src:             'updown_listener.c:199,5'
          Dst:             push_env
    - functionName:    get_port
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          234
      EdgeCount:       35
      CyclomaticComplexity: 8
      functionsReached:
        - snprintf
        - traffic_selector_icmp_code
        - traffic_selector_icmp_type
      functionUses:    2
      BranchProfiles:
        - Branch String:   'updown_listener.c:219,2'
          Branch Sides:    []
      Callsites:
        - Src:             'updown_listener.c:226,15'
          Dst:             traffic_selector_icmp_type
        - Src:             'updown_listener.c:227,12'
          Dst:             traffic_selector_icmp_code
        - Src:             'updown_listener.c:225,4'
          Dst:             snprintf
        - Src:             'updown_listener.c:243,3'
          Dst:             snprintf
        - Src:             'updown_listener.c:247,3'
          Dst:             snprintf
    - functionName:    uncache_iface
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cache_iface
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'updown_listener.c:73,17'
          Dst:             strdup
    - functionName:    invoke_once
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          689
      EdgeCount:       96
      CyclomaticComplexity: 25
      functionsReached:
        - cache_iface
        - close
        - fclose
        - fdopen
        - ferror
        - fgets
        - free_env
        - get_port
        - getenv
        - process_start_shell
        - push_dns_env
        - push_env
        - push_vip_env
        - strlen
        - uncache_iface
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'updown_listener.c:274,43'
          Dst:             getenv
        - Src:             'updown_listener.c:274,2'
          Dst:             push_env
        - Src:             'updown_listener.c:275,2'
          Dst:             push_env
        - Src:             'updown_listener.c:285,2'
          Dst:             push_env
        - Src:             'updown_listener.c:289,2'
          Dst:             push_env
        - Src:             'updown_listener.c:297,4'
          Dst:             cache_iface
        - Src:             'updown_listener.c:307,11'
          Dst:             uncache_iface
        - Src:             'updown_listener.c:309,2'
          Dst:             push_env
        - Src:             'updown_listener.c:311,2'
          Dst:             push_env
        - Src:             'updown_listener.c:313,2'
          Dst:             push_env
        - Src:             'updown_listener.c:315,2'
          Dst:             push_env
        - Src:             'updown_listener.c:317,2'
          Dst:             push_env
        - Src:             'updown_listener.c:318,2'
          Dst:             push_env
        - Src:             'updown_listener.c:324,2'
          Dst:             push_env
        - Src:             'updown_listener.c:327,5'
          Dst:             get_port
        - Src:             'updown_listener.c:326,2'
          Dst:             push_env
        - Src:             'updown_listener.c:328,2'
          Dst:             push_env
        - Src:             'updown_listener.c:330,2'
          Dst:             push_env
        - Src:             'updown_listener.c:331,2'
          Dst:             push_env
        - Src:             'updown_listener.c:338,2'
          Dst:             push_env
        - Src:             'updown_listener.c:341,5'
          Dst:             get_port
        - Src:             'updown_listener.c:340,2'
          Dst:             push_env
        - Src:             'updown_listener.c:342,2'
          Dst:             push_env
        - Src:             'updown_listener.c:347,3'
          Dst:             push_env
        - Src:             'updown_listener.c:350,2'
          Dst:             push_vip_env
        - Src:             'updown_listener.c:351,2'
          Dst:             push_vip_env
        - Src:             'updown_listener.c:355,3'
          Dst:             push_env
        - Src:             'updown_listener.c:361,3'
          Dst:             push_env
        - Src:             'updown_listener.c:367,3'
          Dst:             push_env
        - Src:             'updown_listener.c:372,3'
          Dst:             push_env
        - Src:             'updown_listener.c:376,3'
          Dst:             push_env
        - Src:             'updown_listener.c:381,3'
          Dst:             push_env
        - Src:             'updown_listener.c:383,2'
          Dst:             push_dns_env
        - Src:             'updown_listener.c:386,3'
          Dst:             push_env
        - Src:             'updown_listener.c:389,12'
          Dst:             process_start_shell
        - Src:             'updown_listener.c:393,11'
          Dst:             fdopen
        - Src:             'updown_listener.c:400,9'
          Dst:             fgets
        - Src:             'updown_listener.c:402,10'
          Dst:             ferror
        - Src:             'updown_listener.c:410,23'
          Dst:             strlen
        - Src:             'updown_listener.c:418,4'
          Dst:             fclose
        - Src:             'updown_listener.c:422,4'
          Dst:             close
        - Src:             'updown_listener.c:427,2'
          Dst:             free_env
    - functionName:    getenv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    child_updown
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          105
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - invoke_once
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'updown_listener.c:449,4'
          Dst:             invoke_once
    - functionName:    updown_listener_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/updown/updown_listener.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'updown_listener.c:470,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 769
      functionLinenumberEnd: 774
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_identifier
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 752
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_identifier
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 744
      functionLinenumberEnd: 745
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_msk
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 740
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_mutual
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 765
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'eap_radius.c:757,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 721
      functionLinenumberEnd: 723
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 666
      functionLinenumberEnd: 716
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          176
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - add_radius_request_attrs
        - chunk_create
        - chunk_skip
        - eap_radius_forward_to_ike
        - eap_radius_process_attributes
        - radius2ike
        - radius_message_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'eap_radius.c:690,3'
          Branch Sides:    []
      Callsites:
        - Src:             'eap_radius.c:671,12'
          Dst:             radius_message_create
        - Src:             'eap_radius.c:672,2'
          Dst:             add_radius_request_attrs
        - Src:             'eap_radius.c:681,7'
          Dst:             chunk_create
        - Src:             'eap_radius.c:682,10'
          Dst:             chunk_skip
        - Src:             'eap_radius.c:689,3'
          Dst:             eap_radius_forward_to_ike
        - Src:             'eap_radius.c:693,9'
          Dst:             radius2ike
        - Src:             'eap_radius.c:701,5'
          Dst:             eap_radius_process_attributes
    - functionName:    add_radius_request_attrs
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          111
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - eap_radius_build_attributes
        - eap_radius_forward_from_ike
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius.c:225,10'
          Dst:             strlen
        - Src:             'eap_radius.c:225,10'
          Dst:             chunk_create
        - Src:             'eap_radius.c:226,10'
          Dst:             chunk_length
        - Src:             'eap_radius.c:226,10'
          Dst:             chunk_create_cat
        - Src:             'eap_radius.c:229,2'
          Dst:             eap_radius_build_attributes
        - Src:             'eap_radius.c:230,2'
          Dst:             eap_radius_forward_from_ike
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    radius2ike
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          136
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create_cat
        - chunk_length
        - eap_payload_create_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius.c:135,14'
          Dst:             chunk_length
        - Src:             'eap_radius.c:135,14'
          Dst:             chunk_create_cat
        - Src:             'eap_radius.c:141,20'
          Dst:             eap_payload_create_data
    - functionName:    eap_radius_process_attributes
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 653
      functionLinenumberEnd: 662
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - process_cfg_attributes
        - process_class
        - process_filter_id
        - process_timeout
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius.c:654,2'
          Dst:             process_class
        - Src:             'eap_radius.c:658,3'
          Dst:             process_filter_id
        - Src:             'eap_radius.c:660,2'
          Dst:             process_timeout
        - Src:             'eap_radius.c:661,2'
          Dst:             process_cfg_attributes
    - functionName:    process_class
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          188
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - eap_radius_accounting_add_class
        - identification_create_from_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius.c:316,10'
          Dst:             identification_create_from_data
        - Src:             'eap_radius.c:323,5'
          Dst:             eap_radius_accounting_add_class
    - functionName:    process_filter_id
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          153
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - identification_create_from_data
        - untoh32
      functionUses:    1
      BranchProfiles:
        - Branch String:   'eap_radius.c:345,3'
          Branch Sides:    []
      Callsites:
        - Src:             'eap_radius.c:354,19'
          Dst:             untoh32
        - Src:             'eap_radius.c:380,9'
          Dst:             identification_create_from_data
    - functionName:    process_timeout
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 413
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          123
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - eap_radius_accounting_start_interim
        - untoh32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius.c:404,39'
          Dst:             untoh32
        - Src:             'eap_radius.c:408,49'
          Dst:             untoh32
        - Src:             'eap_radius.c:408,5'
          Dst:             eap_radius_accounting_start_interim
    - functionName:    process_cfg_attributes
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         97
      ICount:          545
      EdgeCount:       118
      CyclomaticComplexity: 23
      functionsReached:
        - add_nameserver_attribute
        - add_unity_attribute
        - add_unity_split_attribute
        - eap_radius_provider_get
        - host_create_from_chunk
      functionUses:    1
      BranchProfiles:
        - Branch String:   'eap_radius.c:569,5'
          Branch Sides:    []
        - Branch String:   'eap_radius.c:594,8'
          Branch Sides:    []
        - Branch String:   'eap_radius.c:614,5'
          Branch Sides:    []
      Callsites:
        - Src:             'eap_radius.c:535,13'
          Dst:             eap_radius_provider_get
        - Src:             'eap_radius.c:544,12'
          Dst:             host_create_from_chunk
        - Src:             'eap_radius.c:558,5'
          Dst:             add_nameserver_attribute
        - Src:             'eap_radius.c:577,8'
          Dst:             add_nameserver_attribute
        - Src:             'eap_radius.c:587,8'
          Dst:             add_unity_attribute
        - Src:             'eap_radius.c:622,8'
          Dst:             add_nameserver_attribute
        - Src:             'eap_radius.c:640,6'
          Dst:             add_unity_split_attribute
    - functionName:    add_nameserver_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          104
      EdgeCount:       31
      CyclomaticComplexity: 17
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'eap_radius.c:443,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    add_unity_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'eap_radius.c:421,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    add_unity_split_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          301
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - bio_writer_create
        - enumerator_create_token
        - host_create_from_string
        - memset_noop
        - snprintf
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius.c:474,6'
          Dst:             snprintf
        - Src:             'eap_radius.c:479,11'
          Dst:             bio_writer_create
        - Src:             'eap_radius.c:480,15'
          Dst:             enumerator_create_token
        - Src:             'eap_radius.c:486,11'
          Dst:             strchr
        - Src:             'eap_radius.c:490,11'
          Dst:             host_create_from_string
        - Src:             'eap_radius.c:494,11'
          Dst:             host_create_from_string
        - Src:             'eap_radius.c:496,9'
          Dst:             host_create_from_string
        - Src:             'eap_radius.c:507,3'
          Dst:             memset_noop
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    untoh32
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/byteorder.h:177,9'
          Dst:             ntohl
    - functionName:    eap_radius_build_attributes
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          341
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - eap_radius_accounting_session_id
        - htonl
        - snprintf
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'eap_radius.c:181,3'
          Branch Sides:    []
      Callsites:
        - Src:             'eap_radius.c:165,10'
          Dst:             htonl
        - Src:             'eap_radius.c:166,43'
          Dst:             chunk_create
        - Src:             'eap_radius.c:168,10'
          Dst:             htonl
        - Src:             'eap_radius.c:169,42'
          Dst:             chunk_create
        - Src:             'eap_radius.c:174,11'
          Dst:             htonl
        - Src:             'eap_radius.c:175,39'
          Dst:             chunk_create
        - Src:             'eap_radius.c:177,7'
          Dst:             strlen
        - Src:             'eap_radius.c:177,7'
          Dst:             chunk_create
        - Src:             'eap_radius.c:201,3'
          Dst:             snprintf
        - Src:             'eap_radius.c:202,48'
          Dst:             strlen
        - Src:             'eap_radius.c:202,48'
          Dst:             chunk_create
        - Src:             'eap_radius.c:204,3'
          Dst:             snprintf
        - Src:             'eap_radius.c:205,49'
          Dst:             strlen
        - Src:             'eap_radius.c:205,49'
          Dst:             chunk_create
        - Src:             'eap_radius.c:207,16'
          Dst:             eap_radius_accounting_session_id
        - Src:             'eap_radius.c:211,8'
          Dst:             strlen
        - Src:             'eap_radius.c:211,8'
          Dst:             chunk_create
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_eap_identity
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          122
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - htons
        - memcpy_noop
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius.c:105,41'
          Dst:             strlen
        - Src:             'eap_radius.c:105,11'
          Dst:             chunk_create
        - Src:             'eap_radius.c:111,16'
          Dst:             htons
        - Src:             'eap_radius.c:113,2'
          Dst:             memcpy_noop
        - Src:             'eap_radius.c:114,2'
          Dst:             memcpy_noop
        - Src:             'eap_radius.c:116,41'
          Dst:             chunk_create
    - functionName:    initiate
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          127
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - add_eap_identity
        - add_radius_request_attrs
        - eap_radius_forward_to_ike
        - eap_radius_handle_timeout
        - radius2ike
        - radius_message_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'eap_radius.c:255,3'
          Branch Sides:    []
      Callsites:
        - Src:             'eap_radius.c:239,12'
          Dst:             radius_message_create
        - Src:             'eap_radius.c:240,2'
          Dst:             add_radius_request_attrs
        - Src:             'eap_radius.c:248,3'
          Dst:             add_eap_identity
        - Src:             'eap_radius.c:254,3'
          Dst:             eap_radius_forward_to_ike
        - Src:             'eap_radius.c:258,9'
          Dst:             radius2ike
        - Src:             'eap_radius.c:277,3'
          Dst:             eap_radius_handle_timeout
    - functionName:    eap_radius_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius.c'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 814
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          147
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - eap_radius_create_client
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius.c:805,17'
          Dst:             eap_radius_create_client
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1052
      functionLinenumberEnd: 1058
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    assign_vips
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 936
      functionLinenumberEnd: 942
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - send_start
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:940,3'
          Dst:             send_start
    - functionName:    send_start
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 738
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          232
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - add_class_attributes
        - add_ike_sa_parameters
        - chunk_create
        - eap_radius_handle_timeout
        - get_or_create_entry
        - has_vip
        - htonl
        - radius_message_create
        - schedule_interim
        - send_message
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:743,29'
          Dst:             has_vip
        - Src:             'eap_radius_accounting.c:750,10'
          Dst:             get_or_create_entry
        - Src:             'eap_radius_accounting.c:759,12'
          Dst:             radius_message_create
        - Src:             'eap_radius_accounting.c:760,10'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:761,46'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:763,31'
          Dst:             strlen
        - Src:             'eap_radius_accounting.c:763,6'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:764,2'
          Dst:             add_class_attributes
        - Src:             'eap_radius_accounting.c:776,2'
          Dst:             schedule_interim
        - Src:             'eap_radius_accounting.c:779,2'
          Dst:             add_ike_sa_parameters
        - Src:             'eap_radius_accounting.c:780,7'
          Dst:             send_message
        - Src:             'eap_radius_accounting.c:782,3'
          Dst:             eap_radius_handle_timeout
    - functionName:    has_vip
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_or_create_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 537
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          104
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - snprintf
        - time_monotonic
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:523,9'
          Dst:             time_monotonic
        - Src:             'eap_radius_accounting.c:534,3'
          Dst:             snprintf
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    28
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_class_attributes
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:503,15'
          Dst:             array_create_enumerator
    - functionName:    schedule_interim
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 698
      functionLinenumberEnd: 716
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          88
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - callback_job_cancel_thread
        - callback_job_create_with_prio
        - destroy_interim_data
        - send_interim
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:711,12'
          Dst:             callback_job_create_with_prio
        - Src:             'eap_radius_accounting.c:711,12'
          Dst:             send_interim
        - Src:             'eap_radius_accounting.c:711,12'
          Dst:             destroy_interim_data
        - Src:             'eap_radius_accounting.c:711,12'
          Dst:             callback_job_cancel_thread
    - functionName:    add_ike_sa_parameters
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          396
      EdgeCount:       29
      CyclomaticComplexity: 16
      functionsReached:
        - chunk_create
        - htonl
        - snprintf
        - strlen
      functionUses:    3
      BranchProfiles:
        - Branch String:   'eap_radius_accounting.c:424,2'
          Branch Sides:    []
        - Branch String:   'eap_radius_accounting.c:446,3'
          Branch Sides:    []
      Callsites:
        - Src:             'eap_radius_accounting.c:411,10'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:412,43'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:414,10'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:415,42'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:417,10'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:418,38'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:420,6'
          Dst:             strlen
        - Src:             'eap_radius_accounting.c:420,6'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:434,2'
          Dst:             snprintf
        - Src:             'eap_radius_accounting.c:435,47'
          Dst:             strlen
        - Src:             'eap_radius_accounting.c:435,47'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:437,2'
          Dst:             snprintf
        - Src:             'eap_radius_accounting.c:438,48'
          Dst:             strlen
        - Src:             'eap_radius_accounting.c:438,48'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:440,2'
          Dst:             snprintf
        - Src:             'eap_radius_accounting.c:441,39'
          Dst:             strlen
        - Src:             'eap_radius_accounting.c:441,39'
          Dst:             chunk_create
    - functionName:    send_message
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - eap_radius_create_client
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:384,11'
          Dst:             eap_radius_create_client
    - functionName:    send_interim
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          559
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - add_class_attributes
        - add_ike_sa_parameters
        - add_usage
        - array_bsearch
        - array_create_enumerator
        - array_destroy_function
        - array_remove_at
        - chunk_create
        - collect_stats
        - eap_radius_handle_timeout
        - htonl
        - radius_message_create
        - sa_find
        - schedule_interim
        - send_message
        - strlen
        - sub_usage
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:583,10'
          Dst:             collect_stats
        - Src:             'eap_radius_accounting.c:584,12'
          Dst:             radius_message_create
        - Src:             'eap_radius_accounting.c:585,10'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:586,46'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:587,2'
          Dst:             add_ike_sa_parameters
        - Src:             'eap_radius_accounting.c:596,25'
          Dst:             time_monotonic
        - Src:             'eap_radius_accounting.c:598,16'
          Dst:             array_create_enumerator
        - Src:             'eap_radius_accounting.c:601,8'
          Dst:             array_bsearch
        - Src:             'eap_radius_accounting.c:601,8'
          Dst:             sa_find
        - Src:             'eap_radius_accounting.c:611,5'
          Dst:             add_usage
        - Src:             'eap_radius_accounting.c:612,5'
          Dst:             array_remove_at
        - Src:             'eap_radius_accounting.c:618,16'
          Dst:             array_create_enumerator
        - Src:             'eap_radius_accounting.c:621,8'
          Dst:             array_bsearch
        - Src:             'eap_radius_accounting.c:621,8'
          Dst:             sa_find
        - Src:             'eap_radius_accounting.c:624,5'
          Dst:             sub_usage
        - Src:             'eap_radius_accounting.c:629,5'
          Dst:             sub_usage
        - Src:             'eap_radius_accounting.c:630,5'
          Dst:             array_remove_at
        - Src:             'eap_radius_accounting.c:636,3'
          Dst:             add_usage
        - Src:             'eap_radius_accounting.c:639,32'
          Dst:             strlen
        - Src:             'eap_radius_accounting.c:639,7'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:640,3'
          Dst:             add_class_attributes
        - Src:             'eap_radius_accounting.c:642,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:643,49'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:644,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:648,8'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:650,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:651,50'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:653,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:654,48'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:655,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:659,8'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:661,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:662,49'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:664,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:665,48'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:667,3'
          Dst:             schedule_interim
        - Src:             'eap_radius_accounting.c:675,2'
          Dst:             array_destroy_function
        - Src:             'eap_radius_accounting.c:679,8'
          Dst:             send_message
        - Src:             'eap_radius_accounting.c:685,5'
          Dst:             eap_radius_handle_timeout
    - functionName:    destroy_interim_data
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    collect_stats
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          131
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_usage
        - array_create
        - array_insert
        - array_sort
        - sa_sort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:299,10'
          Dst:             array_create
        - Src:             'eap_radius_accounting.c:306,3'
          Dst:             array_insert
        - Src:             'eap_radius_accounting.c:307,3'
          Dst:             array_sort
        - Src:             'eap_radius_accounting.c:307,3'
          Dst:             sa_sort
        - Src:             'eap_radius_accounting.c:316,4'
          Dst:             add_usage
    - functionName:    sa_find
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sa_sort
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:237,9'
          Dst:             sa_sort
    - functionName:    add_usage
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          42
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sub_usage
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          42
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sa_sort
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clone_sa
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    children_migrate
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 994
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          218
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - array_bsearch
        - array_create_enumerator
        - array_destroy_function
        - array_insert_create
        - array_sort
        - clone_sa
        - collect_stats
        - get_or_create_entry
        - sa_find
        - sa_sort
        - update_sa
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:1004,10'
          Dst:             collect_stats
        - Src:             'eap_radius_accounting.c:1009,15'
          Dst:             get_or_create_entry
        - Src:             'eap_radius_accounting.c:1010,16'
          Dst:             array_create_enumerator
        - Src:             'eap_radius_accounting.c:1015,8'
          Dst:             array_bsearch
        - Src:             'eap_radius_accounting.c:1015,8'
          Dst:             sa_find
        - Src:             'eap_radius_accounting.c:1017,14'
          Dst:             clone_sa
        - Src:             'eap_radius_accounting.c:1018,5'
          Dst:             array_insert_create
        - Src:             'eap_radius_accounting.c:1019,5'
          Dst:             array_sort
        - Src:             'eap_radius_accounting.c:1019,5'
          Dst:             sa_sort
        - Src:             'eap_radius_accounting.c:1025,14'
          Dst:             clone_sa
        - Src:             'eap_radius_accounting.c:1026,5'
          Dst:             array_insert_create
        - Src:             'eap_radius_accounting.c:1027,5'
          Dst:             array_sort
        - Src:             'eap_radius_accounting.c:1027,5'
          Dst:             sa_sort
        - Src:             'eap_radius_accounting.c:1029,5'
          Dst:             update_sa
        - Src:             'eap_radius_accounting.c:1035,2'
          Dst:             array_destroy_function
    - functionName:    update_sa
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_bsearch
        - array_insert_create
        - array_sort
        - sa_find
        - sa_sort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:248,6'
          Dst:             array_bsearch
        - Src:             'eap_radius_accounting.c:248,6'
          Dst:             sa_find
        - Src:             'eap_radius_accounting.c:253,3'
          Dst:             array_insert_create
        - Src:             'eap_radius_accounting.c:254,3'
          Dst:             array_sort
        - Src:             'eap_radius_accounting.c:254,3'
          Dst:             sa_sort
    - functionName:    child_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 977
      functionLinenumberEnd: 988
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          80
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cleanup_sas
        - update_usage
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:980,2'
          Dst:             update_usage
        - Src:             'eap_radius_accounting.c:985,3'
          Dst:             cleanup_sas
    - functionName:    update_usage
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          102
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - update_sa
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:277,3'
          Dst:             update_sa
    - functionName:    cleanup_sas
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          178
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - add_usage
        - array_bsearch
        - array_create
        - array_create_enumerator
        - array_destroy_function
        - array_insert
        - array_remove_at
        - array_sort
        - sa_find
        - sa_sort
        - sub_usage
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:334,8'
          Dst:             array_create
        - Src:             'eap_radius_accounting.c:341,3'
          Dst:             array_insert
        - Src:             'eap_radius_accounting.c:342,3'
          Dst:             array_sort
        - Src:             'eap_radius_accounting.c:342,3'
          Dst:             sa_sort
        - Src:             'eap_radius_accounting.c:346,15'
          Dst:             array_create_enumerator
        - Src:             'eap_radius_accounting.c:349,7'
          Dst:             array_bsearch
        - Src:             'eap_radius_accounting.c:349,7'
          Dst:             sa_find
        - Src:             'eap_radius_accounting.c:353,4'
          Dst:             add_usage
        - Src:             'eap_radius_accounting.c:354,4'
          Dst:             array_remove_at
        - Src:             'eap_radius_accounting.c:359,15'
          Dst:             array_create_enumerator
        - Src:             'eap_radius_accounting.c:362,7'
          Dst:             array_bsearch
        - Src:             'eap_radius_accounting.c:362,7'
          Dst:             sa_find
        - Src:             'eap_radius_accounting.c:365,4'
          Dst:             sub_usage
        - Src:             'eap_radius_accounting.c:366,4'
          Dst:             array_remove_at
        - Src:             'eap_radius_accounting.c:371,2'
          Dst:             array_destroy_function
    - functionName:    child_updown
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1042
      functionLinenumberEnd: 1047
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - update_usage
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:1045,3'
          Dst:             update_usage
    - functionName:    ike_rekey
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 947
      functionLinenumberEnd: 971
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          138
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cleanup_sas
        - destroy_entry
        - schedule_interim
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:959,3'
          Dst:             schedule_interim
        - Src:             'eap_radius_accounting.c:961,3'
          Dst:             cleanup_sas
        - Src:             'eap_radius_accounting.c:966,4'
          Dst:             destroy_entry
    - functionName:    destroy_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy_function
        - chunk_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:189,2'
          Dst:             array_destroy_function
        - Src:             'eap_radius_accounting.c:190,2'
          Dst:             array_destroy_function
        - Src:             'eap_radius_accounting.c:191,2'
          Dst:             array_destroy_function
        - Src:             'eap_radius_accounting.c:191,2'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_unclaimed_ips
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          127
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - eap_radius_provider_get
      functionUses:    1
      BranchProfiles:
        - Branch String:   'eap_radius_accounting.c:477,3'
          Branch Sides:    []
      Callsites:
        - Src:             'eap_radius_accounting.c:472,13'
          Dst:             eap_radius_provider_get
    - functionName:    send_stop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 791
      functionLinenumberEnd: 866
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          460
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - add_class_attributes
        - add_ike_sa_parameters
        - add_unclaimed_ips
        - add_usage
        - array_create_enumerator
        - chunk_create
        - destroy_entry
        - eap_radius_handle_timeout
        - htonl
        - radius_message_create
        - send_message
        - strlen
        - sub_usage
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:805,4'
          Dst:             destroy_entry
        - Src:             'eap_radius_accounting.c:808,16'
          Dst:             array_create_enumerator
        - Src:             'eap_radius_accounting.c:811,4'
          Dst:             add_usage
        - Src:             'eap_radius_accounting.c:815,16'
          Dst:             array_create_enumerator
        - Src:             'eap_radius_accounting.c:818,4'
          Dst:             sub_usage
        - Src:             'eap_radius_accounting.c:822,13'
          Dst:             radius_message_create
        - Src:             'eap_radius_accounting.c:823,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:824,47'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:826,32'
          Dst:             strlen
        - Src:             'eap_radius_accounting.c:826,7'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:827,3'
          Dst:             add_class_attributes
        - Src:             'eap_radius_accounting.c:828,3'
          Dst:             add_ike_sa_parameters
        - Src:             'eap_radius_accounting.c:829,3'
          Dst:             add_unclaimed_ips
        - Src:             'eap_radius_accounting.c:831,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:832,49'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:833,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:837,8'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:839,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:840,50'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:842,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:843,48'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:844,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:848,8'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:850,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:851,49'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:853,17'
          Dst:             time_monotonic
        - Src:             'eap_radius_accounting.c:853,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:854,48'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:856,11'
          Dst:             htonl
        - Src:             'eap_radius_accounting.c:857,51'
          Dst:             chunk_create
        - Src:             'eap_radius_accounting.c:859,8'
          Dst:             send_message
        - Src:             'eap_radius_accounting.c:861,4'
          Dst:             eap_radius_handle_timeout
        - Src:             'eap_radius_accounting.c:864,3'
          Dst:             destroy_entry
    - functionName:    ike_updown
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 898
      functionLinenumberEnd: 914
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - send_stop
        - update_usage
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:908,4'
          Dst:             update_usage
        - Src:             'eap_radius_accounting.c:912,3'
          Dst:             send_stop
    - functionName:    message_hook
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 920
      functionLinenumberEnd: 931
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          99
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - send_start
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:928,4'
          Dst:             send_start
    - functionName:    alert
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 871
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          100
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'eap_radius_accounting.c:875,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    eap_radius_accounting_add_class
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1150
      functionLinenumberEnd: 1165
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          102
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_insert_create_value
        - chunk_create_clone
        - get_or_create_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:1158,11'
          Dst:             get_or_create_entry
        - Src:             'eap_radius_accounting.c:1160,11'
          Dst:             chunk_create_clone
        - Src:             'eap_radius_accounting.c:1161,3'
          Dst:             array_insert_create_value
    - functionName:    eap_radius_accounting_start_interim
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1132
      functionLinenumberEnd: 1144
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_or_create_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:1139,11'
          Dst:             get_or_create_entry
    - functionName:    eap_radius_accounting_session_id
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1113
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_or_create_entry
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:1120,11'
          Dst:             get_or_create_entry
        - Src:             'eap_radius_accounting.c:1122,9'
          Dst:             strdup
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eap_radius_accounting_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_accounting.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1064
      functionLinenumberEnd: 1106
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          180
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - equals
        - hash
        - hashtable_create
        - mutex_create
        - time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_accounting.c:1067,2'
          Dst:             hashtable_create
        - Src:             'eap_radius_accounting.c:1067,2'
          Dst:             hash
        - Src:             'eap_radius_accounting.c:1067,2'
          Dst:             equals
        - Src:             'eap_radius_accounting.c:1067,2'
          Dst:             mutex_create
        - Src:             'eap_radius_accounting.c:1067,2'
          Dst:             time
    - functionName:    apply_lifetime
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    untoh32
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/byteorder.h:177,9'
          Dst:             ntohl
    - functionName:    save_retransmit
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          195
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - entry_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_dae.c:135,4'
          Dst:             entry_destroy
    - functionName:    entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_matching_ike_sas
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          97
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_response
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          87
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - radius_message_create
        - save_retransmit
        - send_message
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_dae.c:196,13'
          Dst:             radius_message_create
        - Src:             'eap_radius_dae.c:201,3'
          Dst:             send_message
        - Src:             'eap_radius_dae.c:202,3'
          Dst:             save_retransmit
    - functionName:    send_message
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sendto
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_dae.c:149,6'
          Dst:             sendto
    - functionName:    sendto
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_matching_ike_sas
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          90
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - add_matching_ike_sas
        - identification_create_from_data
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_dae.c:244,8'
          Dst:             linked_list_create
        - Src:             'eap_radius_dae.c:251,11'
          Dst:             identification_create_from_data
        - Src:             'eap_radius_dae.c:255,4'
          Dst:             add_matching_ike_sas
    - functionName:    process_coa
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          163
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - apply_lifetime
        - get_matching_ike_sas
        - send_response
        - untoh32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_dae.c:340,8'
          Dst:             get_matching_ike_sas
        - Src:             'eap_radius_dae.c:349,16'
          Dst:             untoh32
        - Src:             'eap_radius_dae.c:367,5'
          Dst:             apply_lifetime
        - Src:             'eap_radius_dae.c:370,4'
          Dst:             send_response
        - Src:             'eap_radius_dae.c:377,4'
          Dst:             send_response
        - Src:             'eap_radius_dae.c:385,3'
          Dst:             send_response
    - functionName:    process_disconnect
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - delete_ike_sa_job_create
        - get_matching_ike_sas
        - send_response
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_dae.c:274,8'
          Dst:             get_matching_ike_sas
        - Src:             'eap_radius_dae.c:287,12'
          Dst:             delete_ike_sa_job_create
        - Src:             'eap_radius_dae.c:291,3'
          Dst:             send_response
        - Src:             'eap_radius_dae.c:298,3'
          Dst:             send_response
    - functionName:    send_retransmit
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          109
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - send_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_dae.c:177,4'
          Dst:             send_message
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_receive
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          162
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - chunk_create
        - host_create_from_sockaddr
        - process_coa
        - process_disconnect
        - radius_message_parse
        - recvfrom
        - send_retransmit
      functionUses:    0
      BranchProfiles:
        - Branch String:   'eap_radius_dae.c:418,7'
          Branch Sides:    []
      Callsites:
        - Src:             'eap_radius_dae.c:403,8'
          Dst:             recvfrom
        - Src:             'eap_radius_dae.c:407,34'
          Dst:             chunk_create
        - Src:             'eap_radius_dae.c:407,13'
          Dst:             radius_message_parse
        - Src:             'eap_radius_dae.c:410,13'
          Dst:             host_create_from_sockaddr
        - Src:             'eap_radius_dae.c:413,10'
          Dst:             send_retransmit
        - Src:             'eap_radius_dae.c:421,9'
          Dst:             process_disconnect
        - Src:             'eap_radius_dae.c:424,9'
          Dst:             process_coa
        - Src:             'eap_radius_dae.c:444,11'
          Dst:             __errno_location
    - functionName:    recvfrom
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    open_socket
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 455
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          116
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - bind
        - host_create_from_string
        - socket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_dae.c:458,13'
          Dst:             socket
        - Src:             'eap_radius_dae.c:465,9'
          Dst:             host_create_from_string
        - Src:             'eap_radius_dae.c:478,6'
          Dst:             bind
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 501
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          106
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - close
        - entry_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_dae.c:495,3'
          Dst:             close
        - Src:             'eap_radius_dae.c:499,2'
          Dst:             entry_destroy
    - functionName:    eap_radius_dae_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_dae.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 548
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          184
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - destroy
        - linked_list_create
        - open_socket
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_dae.c:510,2'
          Dst:             linked_list_create
        - Src:             'eap_radius_dae.c:528,3'
          Dst:             destroy
        - Src:             'eap_radius_dae.c:534,3'
          Dst:             destroy
        - Src:             'eap_radius_dae.c:537,21'
          Dst:             strlen
        - Src:             'eap_radius_dae.c:539,4'
          Dst:             open_socket
        - Src:             'eap_radius_dae.c:541,3'
          Dst:             destroy
    - functionName:    remove_queue
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          75
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - free_attribute
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:125,3'
          Dst:             free_attribute
    - functionName:    free_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ike_updown
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - remove_queue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:338,2'
          Dst:             remove_queue
        - Src:             'eap_radius_forward.c:339,2'
          Dst:             remove_queue
    - functionName:    queue2ike
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - free_attribute
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:266,3'
          Dst:             free_attribute
    - functionName:    ike2queue
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          207
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create_clone
        - chunk_skip
        - is_attribute_selected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:244,24'
          Dst:             chunk_skip
        - Src:             'eap_radius_forward.c:243,26'
          Dst:             is_attribute_selected
        - Src:             'eap_radius_forward.c:247,13'
          Dst:             chunk_create_clone
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_attribute_selected
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          176
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - untoh32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:146,12'
          Dst:             untoh32
    - functionName:    untoh32
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/byteorder.h:177,9'
          Dst:             ntohl
    - functionName:    message
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          94
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - ike2queue
        - lookup_queue
        - queue2ike
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:316,12'
          Dst:             lookup_queue
        - Src:             'eap_radius_forward.c:319,5'
          Dst:             ike2queue
        - Src:             'eap_radius_forward.c:324,12'
          Dst:             lookup_queue
        - Src:             'eap_radius_forward.c:327,5'
          Dst:             queue2ike
    - functionName:    lookup_queue
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          116
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - linked_list_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:104,12'
          Dst:             linked_list_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          71
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_selector
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          168
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - atoi
        - enum_from_name_as_int
        - enumerator_create_token
        - linked_list_create
        - strchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:352,9'
          Dst:             linked_list_create
        - Src:             'eap_radius_forward.c:353,15'
          Dst:             enumerator_create_token
        - Src:             'eap_radius_forward.c:359,9'
          Dst:             strchr
        - Src:             'eap_radius_forward.c:363,13'
          Dst:             atoi
        - Src:             'eap_radius_forward.c:366,8'
          Dst:             enum_from_name_as_int
        - Src:             'eap_radius_forward.c:368,11'
          Dst:             atoi
    - functionName:    eap_radius_forward_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          145
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - destroy
        - hashtable_create
        - hashtable_equals_ptr
        - hashtable_hash_ptr
        - mutex_create
        - parse_selector
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:415,2'
          Dst:             parse_selector
        - Src:             'eap_radius_forward.c:415,2'
          Dst:             parse_selector
        - Src:             'eap_radius_forward.c:415,2'
          Dst:             hashtable_create
        - Src:             'eap_radius_forward.c:415,2'
          Dst:             hashtable_hash_ptr
        - Src:             'eap_radius_forward.c:415,2'
          Dst:             hashtable_equals_ptr
        - Src:             'eap_radius_forward.c:415,2'
          Dst:             hashtable_create
        - Src:             'eap_radius_forward.c:415,2'
          Dst:             hashtable_hash_ptr
        - Src:             'eap_radius_forward.c:415,2'
          Dst:             hashtable_equals_ptr
        - Src:             'eap_radius_forward.c:415,2'
          Dst:             mutex_create
        - Src:             'eap_radius_forward.c:437,3'
          Dst:             destroy
    - functionName:    radius2queue
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          153
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - is_attribute_selected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:208,7'
          Dst:             is_attribute_selected
        - Src:             'eap_radius_forward.c:210,10'
          Dst:             chunk_create
        - Src:             'eap_radius_forward.c:215,11'
          Dst:             chunk_length
        - Src:             'eap_radius_forward.c:215,11'
          Dst:             chunk_create_cat
    - functionName:    eap_radius_forward_to_ike
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - lookup_queue
        - radius2queue
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:298,11'
          Dst:             lookup_queue
        - Src:             'eap_radius_forward.c:301,4'
          Dst:             radius2queue
    - functionName:    queue2radius
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_skip
        - free_attribute
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:189,40'
          Dst:             chunk_skip
        - Src:             'eap_radius_forward.c:191,3'
          Dst:             free_attribute
    - functionName:    eap_radius_forward_from_ike
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/eap_radius/eap_radius_forward.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - lookup_queue
        - queue2radius
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'eap_radius_forward.c:280,11'
          Dst:             lookup_queue
        - Src:             'eap_radius_forward.c:283,4'
          Dst:             queue2radius
    - functionName:    offload_bypasses
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4107
      functionLinenumberEnd: 4121
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_create_enumerator
        - offload_bypass_iface
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4111,15'
          Dst:             array_create_enumerator
        - Src:             'kernel_netlink_ipsec.c:4114,8'
          Dst:             offload_bypass_iface
    - functionName:    offload_bypass_iface
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4083
      functionLinenumberEnd: 4098
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          82
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - add_port_bypass
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4087,7'
          Dst:             add_port_bypass
    - functionName:    add_port_bypass
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4063
      functionLinenumberEnd: 4074
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - manage_bypass
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4064,7'
          Dst:             manage_bypass
        - Src:             'kernel_netlink_ipsec.c:4068,7'
          Dst:             manage_bypass
        - Src:             'kernel_netlink_ipsec.c:4070,3'
          Dst:             manage_bypass
    - functionName:    manage_bypass
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3959
      functionLinenumberEnd: 4025
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          198
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - add_hw_offload
        - if_nametoindex
        - memset_noop
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:3965,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:3990,5'
          Dst:             add_hw_offload
        - Src:             'kernel_netlink_ipsec.c:4022,18'
          Dst:             if_nametoindex
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    25
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_hw_offload
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1643
      functionLinenumberEnd: 1693
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          172
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - if_nametoindex
        - netlink_detect_offload
        - netlink_reserve
        - strdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1663,12'
          Dst:             strdup
        - Src:             'kernel_netlink_ipsec.c:1667,7'
          Dst:             netlink_detect_offload
        - Src:             'kernel_netlink_ipsec.c:1674,13'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:1680,24'
          Dst:             if_nametoindex
    - functionName:    netlink_detect_offload
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1569
      functionLinenumberEnd: 1610
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          120
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - close
        - ioctl
        - memset_noop
        - socket
        - strncpy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1583,17'
          Dst:             socket
        - Src:             'kernel_netlink_ipsec.c:1590,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:1594,2'
          Dst:             strncpy
        - Src:             'kernel_netlink_ipsec.c:1598,7'
          Dst:             ioctl
        - Src:             'kernel_netlink_ipsec.c:1608,2'
          Dst:             close
    - functionName:    strncpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ioctl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_receive_link_events
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4241
      functionLinenumberEnd: 4316
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          332
      EdgeCount:       50
      CyclomaticComplexity: 13
      functionsReached:
        - netlink_detect_offload
        - offload_bypasses
        - strncpy
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:4256,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4284,3'
          Dst:             strncpy
        - Src:             'kernel_netlink_ipsec.c:4289,8'
          Dst:             netlink_detect_offload
        - Src:             'kernel_netlink_ipsec.c:4305,4'
          Dst:             offload_bypasses
    - functionName:    strneq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:39,32'
          Dst:             strncmp
    - functionName:    process_mapping
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1169
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          120
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - xfrm2host
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1182,9'
          Dst:             xfrm2host
        - Src:             'kernel_netlink_ipsec.c:1194,11'
          Dst:             xfrm2host
    - functionName:    xfrm2host
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 829
      functionLinenumberEnd: 844
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - host_create_from_chunk
        - ntohs
      functionUses:    10
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:832,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:835,12'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:838,12'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:843,47'
          Dst:             ntohs
        - Src:             'kernel_netlink_ipsec.c:843,9'
          Dst:             host_create_from_chunk
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_migrate
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1095
      functionLinenumberEnd: 1162
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          395
      EdgeCount:       68
      CyclomaticComplexity: 19
      functionsReached:
        - selector2ts
        - xfrm2host
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1112,11'
          Dst:             selector2ts
        - Src:             'kernel_netlink_ipsec.c:1113,11'
          Dst:             selector2ts
        - Src:             'kernel_netlink_ipsec.c:1126,13'
          Dst:             xfrm2host
        - Src:             'kernel_netlink_ipsec.c:1127,13'
          Dst:             xfrm2host
        - Src:             'kernel_netlink_ipsec.c:1135,14'
          Dst:             xfrm2host
        - Src:             'kernel_netlink_ipsec.c:1136,14'
          Dst:             xfrm2host
        - Src:             'kernel_netlink_ipsec.c:1137,14'
          Dst:             xfrm2host
        - Src:             'kernel_netlink_ipsec.c:1138,14'
          Dst:             xfrm2host
    - functionName:    selector2ts
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 939
      functionLinenumberEnd: 987
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          237
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - chunk_create
        - host_create_from_chunk
        - ntohs
        - traffic_selector_create_from_subnet
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:951,11'
          Dst:             ntohs
        - Src:             'kernel_netlink_ipsec.c:960,11'
          Dst:             ntohs
        - Src:             'kernel_netlink_ipsec.c:967,10'
          Dst:             ntohs
        - Src:             'kernel_netlink_ipsec.c:974,42'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:974,10'
          Dst:             host_create_from_chunk
        - Src:             'kernel_netlink_ipsec.c:978,43'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:978,10'
          Dst:             host_create_from_chunk
        - Src:             'kernel_netlink_ipsec.c:983,10'
          Dst:             traffic_selector_create_from_subnet
    - functionName:    process_expire
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1066
      functionLinenumberEnd: 1088
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          106
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - xfrm2host
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1080,9'
          Dst:             xfrm2host
    - functionName:    process_acquire
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 994
      functionLinenumberEnd: 1059
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          275
      EdgeCount:       43
      CyclomaticComplexity: 10
      functionsReached:
        - sec_label_from_encoding
        - selector2ts
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:1039,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1049,13'
          Dst:             selector2ts
        - Src:             'kernel_netlink_ipsec.c:1050,13'
          Dst:             selector2ts
        - Src:             'kernel_netlink_ipsec.c:1051,27'
          Dst:             sec_label_from_encoding
    - functionName:    _cb_receive_events
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1210
      functionLinenumberEnd: 1233
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - process_acquire
        - process_expire
        - process_mapping
        - process_migrate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:1211,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1214,4'
          Dst:             process_acquire
        - Src:             'kernel_netlink_ipsec.c:1217,4'
          Dst:             process_expire
        - Src:             'kernel_netlink_ipsec.c:1220,4'
          Dst:             process_migrate
        - Src:             'kernel_netlink_ipsec.c:1223,4'
          Dst:             process_mapping
    - functionName:    get_spd_hash_thresh
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4407
      functionLinenumberEnd: 4463
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          258
      EdgeCount:       42
      CyclomaticComplexity: 10
      functionsReached:
        - memset_noop
        - netlink_log_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:4427,4'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4415,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:4450,6'
          Dst:             netlink_log_error
    - functionName:    _cb_remove_port_bypass
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4029
      functionLinenumberEnd: 4055
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          120
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - manage_bypass
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4036,3'
          Dst:             manage_bypass
        - Src:             'kernel_netlink_ipsec.c:4037,3'
          Dst:             manage_bypass
        - Src:             'kernel_netlink_ipsec.c:4047,5'
          Dst:             manage_bypass
        - Src:             'kernel_netlink_ipsec.c:4049,5'
          Dst:             manage_bypass
    - functionName:    sec_labels_equal
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/selectors/sec_label.h'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          55
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    enable_udp_decap
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4222
      functionLinenumberEnd: 4237
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - setsockopt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4225,6'
          Dst:             setsockopt
        - Src:             'kernel_netlink_ipsec.c:4231,6'
          Dst:             setsockopt
    - functionName:    offload_bypass
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4130
      functionLinenumberEnd: 4143
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - offload_bypass_iface
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4139,4'
          Dst:             offload_bypass_iface
    - functionName:    add_socket_bypass
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3863
      functionLinenumberEnd: 3900
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - memset_noop
        - setsockopt
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:3867,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:3881,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:3886,6'
          Dst:             setsockopt
        - Src:             'kernel_netlink_ipsec.c:3893,6'
          Dst:             setsockopt
    - functionName:    add_and_offload_port_bypass
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4151
      functionLinenumberEnd: 4207
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          154
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - add_port_bypass
        - array_insert_create_value
        - getsockname
        - getsockopt
        - offload_bypass
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:4174,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4163,6'
          Dst:             getsockname
        - Src:             'kernel_netlink_ipsec.c:4169,6'
          Dst:             getsockopt
        - Src:             'kernel_netlink_ipsec.c:4187,4'
          Dst:             add_port_bypass
        - Src:             'kernel_netlink_ipsec.c:4194,3'
          Dst:             offload_bypass
        - Src:             'kernel_netlink_ipsec.c:4197,3'
          Dst:             array_insert_create_value
        - Src:             'kernel_netlink_ipsec.c:4203,3'
          Dst:             array_insert_create_value
    - functionName:    getsockopt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bypass_socket
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4211
      functionLinenumberEnd: 4218
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          75
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - add_and_offload_port_bypass
        - add_socket_bypass
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4213,4'
          Dst:             add_and_offload_port_bypass
        - Src:             'kernel_netlink_ipsec.c:4217,30'
          Dst:             add_socket_bypass
    - functionName:    flush_policies
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3834
      functionLinenumberEnd: 3856
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:3838,2'
          Dst:             memset_noop
    - functionName:    del_policy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3652
      functionLinenumberEnd: 3830
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         65
      ICount:          718
      EdgeCount:       89
      CyclomaticComplexity: 26
      functionsReached:
        - add_label
        - add_mark
        - add_policy_internal
        - add_uint32
        - format_label
        - format_mark
        - get_priority
        - ipsec_sa_equals
        - memset_noop
        - policy_change_done
        - policy_entry_destroy
        - policy_sa_destroy
        - ts2selector
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:3673,2'
          Dst:             format_mark
        - Src:             'kernel_netlink_ipsec.c:3674,2'
          Dst:             format_label
        - Src:             'kernel_netlink_ipsec.c:3680,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:3681,15'
          Dst:             ts2selector
        - Src:             'kernel_netlink_ipsec.c:3707,18'
          Dst:             get_priority
        - Src:             'kernel_netlink_ipsec.c:3720,4'
          Dst:             ipsec_sa_equals
        - Src:             'kernel_netlink_ipsec.c:3723,4'
          Dst:             policy_sa_destroy
        - Src:             'kernel_netlink_ipsec.c:3740,4'
          Dst:             policy_change_done
        - Src:             'kernel_netlink_ipsec.c:3759,7'
          Dst:             add_policy_internal
        - Src:             'kernel_netlink_ipsec.c:3769,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:3780,7'
          Dst:             add_mark
        - Src:             'kernel_netlink_ipsec.c:3782,3'
          Dst:             policy_change_done
        - Src:             'kernel_netlink_ipsec.c:3785,20'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:3787,3'
          Dst:             policy_change_done
        - Src:             'kernel_netlink_ipsec.c:3790,7'
          Dst:             add_label
        - Src:             'kernel_netlink_ipsec.c:3792,3'
          Dst:             policy_change_done
        - Src:             'kernel_netlink_ipsec.c:3822,3'
          Dst:             policy_entry_destroy
        - Src:             'kernel_netlink_ipsec.c:3827,3'
          Dst:             policy_change_done
    - functionName:    format_mark
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1246
      functionLinenumberEnd: 1251
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - snprintf
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1249,3'
          Dst:             snprintf
    - functionName:    format_label
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1277
      functionLinenumberEnd: 1282
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - snprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1280,3'
          Dst:             snprintf
    - functionName:    ts2selector
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 906
      functionLinenumberEnd: 932
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          226
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - htons
        - if_nametoindex
        - memset_noop
        - ntohs
        - traffic_selector_icmp_code
        - traffic_selector_icmp_type
        - ts2ports
        - ts2subnet
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:910,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:914,2'
          Dst:             ts2subnet
        - Src:             'kernel_netlink_ipsec.c:915,2'
          Dst:             ts2subnet
        - Src:             'kernel_netlink_ipsec.c:916,2'
          Dst:             ts2ports
        - Src:             'kernel_netlink_ipsec.c:917,2'
          Dst:             ts2ports
        - Src:             'kernel_netlink_ipsec.c:923,10'
          Dst:             ntohs
        - Src:             'kernel_netlink_ipsec.c:924,21'
          Dst:             traffic_selector_icmp_type
        - Src:             'kernel_netlink_ipsec.c:924,15'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:926,21'
          Dst:             traffic_selector_icmp_code
        - Src:             'kernel_netlink_ipsec.c:926,15'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:929,28'
          Dst:             if_nametoindex
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          114
      EdgeCount:       21
      CyclomaticComplexity: 12
      functionsReached:
        - port_mask_bits
      functionUses:    2
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:771,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:783,20'
          Dst:             port_mask_bits
        - Src:             'kernel_netlink_ipsec.c:784,20'
          Dst:             port_mask_bits
    - functionName:    ipsec_sa_equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 498
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          119
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - ipsec_sa_cfg_equals
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:498,6'
          Dst:             ipsec_sa_cfg_equals
    - functionName:    policy_sa_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 633
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ipsec_sa_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:631,2'
          Dst:             ipsec_sa_destroy
    - functionName:    policy_change_done
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3095
      functionLinenumberEnd: 3102
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_policy_internal
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3248
      functionLinenumberEnd: 3432
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         101
      ICount:          849
      EdgeCount:       140
      CyclomaticComplexity: 41
      functionsReached:
        - add_hw_offload_policy
        - add_label
        - add_mark
        - add_uint32
        - host2xfrm
        - htonl
        - install_route
        - memcpy_noop
        - memset_noop
        - mode2kernel
        - netlink_reserve
        - ntohs
        - policy_change_done
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:3259,2'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_ipsec.c:3261,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:3306,26'
          Dst:             ntohs
        - Src:             'kernel_netlink_ipsec.c:3306,20'
          Dst:             htonl
        - Src:             'kernel_netlink_ipsec.c:3321,10'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:3325,4'
          Dst:             policy_change_done
        - Src:             'kernel_netlink_ipsec.c:3345,17'
          Dst:             mode2kernel
        - Src:             'kernel_netlink_ipsec.c:3353,5'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:3354,5'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:3364,7'
          Dst:             add_mark
        - Src:             'kernel_netlink_ipsec.c:3366,3'
          Dst:             policy_change_done
        - Src:             'kernel_netlink_ipsec.c:3370,4'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:3372,3'
          Dst:             policy_change_done
        - Src:             'kernel_netlink_ipsec.c:3375,7'
          Dst:             add_label
        - Src:             'kernel_netlink_ipsec.c:3377,3'
          Dst:             policy_change_done
        - Src:             'kernel_netlink_ipsec.c:3381,7'
          Dst:             add_hw_offload_policy
        - Src:             'kernel_netlink_ipsec.c:3383,3'
          Dst:             policy_change_done
        - Src:             'kernel_netlink_ipsec.c:3410,3'
          Dst:             policy_change_done
        - Src:             'kernel_netlink_ipsec.c:3427,4'
          Dst:             install_route
        - Src:             'kernel_netlink_ipsec.c:3430,2'
          Dst:             policy_change_done
    - functionName:    add_mark
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1257
      functionLinenumberEnd: 1271
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netlink_reserve
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1262,10'
          Dst:             netlink_reserve
    - functionName:    add_uint32
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1319
      functionLinenumberEnd: 1329
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netlink_reserve
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1322,11'
          Dst:             netlink_reserve
    - functionName:    add_label
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1288
      functionLinenumberEnd: 1311
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          21
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    policy_entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 688
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          99
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - route_entry_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:691,3'
          Dst:             route_entry_destroy
    - functionName:    _cb_policy_sa_destroy_cb
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 643
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - policy_sa_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:642,2'
          Dst:             policy_sa_destroy
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mode2kernel
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 814
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:801,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    host2xfrm
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 820
      functionLinenumberEnd: 823
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcpy_noop
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:822,2'
          Dst:             memcpy_noop
    - functionName:    add_hw_offload_policy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1721
      functionLinenumberEnd: 1748
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          116
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - add_hw_offload
        - if_indextoname
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:1734,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1745,3'
          Dst:             if_indextoname
        - Src:             'kernel_netlink_ipsec.c:1747,9'
          Dst:             add_hw_offload
    - functionName:    install_route
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3133
      functionLinenumberEnd: 3238
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          464
      EdgeCount:       59
      CyclomaticComplexity: 15
      functionsReached:
        - chunk_create
        - find_xfrmi
        - host_create_any
        - memcpy_noop
        - route_entry_destroy
        - route_entry_equals
        - xfrm2host
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:3220,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:3152,19'
          Dst:             host_create_any
        - Src:             'kernel_netlink_ipsec.c:3160,5'
          Dst:             find_xfrmi
        - Src:             'kernel_netlink_ipsec.c:3169,11'
          Dst:             xfrm2host
        - Src:             'kernel_netlink_ipsec.c:3175,19'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:3176,2'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_ipsec.c:3192,4'
          Dst:             route_entry_destroy
        - Src:             'kernel_netlink_ipsec.c:3199,7'
          Dst:             route_entry_equals
        - Src:             'kernel_netlink_ipsec.c:3201,4'
          Dst:             route_entry_destroy
        - Src:             'kernel_netlink_ipsec.c:3214,3'
          Dst:             route_entry_destroy
        - Src:             'kernel_netlink_ipsec.c:3231,4'
          Dst:             route_entry_destroy
    - functionName:    find_xfrmi
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3109
      functionLinenumberEnd: 3126
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:3119,15'
          Dst:             strdup
    - functionName:    if_indextoname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipsec_sa_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          95
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    port_mask_bits
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 736
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:740,14'
          Dst:             ntohs
    - functionName:    ts2subnet
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 851
      functionLinenumberEnd: 859
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:857,2'
          Dst:             memcpy_noop
    - functionName:    ts2ports
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 866
      functionLinenumberEnd: 898
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          119
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:876,11'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:890,13'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:891,13'
          Dst:             htons
    - functionName:    traffic_selector_icmp_type
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/selectors/traffic_selector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    traffic_selector_icmp_code
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/selectors/traffic_selector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    query_policy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3563
      functionLinenumberEnd: 3647
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          274
      EdgeCount:       44
      CyclomaticComplexity: 11
      functionsReached:
        - add_label
        - add_mark
        - add_uint32
        - format_label
        - format_mark
        - memset_noop
        - netlink_log_error
        - time
        - time_monotonic
        - ts2selector
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:3605,4'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:3571,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:3572,2'
          Dst:             format_mark
        - Src:             'kernel_netlink_ipsec.c:3573,2'
          Dst:             format_label
        - Src:             'kernel_netlink_ipsec.c:3584,19'
          Dst:             ts2selector
        - Src:             'kernel_netlink_ipsec.c:3587,7'
          Dst:             add_mark
        - Src:             'kernel_netlink_ipsec.c:3591,20'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:3595,7'
          Dst:             add_label
        - Src:             'kernel_netlink_ipsec.c:3614,6'
          Dst:             netlink_log_error
        - Src:             'kernel_netlink_ipsec.c:3638,15'
          Dst:             time_monotonic
        - Src:             'kernel_netlink_ipsec.c:3638,39'
          Dst:             time
    - functionName:    ipsec_sa_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          129
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    policy_sa_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 616
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          135
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ipsec_sa_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:614,15'
          Dst:             ipsec_sa_create
    - functionName:    add_policy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3437
      functionLinenumberEnd: 3558
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          526
      EdgeCount:       68
      CyclomaticComplexity: 19
      functionsReached:
        - add_policy_internal
        - format_label
        - format_mark
        - get_priority
        - linked_list_create
        - policy_change_done
        - policy_entry_destroy
        - policy_sa_create
        - ts2selector
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:3447,2'
          Dst:             ts2selector
        - Src:             'kernel_netlink_ipsec.c:3455,2'
          Dst:             format_mark
        - Src:             'kernel_netlink_ipsec.c:3456,2'
          Dst:             format_label
        - Src:             'kernel_netlink_ipsec.c:3466,3'
          Dst:             policy_entry_destroy
        - Src:             'kernel_netlink_ipsec.c:3480,21'
          Dst:             linked_list_create
        - Src:             'kernel_netlink_ipsec.c:3485,16'
          Dst:             policy_sa_create
        - Src:             'kernel_netlink_ipsec.c:3486,31'
          Dst:             get_priority
        - Src:             'kernel_netlink_ipsec.c:3526,3'
          Dst:             policy_change_done
        - Src:             'kernel_netlink_ipsec.c:3550,6'
          Dst:             add_policy_internal
    - functionName:    flush_sas
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3052
      functionLinenumberEnd: 3088
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          83
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:3066,2'
          Dst:             memset_noop
    - functionName:    get_lastused
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2411
      functionLinenumberEnd: 2428
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          117
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    query_sa
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2434
      functionLinenumberEnd: 2531
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          324
      EdgeCount:       58
      CyclomaticComplexity: 14
      functionsReached:
        - add_mark
        - add_uint32
        - format_mark
        - get_lastused
        - host2xfrm
        - memset_noop
        - memwipe
        - netlink_log_error
        - time
        - time_monotonic
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:2474,4'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:2443,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:2444,2'
          Dst:             format_mark
        - Src:             'kernel_netlink_ipsec.c:2455,2'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:2460,7'
          Dst:             add_mark
        - Src:             'kernel_netlink_ipsec.c:2464,20'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2483,6'
          Dst:             netlink_log_error
        - Src:             'kernel_netlink_ipsec.c:2517,29'
          Dst:             get_lastused
        - Src:             'kernel_netlink_ipsec.c:2519,17'
          Dst:             time_monotonic
        - Src:             'kernel_netlink_ipsec.c:2519,41'
          Dst:             time
        - Src:             'kernel_netlink_ipsec.c:2528,2'
          Dst:             memwipe
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    lockdown_confidentiality
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2753
      functionLinenumberEnd: 2768
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         11
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - fclose
        - fgets
        - fopen
        - strstr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:2758,6'
          Dst:             fopen
        - Src:             'kernel_netlink_ipsec.c:2761,7'
          Dst:             fgets
        - Src:             'kernel_netlink_ipsec.c:2762,4'
          Dst:             strstr
        - Src:             'kernel_netlink_ipsec.c:2766,3'
          Dst:             fclose
    - functionName:    strstr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    del_sa
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2536
      functionLinenumberEnd: 2595
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          191
      EdgeCount:       20
      CyclomaticComplexity: 5
      functionsReached:
        - add_mark
        - add_uint32
        - del_sa
        - format_mark
        - host2xfrm
        - htonl
        - memset_noop
        - ntohs
      functionUses:    2
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:2582,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:2548,17'
          Dst:             ntohs
        - Src:             'kernel_netlink_ipsec.c:2548,11'
          Dst:             htonl
        - Src:             'kernel_netlink_ipsec.c:2553,3'
          Dst:             del_sa
        - Src:             'kernel_netlink_ipsec.c:2556,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:2557,2'
          Dst:             format_mark
        - Src:             'kernel_netlink_ipsec.c:2568,2'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:2573,7'
          Dst:             add_mark
        - Src:             'kernel_netlink_ipsec.c:2577,20'
          Dst:             add_uint32
    - functionName:    get_replay_state
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2318
      functionLinenumberEnd: 2405
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          407
      EdgeCount:       63
      CyclomaticComplexity: 16
      functionsReached:
        - add_mark
        - add_uint32
        - host2xfrm
        - memcpy_noop
        - memset_noop
        - netlink_log_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:2358,4'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:2326,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:2339,2'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:2344,7'
          Dst:             add_mark
        - Src:             'kernel_netlink_ipsec.c:2348,20'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2367,6'
          Dst:             netlink_log_error
        - Src:             'kernel_netlink_ipsec.c:2392,5'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_ipsec.c:2399,5'
          Dst:             memcpy_noop
    - functionName:    migrate_sa
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2603
      functionLinenumberEnd: 2744
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          573
      EdgeCount:       72
      CyclomaticComplexity: 21
      functionsReached:
        - add_hw_offload_sa
        - format_mark
        - host2xfrm
        - htonl
        - htons
        - memset_noop
        - migrate_sa
        - netlink_reserve
        - ntohs
        - ts2selector
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:2620,17'
          Dst:             ntohs
        - Src:             'kernel_netlink_ipsec.c:2620,11'
          Dst:             htonl
        - Src:             'kernel_netlink_ipsec.c:2633,3'
          Dst:             migrate_sa
        - Src:             'kernel_netlink_ipsec.c:2637,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:2638,2'
          Dst:             format_mark
        - Src:             'kernel_netlink_ipsec.c:2650,2'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:2657,2'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:2658,2'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:2671,23'
          Dst:             ts2selector
        - Src:             'kernel_netlink_ipsec.c:2684,11'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:2691,24'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:2692,24'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:2693,3'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:2697,11'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:2707,8'
          Dst:             add_hw_offload_sa
    - functionName:    add_hw_offload_sa
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1702
      functionLinenumberEnd: 1712
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          68
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - add_hw_offload
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1703,7'
          Dst:             add_hw_offload
    - functionName:    update_sa
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2774
      functionLinenumberEnd: 3048
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         121
      ICount:          1062
      EdgeCount:       162
      CyclomaticComplexity: 43
      functionsReached:
        - add_mark
        - add_uint32
        - chunk_create
        - del_sa
        - format_mark
        - get_replay_state
        - host2xfrm
        - htonl
        - htons
        - if_nametoindex
        - lockdown_confidentiality
        - memcpy_noop
        - memset_noop
        - memwipe
        - migrate_sa
        - netlink_add_attribute
        - netlink_log_error
        - netlink_reserve
        - ntohs
        - selector2ts
        - ts2subnet
        - update_sa
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:2858,4'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:2795,3'
          Dst:             migrate_sa
        - Src:             'kernel_netlink_ipsec.c:2800,6'
          Dst:             lockdown_confidentiality
        - Src:             'kernel_netlink_ipsec.c:2813,17'
          Dst:             ntohs
        - Src:             'kernel_netlink_ipsec.c:2813,11'
          Dst:             htonl
        - Src:             'kernel_netlink_ipsec.c:2823,3'
          Dst:             update_sa
        - Src:             'kernel_netlink_ipsec.c:2826,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:2827,2'
          Dst:             format_mark
        - Src:             'kernel_netlink_ipsec.c:2839,2'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:2844,7'
          Dst:             add_mark
        - Src:             'kernel_netlink_ipsec.c:2848,20'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2867,6'
          Dst:             netlink_log_error
        - Src:             'kernel_netlink_ipsec.c:2886,2'
          Dst:             get_replay_state
        - Src:             'kernel_netlink_ipsec.c:2889,6'
          Dst:             del_sa
        - Src:             'kernel_netlink_ipsec.c:2905,2'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_ipsec.c:2911,3'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:2913,8'
          Dst:             selector2ts
        - Src:             'kernel_netlink_ipsec.c:2917,4'
          Dst:             ts2subnet
        - Src:             'kernel_netlink_ipsec.c:2923,3'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:2925,8'
          Dst:             selector2ts
        - Src:             'kernel_netlink_ipsec.c:2929,4'
          Dst:             ts2subnet
        - Src:             'kernel_netlink_ipsec.c:2947,26'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:2948,26'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:2963,25'
          Dst:             if_nametoindex
        - Src:             'kernel_netlink_ipsec.c:2973,11'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:2972,4'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_ipsec.c:2981,11'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:2988,24'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:2989,24'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:2990,3'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:2999,12'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:3005,4'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_ipsec.c:3017,11'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:3023,3'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_ipsec.c:3043,2'
          Dst:             memwipe
        - Src:             'kernel_netlink_ipsec.c:3044,2'
          Dst:             memwipe
    - functionName:    pad_len
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/align.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    round_up
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/align.h'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pad_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/align.h:58,16'
          Dst:             pad_len
    - functionName:    add_uint16
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1336
      functionLinenumberEnd: 1346
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netlink_reserve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1339,11'
          Dst:             netlink_reserve
    - functionName:    lookup_algorithm
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:291,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    add_sa
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1753
      functionLinenumberEnd: 2305
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         241
      ICount:          1919
      EdgeCount:       314
      CyclomaticComplexity: 75
      functionsReached:
        - add_hw_offload_sa
        - add_label
        - add_mark
        - add_sa
        - add_uint16
        - add_uint32
        - add_uint8
        - format_mark
        - host2xfrm
        - htonl
        - htons
        - lookup_algorithm
        - memcpy_noop
        - memset_noop
        - memwipe
        - mode2kernel
        - netlink_reserve
        - ntohs
        - round_up
        - strncpy
        - ts2selector
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:1831,3'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_ipsec.c:1847,3'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_ipsec.c:1865,2'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_ipsec.c:1920,2'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_ipsec.c:2009,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1773,17'
          Dst:             ntohs
        - Src:             'kernel_netlink_ipsec.c:1773,11'
          Dst:             htonl
        - Src:             'kernel_netlink_ipsec.c:1793,3'
          Dst:             add_sa
        - Src:             'kernel_netlink_ipsec.c:1799,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:1800,2'
          Dst:             format_mark
        - Src:             'kernel_netlink_ipsec.c:1811,2'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:1812,2'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:1816,13'
          Dst:             mode2kernel
        - Src:             'kernel_netlink_ipsec.c:1853,10'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:1887,15'
          Dst:             ts2selector
        - Src:             'kernel_netlink_ipsec.c:1943,15'
          Dst:             lookup_algorithm
        - Src:             'kernel_netlink_ipsec.c:1954,11'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:1962,4'
          Dst:             strncpy
        - Src:             'kernel_netlink_ipsec.c:1964,4'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_ipsec.c:1971,15'
          Dst:             lookup_algorithm
        - Src:             'kernel_netlink_ipsec.c:1982,11'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:1989,4'
          Dst:             strncpy
        - Src:             'kernel_netlink_ipsec.c:1991,4'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_ipsec.c:1999,14'
          Dst:             lookup_algorithm
        - Src:             'kernel_netlink_ipsec.c:2038,11'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:2046,4'
          Dst:             strncpy
        - Src:             'kernel_netlink_ipsec.c:2048,4'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_ipsec.c:2054,11'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:2061,4'
          Dst:             strncpy
        - Src:             'kernel_netlink_ipsec.c:2063,4'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_ipsec.c:2071,14'
          Dst:             lookup_algorithm
        - Src:             'kernel_netlink_ipsec.c:2081,10'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:2088,3'
          Dst:             strncpy
        - Src:             'kernel_netlink_ipsec.c:2096,10'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:2102,23'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:2103,23'
          Dst:             htons
        - Src:             'kernel_netlink_ipsec.c:2104,3'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:2120,5'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2126,7'
          Dst:             add_mark
        - Src:             'kernel_netlink_ipsec.c:2131,20'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2136,7'
          Dst:             add_label
        - Src:             'kernel_netlink_ipsec.c:2143,8'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2145,5'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2154,8'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2161,4'
          Dst:             add_uint8
        - Src:             'kernel_netlink_ipsec.c:2169,8'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2180,9'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2186,9'
          Dst:             add_uint16
        - Src:             'kernel_netlink_ipsec.c:2195,9'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2201,9'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2207,9'
          Dst:             add_uint32
        - Src:             'kernel_netlink_ipsec.c:2216,6'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:2239,15'
          Dst:             round_up
        - Src:             'kernel_netlink_ipsec.c:2240,13'
          Dst:             netlink_reserve
        - Src:             'kernel_netlink_ipsec.c:2266,8'
          Dst:             add_hw_offload_sa
        - Src:             'kernel_netlink_ipsec.c:2304,2'
          Dst:             memwipe
    - functionName:    add_uint8
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1353
      functionLinenumberEnd: 1363
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netlink_reserve
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1356,11'
          Dst:             netlink_reserve
    - functionName:    get_cpi
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1463
      functionLinenumberEnd: 1477
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_spi_internal
        - htons
        - ntohl
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1466,6'
          Dst:             get_spi_internal
        - Src:             'kernel_netlink_ipsec.c:1473,25'
          Dst:             ntohl
        - Src:             'kernel_netlink_ipsec.c:1473,9'
          Dst:             htons
    - functionName:    get_spi_internal
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1371
      functionLinenumberEnd: 1436
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          243
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - add_uint8
        - host2xfrm
        - memset_noop
        - netlink_log_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:1405,4'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1378,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:1386,2'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:1387,2'
          Dst:             host2xfrm
        - Src:             'kernel_netlink_ipsec.c:1395,4'
          Dst:             add_uint8
        - Src:             'kernel_netlink_ipsec.c:1415,6'
          Dst:             netlink_log_error
    - functionName:    get_spi
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1441
      functionLinenumberEnd: 1458
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          124
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_spi_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1449,6'
          Dst:             get_spi_internal
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1237
      functionLinenumberEnd: 1239
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_offload_interfaces
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4322
      functionLinenumberEnd: 4360
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          151
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - memset_noop
        - netlink_socket_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4329,11'
          Dst:             netlink_socket_create
        - Src:             'kernel_netlink_ipsec.c:4335,2'
          Dst:             memset_noop
    - functionName:    netlink_find_offload_feature
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1499
      functionLinenumberEnd: 1563
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          191
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - close
        - ioctl
        - memset_noop
        - socket
        - strncpy
        - strneq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:1507,17'
          Dst:             socket
        - Src:             'kernel_netlink_ipsec.c:1514,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:1518,2'
          Dst:             strncpy
        - Src:             'kernel_netlink_ipsec.c:1522,8'
          Dst:             ioctl
        - Src:             'kernel_netlink_ipsec.c:1530,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:1534,2'
          Dst:             strncpy
        - Src:             'kernel_netlink_ipsec.c:1538,8'
          Dst:             ioctl
        - Src:             'kernel_netlink_ipsec.c:1548,7'
          Dst:             strneq
        - Src:             'kernel_netlink_ipsec.c:1561,2'
          Dst:             close
    - functionName:    nl_group
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/./kernel_netlink_shared.h'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          35
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setup_spd_hash_thresh
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4471
      functionLinenumberEnd: 4502
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          143
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - get_spd_hash_thresh
        - memset_noop
        - netlink_reserve
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4477,7'
          Dst:             get_spd_hash_thresh
        - Src:             'kernel_netlink_ipsec.c:4481,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_ipsec.c:4488,11'
          Dst:             netlink_reserve
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4364
      functionLinenumberEnd: 4400
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          281
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - array_destroy_function
        - kernel_netlink_xfrmi_destroy
        - policy_entry_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4371,2'
          Dst:             array_destroy_function
        - Src:             'kernel_netlink_ipsec.c:4375,3'
          Dst:             kernel_netlink_xfrmi_destroy
        - Src:             'kernel_netlink_ipsec.c:4381,3'
          Dst:             policy_entry_destroy
    - functionName:    check_kernel_features
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4508
      functionLinenumberEnd: 4534
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         35
      ICount:          165
      EdgeCount:       43
      CyclomaticComplexity: 10
      functionsReached:
        - __isoc99_sscanf
        - uname
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_ipsec.c:4514,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4512,6'
          Dst:             uname
        - Src:             'kernel_netlink_ipsec.c:4514,10'
          Dst:             __isoc99_sscanf
    - functionName:    __isoc99_sscanf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipsec_sa_hash
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          107
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash_inc
        - ipsec_sa_cfg_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:481,24'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:482,24'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:483,24'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:484,9'
          Dst:             ipsec_sa_cfg_hash
        - Src:             'kernel_netlink_ipsec.c:483,9'
          Dst:             chunk_hash_inc
        - Src:             'kernel_netlink_ipsec.c:482,9'
          Dst:             chunk_hash_inc
        - Src:             'kernel_netlink_ipsec.c:481,9'
          Dst:             chunk_hash_inc
        - Src:             'kernel_netlink_ipsec.c:480,9'
          Dst:             chunk_hash_inc
        - Src:             'kernel_netlink_ipsec.c:479,9'
          Dst:             chunk_hash_inc
    - functionName:    policy_equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - memeq
        - sec_labels_equal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:725,9'
          Dst:             memeq
        - Src:             'kernel_netlink_ipsec.c:729,6'
          Dst:             sec_labels_equal
    - functionName:    policy_hash
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 707
      functionLinenumberEnd: 717
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          87
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - chunk_hash
        - chunk_hash_inc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:708,18'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:711,46'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:712,20'
          Dst:             chunk_create
        - Src:             'kernel_netlink_ipsec.c:712,9'
          Dst:             chunk_hash
        - Src:             'kernel_netlink_ipsec.c:711,31'
          Dst:             chunk_hash_inc
        - Src:             'kernel_netlink_ipsec.c:711,9'
          Dst:             chunk_hash_inc
    - functionName:    kernel_netlink_ipsec_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_ipsec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4540
      functionLinenumberEnd: 4635
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         19
      ICount:          349
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - check_kernel_features
        - condvar_create
        - destroy
        - dlsym
        - hashtable_create
        - hashtable_equals_ptr
        - hashtable_hash_ptr
        - init_offload_interfaces
        - ipsec_sa_equals
        - ipsec_sa_hash
        - kernel_netlink_xfrmi_create
        - mutex_create
        - netlink_event_socket_create
        - netlink_find_offload_feature
        - netlink_socket_create
        - nl_group
        - policy_equals
        - policy_hash
        - setup_spd_hash_thresh
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_ipsec.c:4544,2'
          Dst:             mutex_create
        - Src:             'kernel_netlink_ipsec.c:4544,2'
          Dst:             condvar_create
        - Src:             'kernel_netlink_ipsec.c:4544,2'
          Dst:             hashtable_create
        - Src:             'kernel_netlink_ipsec.c:4544,2'
          Dst:             policy_hash
        - Src:             'kernel_netlink_ipsec.c:4544,2'
          Dst:             policy_equals
        - Src:             'kernel_netlink_ipsec.c:4544,2'
          Dst:             hashtable_create
        - Src:             'kernel_netlink_ipsec.c:4544,2'
          Dst:             ipsec_sa_hash
        - Src:             'kernel_netlink_ipsec.c:4544,2'
          Dst:             ipsec_sa_equals
        - Src:             'kernel_netlink_ipsec.c:4544,2'
          Dst:             dlsym
        - Src:             'kernel_netlink_ipsec.c:4587,2'
          Dst:             check_kernel_features
        - Src:             'kernel_netlink_ipsec.c:4589,22'
          Dst:             netlink_socket_create
        - Src:             'kernel_netlink_ipsec.c:4594,3'
          Dst:             destroy
        - Src:             'kernel_netlink_ipsec.c:4598,2'
          Dst:             setup_spd_hash_thresh
        - Src:             'kernel_netlink_ipsec.c:4599,2'
          Dst:             setup_spd_hash_thresh
        - Src:             'kernel_netlink_ipsec.c:4601,11'
          Dst:             nl_group
        - Src:             'kernel_netlink_ipsec.c:4601,41'
          Dst:             nl_group
        - Src:             'kernel_netlink_ipsec.c:4602,5'
          Dst:             nl_group
        - Src:             'kernel_netlink_ipsec.c:4602,35'
          Dst:             nl_group
        - Src:             'kernel_netlink_ipsec.c:4603,29'
          Dst:             netlink_event_socket_create
        - Src:             'kernel_netlink_ipsec.c:4607,3'
          Dst:             destroy
        - Src:             'kernel_netlink_ipsec.c:4611,6'
          Dst:             netlink_find_offload_feature
        - Src:             'kernel_netlink_ipsec.c:4615,30'
          Dst:             hashtable_create
        - Src:             'kernel_netlink_ipsec.c:4615,30'
          Dst:             hashtable_hash_ptr
        - Src:             'kernel_netlink_ipsec.c:4615,30'
          Dst:             hashtable_equals_ptr
        - Src:             'kernel_netlink_ipsec.c:4617,25'
          Dst:             mutex_create
        - Src:             'kernel_netlink_ipsec.c:4619,14'
          Dst:             nl_group
        - Src:             'kernel_netlink_ipsec.c:4618,30'
          Dst:             netlink_event_socket_create
        - Src:             'kernel_netlink_ipsec.c:4622,5'
          Dst:             init_offload_interfaces
        - Src:             'kernel_netlink_ipsec.c:4624,4'
          Dst:             destroy
        - Src:             'kernel_netlink_ipsec.c:4629,16'
          Dst:             kernel_netlink_xfrmi_create
    - functionName:    dlsym
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_addr_entry_unregister
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1069
      functionLinenumberEnd: 1081
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          112
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - addr_map_entry_remove
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:1076,3'
          Dst:             addr_map_entry_remove
        - Src:             'kernel_netlink_net.c:1080,2'
          Dst:             addr_map_entry_remove
    - functionName:    addr_map_entry_remove
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 636
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    roam_event
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1002
      functionLinenumberEnd: 1010
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fire_roam_event
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1018
      functionLinenumberEnd: 1042
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          138
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - callback_job_create
        - roam_event
        - time_monotonic
        - timeval_add_ms
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:1027,2'
          Dst:             time_monotonic
        - Src:             'kernel_netlink_net.c:1035,2'
          Dst:             timeval_add_ms
        - Src:             'kernel_netlink_net.c:1039,16'
          Dst:             callback_job_create
        - Src:             'kernel_netlink_net.c:1039,16'
          Dst:             roam_event
    - functionName:    timeval_add_ms
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_rule
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1419
      functionLinenumberEnd: 1449
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          175
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - fire_roam_event
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:1434,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_net.c:1447,2'
          Dst:             fire_roam_event
    - functionName:    process_route
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1344
      functionLinenumberEnd: 1412
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         63
      ICount:          420
      EdgeCount:       82
      CyclomaticComplexity: 21
      functionsReached:
        - chunk_create
        - fire_roam_event
        - get_interface_address
        - host_create_from_chunk
        - is_interface_up_and_usable
        - is_known_vip
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:1364,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_net.c:1380,8'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:1379,12'
          Dst:             host_create_from_chunk
        - Src:             'kernel_netlink_net.c:1392,18'
          Dst:             is_interface_up_and_usable
        - Src:             'kernel_netlink_net.c:1400,10'
          Dst:             get_interface_address
        - Src:             'kernel_netlink_net.c:1403,15'
          Dst:             is_known_vip
        - Src:             'kernel_netlink_net.c:1410,2'
          Dst:             fire_roam_event
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_interface_up_and_usable
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1051
      functionLinenumberEnd: 1060
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iface_entry_up_and_usable
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:1057,10'
          Dst:             iface_entry_up_and_usable
    - functionName:    get_interface_address
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 977
      functionLinenumberEnd: 979
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_matching_address
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:978,9'
          Dst:             get_matching_address
    - functionName:    is_known_vip
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 605
      functionLinenumberEnd: 611
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - addr_map_entry_match
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:610,9'
          Dst:             addr_map_entry_match
    - functionName:    addr_map_entry_match
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_matching_address
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 919
      functionLinenumberEnd: 962
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          302
      EdgeCount:       68
      CyclomaticComplexity: 19
      functionsReached:
        - host_in_subnet
        - is_address_better
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:938,21'
          Dst:             host_in_subnet
        - Src:             'kernel_netlink_net.c:949,23'
          Dst:             is_address_better
    - functionName:    host_in_subnet
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 688
      functionLinenumberEnd: 692
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - addr_in_subnet
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:692,9'
          Dst:             addr_in_subnet
    - functionName:    is_address_better
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 836
      functionLinenumberEnd: 903
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          298
      EdgeCount:       53
      CyclomaticComplexity: 16
      functionsReached:
        - common_prefix
        - get_label
        - get_scope
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:842,8'
          Dst:             get_scope
        - Src:             'kernel_netlink_net.c:843,8'
          Dst:             get_scope
        - Src:             'kernel_netlink_net.c:844,8'
          Dst:             get_scope
        - Src:             'kernel_netlink_net.c:870,8'
          Dst:             get_label
        - Src:             'kernel_netlink_net.c:871,8'
          Dst:             get_label
        - Src:             'kernel_netlink_net.c:872,8'
          Dst:             get_label
        - Src:             'kernel_netlink_net.c:894,8'
          Dst:             common_prefix
        - Src:             'kernel_netlink_net.c:895,8'
          Dst:             common_prefix
    - functionName:    get_scope
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 702
      functionLinenumberEnd: 738
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          199
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - htonl
      functionUses:    3
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:706,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_net.c:720,8'
          Dst:             htonl
        - Src:             'kernel_netlink_net.c:724,8'
          Dst:             htonl
        - Src:             'kernel_netlink_net.c:724,8'
          Dst:             htonl
        - Src:             'kernel_netlink_net.c:728,8'
          Dst:             htonl
        - Src:             'kernel_netlink_net.c:728,8'
          Dst:             htonl
    - functionName:    get_label
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 757
      functionLinenumberEnd: 800
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          423
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - host_in_subnet
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:793,7'
          Dst:             host_in_subnet
    - functionName:    common_prefix
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 808
      functionLinenumberEnd: 826
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          134
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addr_in_subnet
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          145
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iface_entry_up_and_usable
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iface_entry_up
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:199,26'
          Dst:             iface_entry_up
    - functionName:    iface_entry_up
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_iface_entry_by_index
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          47
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_link
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1088
      functionLinenumberEnd: 1182
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          464
      EdgeCount:       77
      CyclomaticComplexity: 19
      functionsReached:
        - fire_roam_event
        - iface_entry_destroy
        - linked_list_create
        - queue_route_reinstall
        - strdup
        - strncpy
      functionUses:    2
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:1099,3'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_net.c:1113,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_net.c:1120,5'
          Dst:             linked_list_create
        - Src:             'kernel_netlink_net.c:1126,4'
          Dst:             strncpy
        - Src:             'kernel_netlink_net.c:1163,6'
          Dst:             iface_entry_destroy
        - Src:             'kernel_netlink_net.c:1175,31'
          Dst:             strdup
        - Src:             'kernel_netlink_net.c:1175,3'
          Dst:             queue_route_reinstall
        - Src:             'kernel_netlink_net.c:1180,3'
          Dst:             fire_roam_event
    - functionName:    iface_entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - addr_entry_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:164,2'
          Dst:             addr_entry_destroy
    - functionName:    queue_route_reinstall
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          144
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - callback_job_create
        - net_change_destroy
        - reinstall_routes
        - time_monotonic
        - timeval_add_ms
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:560,3'
          Dst:             net_change_destroy
        - Src:             'kernel_netlink_net.c:562,2'
          Dst:             time_monotonic
        - Src:             'kernel_netlink_net.c:565,3'
          Dst:             timeval_add_ms
        - Src:             'kernel_netlink_net.c:568,17'
          Dst:             callback_job_create
        - Src:             'kernel_netlink_net.c:568,17'
          Dst:             reinstall_routes
    - functionName:    net_change_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reinstall_routes
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 535
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          232
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - manage_srcroute
        - net_changes_clear
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:516,10'
          Dst:             streq
        - Src:             'kernel_netlink_net.c:525,4'
          Dst:             manage_srcroute
        - Src:             'kernel_netlink_net.c:533,2'
          Dst:             net_changes_clear
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    manage_srcroute
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2548
      functionLinenumberEnd: 2650
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - size_t
        - char
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          498
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - chunk_create
        - get_interface_index
        - manage_srcroute
        - memcpy_noop
        - memset_noop
        - netlink_add_attribute
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2565,14'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:2566,3'
          Dst:             memset_noop
        - Src:             'kernel_netlink_net.c:2569,12'
          Dst:             manage_srcroute
        - Src:             'kernel_netlink_net.c:2572,13'
          Dst:             manage_srcroute
        - Src:             'kernel_netlink_net.c:2577,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_net.c:2598,11'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:2599,3'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:2605,2'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:2613,3'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:2618,4'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:2620,13'
          Dst:             get_interface_index
        - Src:             'kernel_netlink_net.c:2623,3'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:2627,12'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:2635,5'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_net.c:2643,5'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_net.c:2646,4'
          Dst:             netlink_add_attribute
    - functionName:    net_changes_clear
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - net_change_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:483,3'
          Dst:             net_change_destroy
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_interface_index
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1644
      functionLinenumberEnd: 1662
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_iface_entry_by_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:183,9'
          Dst:             streq
    - functionName:    addr_entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_addr
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1189
      functionLinenumberEnd: 1337
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         79
      ICount:          651
      EdgeCount:       105
      CyclomaticComplexity: 28
      functionsReached:
        - addr_entry_destroy
        - addr_map_entry_add
        - addr_map_entry_remove
        - fire_roam_event
        - host_create_from_chunk
        - queue_route_reinstall
        - strdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:1201,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_net.c:1220,10'
          Dst:             host_create_from_chunk
        - Src:             'kernel_netlink_net.c:1224,10'
          Dst:             host_create_from_chunk
        - Src:             'kernel_netlink_net.c:1253,5'
          Dst:             addr_map_entry_remove
        - Src:             'kernel_netlink_net.c:1254,5'
          Dst:             addr_entry_destroy
        - Src:             'kernel_netlink_net.c:1276,5'
          Dst:             addr_map_entry_remove
        - Src:             'kernel_netlink_net.c:1277,5'
          Dst:             addr_entry_destroy
        - Src:             'kernel_netlink_net.c:1297,20'
          Dst:             strdup
        - Src:             'kernel_netlink_net.c:1304,5'
          Dst:             addr_map_entry_add
        - Src:             'kernel_netlink_net.c:1324,3'
          Dst:             queue_route_reinstall
        - Src:             'kernel_netlink_net.c:1335,3'
          Dst:             fire_roam_event
    - functionName:    addr_map_entry_add
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_receive_events
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1453
      functionLinenumberEnd: 1481
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          100
      EdgeCount:       24
      CyclomaticComplexity: 3
      functionsReached:
        - process_addr
        - process_link
        - process_route
        - process_rule
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:1454,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_net.c:1458,4'
          Dst:             process_addr
        - Src:             'kernel_netlink_net.c:1462,4'
          Dst:             process_link
        - Src:             'kernel_netlink_net.c:1468,5'
          Dst:             process_route
        - Src:             'kernel_netlink_net.c:1475,5'
          Dst:             process_rule
    - functionName:    addr_map_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3016
      functionLinenumberEnd: 3018
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    route_with_dst
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2680
      functionLinenumberEnd: 2687
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2681,6'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    del_route
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2751
      functionLinenumberEnd: 2804
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - char
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          246
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - manage_srcroute
        - route_entry_destroy
        - route_with_dst
        - route_with_vip
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2778,2'
          Dst:             route_entry_destroy
        - Src:             'kernel_netlink_net.c:2783,10'
          Dst:             route_with_vip
        - Src:             'kernel_netlink_net.c:2788,11'
          Dst:             route_with_dst
        - Src:             'kernel_netlink_net.c:2793,12'
          Dst:             manage_srcroute
        - Src:             'kernel_netlink_net.c:2799,12'
          Dst:             manage_srcroute
    - functionName:    route_with_vip
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2666
      functionLinenumberEnd: 2674
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
        - is_known_vip
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2667,6'
          Dst:             chunk_equals
        - Src:             'kernel_netlink_net.c:2669,3'
          Dst:             is_known_vip
    - functionName:    add_route
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2692
      functionLinenumberEnd: 2746
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - char
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          239
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - is_known_vip
        - manage_srcroute
        - route_entry_clone
        - route_with_vip
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2723,7'
          Dst:             is_known_vip
        - Src:             'kernel_netlink_net.c:2725,11'
          Dst:             route_with_vip
        - Src:             'kernel_netlink_net.c:2735,12'
          Dst:             manage_srcroute
        - Src:             'kernel_netlink_net.c:2741,11'
          Dst:             route_entry_clone
    - functionName:    del_ip
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2476
      functionLinenumberEnd: 2538
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          266
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - addr_map_entry_match
        - is_known_vip
        - manage_ipaddr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2489,10'
          Dst:             addr_map_entry_match
        - Src:             'kernel_netlink_net.c:2493,11'
          Dst:             addr_map_entry_match
        - Src:             'kernel_netlink_net.c:2516,12'
          Dst:             manage_ipaddr
        - Src:             'kernel_netlink_net.c:2520,11'
          Dst:             is_known_vip
    - functionName:    manage_ipaddr
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2303
      functionLinenumberEnd: 2354
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          192
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - manage_addrlabel
        - memset_noop
        - netlink_add_attribute
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2309,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_net.c:2325,2'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:2339,8'
          Dst:             manage_addrlabel
        - Src:             'kernel_netlink_net.c:2350,12'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:2349,5'
          Dst:             netlink_add_attribute
    - functionName:    manage_addrlabel
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2263
      functionLinenumberEnd: 2294
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          123
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - memset_noop
        - netlink_add_attribute
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2270,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_net.c:2287,2'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:2291,41'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:2291,2'
          Dst:             netlink_add_attribute
    - functionName:    is_vip_installed_or_gone
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 585
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - addr_map_entry_match
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:590,11'
          Dst:             addr_map_entry_match
    - functionName:    add_ip
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2360
      functionLinenumberEnd: 2471
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          475
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - addr_entry_destroy
        - addr_map_entry_add
        - addr_map_entry_match
        - addr_map_entry_remove
        - is_vip_installed_or_gone
        - manage_ipaddr
        - queue_route_reinstall
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2374,10'
          Dst:             addr_map_entry_match
        - Src:             'kernel_netlink_net.c:2378,11'
          Dst:             addr_map_entry_match
        - Src:             'kernel_netlink_net.c:2388,12'
          Dst:             is_vip_installed_or_gone
        - Src:             'kernel_netlink_net.c:2428,3'
          Dst:             addr_map_entry_add
        - Src:             'kernel_netlink_net.c:2431,7'
          Dst:             manage_ipaddr
        - Src:             'kernel_netlink_net.c:2435,12'
          Dst:             is_vip_installed_or_gone
        - Src:             'kernel_netlink_net.c:2441,14'
          Dst:             strdup
        - Src:             'kernel_netlink_net.c:2448,5'
          Dst:             queue_route_reinstall
        - Src:             'kernel_netlink_net.c:2454,11'
          Dst:             addr_map_entry_match
        - Src:             'kernel_netlink_net.c:2459,4'
          Dst:             addr_map_entry_remove
        - Src:             'kernel_netlink_net.c:2460,4'
          Dst:             addr_entry_destroy
    - functionName:    destroy_subnet_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2146
      functionLinenumberEnd: 2150
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate_subnets
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2154
      functionLinenumberEnd: 2216
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          391
      EdgeCount:       66
      CyclomaticComplexity: 17
      functionsReached:
        - host_create_from_chunk
        - if_indextoname
        - parse_route
        - route_usable
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:2174,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_net.c:2182,10'
          Dst:             route_usable
        - Src:             'kernel_netlink_net.c:2186,5'
          Dst:             parse_route
        - Src:             'kernel_netlink_net.c:2200,6'
          Dst:             if_indextoname
        - Src:             'kernel_netlink_net.c:2202,18'
          Dst:             host_create_from_chunk
    - functionName:    route_usable
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1720
      functionLinenumberEnd: 1736
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:1724,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    parse_route
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1745
      functionLinenumberEnd: 1810
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          336
      EdgeCount:       38
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:1773,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_net.c:1776,23'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:1779,18'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:1782,18'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:1785,18'
          Dst:             chunk_create
    - functionName:    create_local_subnet_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2220
      functionLinenumberEnd: 2255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          106
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - enumerator_create_empty
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2227,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_net.c:2241,10'
          Dst:             enumerator_create_empty
    - functionName:    _cb_address_enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1492
      functionLinenumberEnd: 1495
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_filter_addresses
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1499
      functionLinenumberEnd: 1532
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          204
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_filter_interfaces
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1547
      functionLinenumberEnd: 1570
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          146
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_iface_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1539
      functionLinenumberEnd: 1542
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:1540,9'
          Dst:             enumerator_create_filter
    - functionName:    create_address_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1574
      functionLinenumberEnd: 1588
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_iface_enumerator
        - enumerator_create_filter
        - enumerator_create_nested
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:1584,5'
          Dst:             enumerator_create_filter
        - Src:             'kernel_netlink_net.c:1583,9'
          Dst:             enumerator_create_nested
        - Src:             'kernel_netlink_net.c:1583,9'
          Dst:             create_iface_enumerator
    - functionName:    addr_map_entry_match_up
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iface_entry_up
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:254,9'
          Dst:             iface_entry_up
    - functionName:    addr_map_entry_match_up_and_usable
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - iface_entry_up_and_usable
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:244,9'
          Dst:             iface_entry_up_and_usable
    - functionName:    get_interface_name
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1593
      functionLinenumberEnd: 1638
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          182
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - addr_map_entry_match_up
        - addr_map_entry_match_up_and_usable
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:1604,10'
          Dst:             addr_map_entry_match_up_and_usable
        - Src:             'kernel_netlink_net.c:1610,12'
          Dst:             strdup
        - Src:             'kernel_netlink_net.c:1617,10'
          Dst:             addr_map_entry_match_up_and_usable
        - Src:             'kernel_netlink_net.c:1623,12'
          Dst:             strdup
        - Src:             'kernel_netlink_net.c:1630,10'
          Dst:             addr_map_entry_match_up
    - functionName:    get_nexthop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2124
      functionLinenumberEnd: 2125
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_route
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2125,9'
          Dst:             get_route
    - functionName:    get_route
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1819
      functionLinenumberEnd: 2113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         213
      ICount:          1359
      EdgeCount:       288
      CyclomaticComplexity: 77
      functionsReached:
        - addr_in_subnet
        - chunk_create
        - get_interface_address
        - get_interface_name_by_index
        - get_route
        - get_subnet_address
        - host_create_any
        - host_create_from_chunk
        - is_interface_up_and_usable
        - is_known_vip
        - linked_list_create
        - memset_noop
        - netlink_add_attribute
        - parse_route
        - route_usable
        - rt_entry_destroy
      functionUses:    3
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:1899,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_net.c:1841,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_net.c:1855,11'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:1856,3'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:1873,4'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:1877,4'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:1884,3'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:1893,11'
          Dst:             linked_list_create
        - Src:             'kernel_netlink_net.c:1908,10'
          Dst:             route_usable
        - Src:             'kernel_netlink_net.c:1912,13'
          Dst:             parse_route
        - Src:             'kernel_netlink_net.c:1925,24'
          Dst:             is_interface_up_and_usable
        - Src:             'kernel_netlink_net.c:1929,10'
          Dst:             addr_in_subnet
        - Src:             'kernel_netlink_net.c:1935,20'
          Dst:             host_create_from_chunk
        - Src:             'kernel_netlink_net.c:1937,17'
          Dst:             is_known_vip
        - Src:             'kernel_netlink_net.c:1970,3'
          Dst:             rt_entry_destroy
        - Src:             'kernel_netlink_net.c:1989,19'
          Dst:             get_interface_address
        - Src:             'kernel_netlink_net.c:2008,22'
          Dst:             get_subnet_address
        - Src:             'kernel_netlink_net.c:2025,22'
          Dst:             get_interface_address
        - Src:             'kernel_netlink_net.c:2043,10'
          Dst:             host_create_from_chunk
        - Src:             'kernel_netlink_net.c:2046,23'
          Dst:             get_route
        - Src:             'kernel_netlink_net.c:2072,11'
          Dst:             host_create_from_chunk
        - Src:             'kernel_netlink_net.c:2075,14'
          Dst:             get_interface_name_by_index
        - Src:             'kernel_netlink_net.c:2080,11'
          Dst:             host_create_any
        - Src:             'kernel_netlink_net.c:2091,2'
          Dst:             rt_entry_destroy
    - functionName:    rt_entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1711
      functionLinenumberEnd: 1714
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_subnet_address
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 994
      functionLinenumberEnd: 995
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_matching_address
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:995,9'
          Dst:             get_matching_address
    - functionName:    get_interface_name_by_index
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1670
      functionLinenumberEnd: 1688
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:1680,10'
          Dst:             strdup
    - functionName:    get_source_addr
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2117
      functionLinenumberEnd: 2118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_route
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2118,9'
          Dst:             get_route
    - functionName:    manage_rule
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2907
      functionLinenumberEnd: 2974
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          241
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - mark_from_string
        - memset_noop
        - netlink_add_attribute
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:2914,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_net.c:2937,11'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:2938,3'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:2944,10'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:2945,2'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:2959,7'
          Dst:             mark_from_string
        - Src:             'kernel_netlink_net.c:2961,12'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:2962,4'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_net.c:2963,12'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:2964,4'
          Dst:             netlink_add_attribute
    - functionName:    init_address_list
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2810
      functionLinenumberEnd: 2900
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         45
      ICount:          354
      EdgeCount:       54
      CyclomaticComplexity: 11
      functionsReached:
        - iface_entry_up_and_usable
        - memset_noop
        - process_addr
        - process_link
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:2838,3'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_net.c:2862,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_net.c:2821,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_net.c:2843,5'
          Dst:             process_link
        - Src:             'kernel_netlink_net.c:2867,5'
          Dst:             process_addr
        - Src:             'kernel_netlink_net.c:2881,7'
          Dst:             iface_entry_up_and_usable
    - functionName:    nl_group
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/./kernel_netlink_shared.h'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          35
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3022
      functionLinenumberEnd: 3060
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          273
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - addr_map_destroy
        - iface_entry_destroy
        - manage_rule
        - manage_srcroute
        - net_changes_clear
        - route_entry_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:3028,3'
          Dst:             manage_rule
        - Src:             'kernel_netlink_net.c:3030,3'
          Dst:             manage_rule
        - Src:             'kernel_netlink_net.c:3037,3'
          Dst:             manage_srcroute
        - Src:             'kernel_netlink_net.c:3040,3'
          Dst:             route_entry_destroy
        - Src:             'kernel_netlink_net.c:3047,2'
          Dst:             net_changes_clear
        - Src:             'kernel_netlink_net.c:3051,2'
          Dst:             addr_map_destroy
        - Src:             'kernel_netlink_net.c:3052,2'
          Dst:             addr_map_destroy
        - Src:             'kernel_netlink_net.c:3054,2'
          Dst:             iface_entry_destroy
    - functionName:    check_kernel_features
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2981
      functionLinenumberEnd: 3010
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          79
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - __isoc99_sscanf
        - uname
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_net.c:2987,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_net.c:2985,6'
          Dst:             uname
        - Src:             'kernel_netlink_net.c:2987,10'
          Dst:             __isoc99_sscanf
    - functionName:    net_change_equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:298,9'
          Dst:             streq
    - functionName:    net_change_hash
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:290,48'
          Dst:             strlen
        - Src:             'kernel_netlink_net.c:290,20'
          Dst:             chunk_create
        - Src:             'kernel_netlink_net.c:290,9'
          Dst:             chunk_hash
    - functionName:    addr_map_entry_equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    addr_map_entry_hash
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:224,9'
          Dst:             chunk_hash
    - functionName:    kernel_netlink_net_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_net.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3066
      functionLinenumberEnd: 3205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         34
      ICount:          552
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - __errno_location
        - addr_map_entry_equals
        - addr_map_entry_hash
        - check_kernel_features
        - destroy
        - enumerator_create_token
        - hashlist_create
        - hashtable_create
        - init_address_list
        - linked_list_create
        - manage_rule
        - mutex_create
        - net_change_equals
        - net_change_hash
        - netlink_event_socket_create
        - netlink_socket_create
        - nl_group
        - route_entry_equals
        - route_entry_hash
        - rwlock_condvar_create
        - rwlock_create
        - spinlock_create
        - strtoul
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             rwlock_create
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             rwlock_condvar_create
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             linked_list_create
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             hashlist_create
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             addr_map_entry_hash
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             addr_map_entry_equals
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             hashlist_create
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             addr_map_entry_hash
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             addr_map_entry_equals
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             netlink_socket_create
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             spinlock_create
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             hashlist_create
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             route_entry_hash
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             route_entry_equals
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             mutex_create
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             hashtable_create
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             net_change_hash
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             net_change_equals
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             mutex_create
        - Src:             'kernel_netlink_net.c:3072,2'
          Dst:             linked_list_create
        - Src:             'kernel_netlink_net.c:3133,2'
          Dst:             check_kernel_features
        - Src:             'kernel_netlink_net.c:3137,3'
          Dst:             destroy
        - Src:             'kernel_netlink_net.c:3148,16'
          Dst:             enumerator_create_token
        - Src:             'kernel_netlink_net.c:3151,4'
          Dst:             __errno_location
        - Src:             'kernel_netlink_net.c:3152,12'
          Dst:             strtoul
        - Src:             'kernel_netlink_net.c:3154,8'
          Dst:             __errno_location
        - Src:             'kernel_netlink_net.c:3162,11'
          Dst:             nl_group
        - Src:             'kernel_netlink_net.c:3163,5'
          Dst:             nl_group
        - Src:             'kernel_netlink_net.c:3164,5'
          Dst:             nl_group
        - Src:             'kernel_netlink_net.c:3167,13'
          Dst:             nl_group
        - Src:             'kernel_netlink_net.c:3168,7'
          Dst:             nl_group
        - Src:             'kernel_netlink_net.c:3172,13'
          Dst:             nl_group
        - Src:             'kernel_netlink_net.c:3173,7'
          Dst:             nl_group
        - Src:             'kernel_netlink_net.c:3175,24'
          Dst:             netlink_event_socket_create
        - Src:             'kernel_netlink_net.c:3179,3'
          Dst:             destroy
        - Src:             'kernel_netlink_net.c:3183,6'
          Dst:             init_address_list
        - Src:             'kernel_netlink_net.c:3186,3'
          Dst:             destroy
        - Src:             'kernel_netlink_net.c:3192,7'
          Dst:             manage_rule
        - Src:             'kernel_netlink_net.c:3197,7'
          Dst:             manage_rule
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    _cb_watch_event
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 776
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          165
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - recvfrom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:755,8'
          Dst:             recvfrom
        - Src:             'kernel_netlink_shared.c:759,7'
          Dst:             __errno_location
        - Src:             'kernel_netlink_shared.c:759,26'
          Dst:             __errno_location
        - Src:             'kernel_netlink_shared.c:759,50'
          Dst:             __errno_location
    - functionName:    _cb_watch
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - read_and_queue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:348,3'
          Dst:             read_and_queue
    - functionName:    read_and_queue
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          173
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - memwipe
        - queue
        - read_msg
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:314,19'
          Dst:             read_msg
        - Src:             'kernel_netlink_shared.c:329,9'
          Dst:             queue
        - Src:             'kernel_netlink_shared.c:338,3'
          Dst:             memwipe
    - functionName:    read_msg
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          164
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - recv
        - select
        - timeval_add_ms
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:246,3'
          Dst:             timeval_add_ms
        - Src:             'kernel_netlink_shared.c:248,7'
          Dst:             select
        - Src:             'kernel_netlink_shared.c:254,8'
          Dst:             recv
        - Src:             'kernel_netlink_shared.c:262,7'
          Dst:             __errno_location
        - Src:             'kernel_netlink_shared.c:262,26'
          Dst:             __errno_location
        - Src:             'kernel_netlink_shared.c:262,50'
          Dst:             __errno_location
    - functionName:    queue
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          129
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_insert
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:287,3'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_shared.c:288,3'
          Dst:             array_insert
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timeval_add_ms
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    recv
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netlink_send_ack
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          166
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - netlink_log_error
        - netlink_send
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kernel_netlink_shared.c:578,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_shared.c:571,6'
          Dst:             netlink_send
        - Src:             'kernel_netlink_shared.c:596,6'
          Dst:             netlink_log_error
        - Src:             'kernel_netlink_shared.c:600,5'
          Dst:             netlink_log_error
    - functionName:    netlink_send
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 513
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          148
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached:
        - ignore_retransmit_error
        - ref_get_nonzero
        - send_once
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_shared.c:531,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_shared.c:517,8'
          Dst:             ref_get_nonzero
        - Src:             'kernel_netlink_shared.c:530,12'
          Dst:             send_once
        - Src:             'kernel_netlink_shared.c:553,5'
          Dst:             ignore_retransmit_error
    - functionName:    netlink_log_error
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 918
      functionLinenumberEnd: 992
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         46
      ICount:          289
      EdgeCount:       61
      CyclomaticComplexity: 17
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ref_get_nonzero
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/atomics.h'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_once
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          357
      EdgeCount:       53
      CyclomaticComplexity: 15
      functionsReached:
        - array_count
        - array_create
        - array_get
        - array_remove
        - condvar_create
        - destroy_entry
        - getpid
        - memcpy_noop
        - read_and_queue
        - write_msg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:365,18'
          Dst:             getpid
        - Src:             'kernel_netlink_shared.c:374,7'
          Dst:             write_msg
        - Src:             'kernel_netlink_shared.c:380,2'
          Dst:             condvar_create
        - Src:             'kernel_netlink_shared.c:380,2'
          Dst:             array_create
        - Src:             'kernel_netlink_shared.c:408,8'
          Dst:             read_and_queue
        - Src:             'kernel_netlink_shared.c:420,3'
          Dst:             destroy_entry
        - Src:             'kernel_netlink_shared.c:424,32'
          Dst:             array_count
        - Src:             'kernel_netlink_shared.c:426,3'
          Dst:             array_get
        - Src:             'kernel_netlink_shared.c:432,9'
          Dst:             array_remove
        - Src:             'kernel_netlink_shared.c:439,3'
          Dst:             memcpy_noop
        - Src:             'kernel_netlink_shared.c:443,2'
          Dst:             destroy_entry
    - functionName:    ignore_retransmit_error
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          150
      EdgeCount:       70
      CyclomaticComplexity: 33
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_shared.c:453,2'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_shared.c:456,4'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_shared.c:459,6'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_shared.c:468,6'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_shared.c:482,4'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_shared.c:485,6'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_shared.c:494,6'
          Branch Sides:    []
      Callsites:       []
    - functionName:    write_msg
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - sendto
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:216,9'
          Dst:             sendto
        - Src:             'kernel_netlink_shared.c:220,8'
          Dst:             __errno_location
    - functionName:    destroy_entry
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy_function
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:195,2'
          Dst:             array_destroy_function
    - functionName:    addrs_null_or_equal
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1037
      functionLinenumberEnd: 1038
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          62
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    route_entry_equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1045
      functionLinenumberEnd: 1051
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - addrs_null_or_equal
        - chunk_equals
        - streq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:1046,9'
          Dst:             streq
        - Src:             'kernel_netlink_shared.c:1049,3'
          Dst:             chunk_equals
        - Src:             'kernel_netlink_shared.c:1050,3'
          Dst:             addrs_null_or_equal
        - Src:             'kernel_netlink_shared.c:1051,3'
          Dst:             addrs_null_or_equal
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    route_entry_hash
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1028
      functionLinenumberEnd: 1030
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
        - chunk_hash_inc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:1029,24'
          Dst:             chunk_create
        - Src:             'kernel_netlink_shared.c:1030,9'
          Dst:             chunk_hash
        - Src:             'kernel_netlink_shared.c:1029,9'
          Dst:             chunk_hash_inc
    - functionName:    strdupnull
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:79,13'
          Dst:             strdup
    - functionName:    route_entry_clone
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1010
      functionLinenumberEnd: 1021
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          133
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create_clone
        - strdupnull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:1013,2'
          Dst:             chunk_create_clone
        - Src:             'kernel_netlink_shared.c:1013,2'
          Dst:             strdupnull
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    route_entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 998
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_free
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:1002,2'
          Dst:             chunk_free
    - functionName:    netlink_reserve
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 903
      functionLinenumberEnd: 912
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add_rtattr
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:906,8'
          Dst:             add_rtattr
    - functionName:    add_rtattr
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 860
      functionLinenumberEnd: 874
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          81
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netlink_nested_end
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 888
      functionLinenumberEnd: 897
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          42
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netlink_nested_start
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 880
      functionLinenumberEnd: 881
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_rtattr
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:881,9'
          Dst:             add_rtattr
    - functionName:    netlink_add_attribute
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 839
      functionLinenumberEnd: 853
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          92
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcpy_noop
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:851,2'
          Dst:             memcpy_noop
    - functionName:    destroy_event
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - close
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:784,3'
          Dst:             close
    - functionName:    netlink_event_socket_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 832
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          115
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - bind
        - destroy_event
        - netlink_get_buflen
        - set_rcvbuf_size
        - socket
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:801,2'
          Dst:             netlink_get_buflen
        - Src:             'kernel_netlink_shared.c:810,17'
          Dst:             socket
        - Src:             'kernel_netlink_shared.c:815,3'
          Dst:             destroy_event
        - Src:             'kernel_netlink_shared.c:819,2'
          Dst:             set_rcvbuf_size
        - Src:             'kernel_netlink_shared.c:821,6'
          Dst:             bind
        - Src:             'kernel_netlink_shared.c:825,3'
          Dst:             destroy_event
    - functionName:    netlink_get_buflen
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - sysconf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:644,19'
          Dst:             sysconf
    - functionName:    set_rcvbuf_size
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 677
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - setsockopt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:668,7'
          Dst:             setsockopt
        - Src:             'kernel_netlink_shared.c:670,4'
          Dst:             setsockopt
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 631
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - close
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:626,3'
          Dst:             close
    - functionName:    netlink_socket_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_shared.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          221
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - bind
        - destroy
        - hashtable_create
        - hashtable_equals_ptr
        - hashtable_hash_ptr
        - mutex_create
        - netlink_get_buflen
        - set_rcvbuf_size
        - setsockopt
        - socket
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_shared.c:691,2'
          Dst:             mutex_create
        - Src:             'kernel_netlink_shared.c:691,2'
          Dst:             hashtable_create
        - Src:             'kernel_netlink_shared.c:691,2'
          Dst:             hashtable_hash_ptr
        - Src:             'kernel_netlink_shared.c:691,2'
          Dst:             hashtable_equals_ptr
        - Src:             'kernel_netlink_shared.c:691,2'
          Dst:             socket
        - Src:             'kernel_netlink_shared.c:691,2'
          Dst:             netlink_get_buflen
        - Src:             'kernel_netlink_shared.c:717,3'
          Dst:             destroy
        - Src:             'kernel_netlink_shared.c:720,6'
          Dst:             bind
        - Src:             'kernel_netlink_shared.c:724,3'
          Dst:             destroy
        - Src:             'kernel_netlink_shared.c:730,2'
          Dst:             setsockopt
        - Src:             'kernel_netlink_shared.c:733,2'
          Dst:             setsockopt
        - Src:             'kernel_netlink_shared.c:736,2'
          Dst:             set_rcvbuf_size
    - functionName:    interface_up
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_xfrmi.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          92
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - memset_noop
        - netlink_add_attribute
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_xfrmi.c:59,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_xfrmi.c:71,42'
          Dst:             strlen
        - Src:             'kernel_netlink_xfrmi.c:71,42'
          Dst:             chunk_create
        - Src:             'kernel_netlink_xfrmi.c:71,2'
          Dst:             netlink_add_attribute
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_xfrmi.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_info_data
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_xfrmi.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          151
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - if_indextoname
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_xfrmi.c:183,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_xfrmi.c:197,7'
          Dst:             if_indextoname
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    parse_linkinfo
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_xfrmi.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          119
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - parse_info_data
        - streq
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_xfrmi.c:217,3'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_xfrmi.c:220,19'
          Dst:             streq
        - Src:             'kernel_netlink_xfrmi.c:223,5'
          Dst:             parse_info_data
    - functionName:    enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_xfrmi.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         62
      ICount:          466
      EdgeCount:       77
      CyclomaticComplexity: 17
      functionsReached:
        - parse_linkinfo
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kernel_netlink_xfrmi.c:253,3'
          Branch Sides:    []
        - Branch String:   'kernel_netlink_xfrmi.c:268,6'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_xfrmi.c:280,8'
          Dst:             parse_linkinfo
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_xfrmi.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          120
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - enumerator_create_empty
        - memset_noop
        - netlink_add_attribute
        - netlink_nested_end
        - netlink_nested_start
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_xfrmi.c:318,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_xfrmi.c:330,13'
          Dst:             netlink_nested_start
        - Src:             'kernel_netlink_xfrmi.c:332,45'
          Dst:             strlen
        - Src:             'kernel_netlink_xfrmi.c:332,45'
          Dst:             chunk_create
        - Src:             'kernel_netlink_xfrmi.c:332,2'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_xfrmi.c:335,2'
          Dst:             netlink_nested_end
        - Src:             'kernel_netlink_xfrmi.c:340,10'
          Dst:             enumerator_create_empty
    - functionName:    delete
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_xfrmi.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          113
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - memset_noop
        - netlink_add_attribute
        - netlink_nested_end
        - netlink_nested_start
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_xfrmi.c:384,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_xfrmi.c:363,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_xfrmi.c:373,42'
          Dst:             strlen
        - Src:             'kernel_netlink_xfrmi.c:373,42'
          Dst:             chunk_create
        - Src:             'kernel_netlink_xfrmi.c:373,2'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_xfrmi.c:377,13'
          Dst:             netlink_nested_start
        - Src:             'kernel_netlink_xfrmi.c:379,45'
          Dst:             strlen
        - Src:             'kernel_netlink_xfrmi.c:379,45'
          Dst:             chunk_create
        - Src:             'kernel_netlink_xfrmi.c:379,2'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_xfrmi.c:382,2'
          Dst:             netlink_nested_end
    - functionName:    create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_xfrmi.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          220
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create
        - if_nametoindex
        - interface_up
        - memset_noop
        - netlink_add_attribute
        - netlink_nested_end
        - netlink_nested_start
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kernel_netlink_xfrmi.c:138,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kernel_netlink_xfrmi.c:94,13'
          Dst:             if_nametoindex
        - Src:             'kernel_netlink_xfrmi.c:102,2'
          Dst:             memset_noop
        - Src:             'kernel_netlink_xfrmi.c:112,42'
          Dst:             strlen
        - Src:             'kernel_netlink_xfrmi.c:112,42'
          Dst:             chunk_create
        - Src:             'kernel_netlink_xfrmi.c:112,2'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_xfrmi.c:116,40'
          Dst:             chunk_create
        - Src:             'kernel_netlink_xfrmi.c:116,3'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_xfrmi.c:120,13'
          Dst:             netlink_nested_start
        - Src:             'kernel_netlink_xfrmi.c:122,45'
          Dst:             strlen
        - Src:             'kernel_netlink_xfrmi.c:122,45'
          Dst:             chunk_create
        - Src:             'kernel_netlink_xfrmi.c:122,2'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_xfrmi.c:125,14'
          Dst:             netlink_nested_start
        - Src:             'kernel_netlink_xfrmi.c:127,46'
          Dst:             chunk_create
        - Src:             'kernel_netlink_xfrmi.c:127,2'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_xfrmi.c:131,46'
          Dst:             chunk_create
        - Src:             'kernel_netlink_xfrmi.c:131,3'
          Dst:             netlink_add_attribute
        - Src:             'kernel_netlink_xfrmi.c:135,2'
          Dst:             netlink_nested_end
        - Src:             'kernel_netlink_xfrmi.c:136,2'
          Dst:             netlink_nested_end
        - Src:             'kernel_netlink_xfrmi.c:141,11'
          Dst:             interface_up
    - functionName:    kernel_netlink_xfrmi_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_xfrmi.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          91
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - create
        - delete
        - kernel_netlink_xfrmi_destroy
        - netlink_socket_create
        - random
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kernel_netlink_xfrmi.c:415,2'
          Dst:             netlink_socket_create
        - Src:             'kernel_netlink_xfrmi.c:433,11'
          Dst:             random
        - Src:             'kernel_netlink_xfrmi.c:434,3'
          Dst:             snprintf
        - Src:             'kernel_netlink_xfrmi.c:436,8'
          Dst:             create
        - Src:             'kernel_netlink_xfrmi.c:438,4'
          Dst:             kernel_netlink_xfrmi_destroy
        - Src:             'kernel_netlink_xfrmi.c:442,3'
          Dst:             delete
    - functionName:    kernel_netlink_xfrmi_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/kernel_netlink/kernel_netlink_xfrmi.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 443
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    attribute_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          109
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_host_family
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_attribute_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 426
      functionLinenumberEnd: 438
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - has_host_family
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'resolve_handler.c:429,2'
          Dst:             has_host_family
        - Src:             'resolve_handler.c:429,2'
          Dst:             has_host_family
    - functionName:    release
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          164
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - host_create_from_chunk
        - invoke_resolvconf
        - write_nameservers
      functionUses:    0
      BranchProfiles:
        - Branch String:   'resolve_handler.c:318,2'
          Branch Sides:    []
      Callsites:
        - Src:             'resolve_handler.c:329,9'
          Dst:             host_create_from_chunk
        - Src:             'resolve_handler.c:349,5'
          Dst:             invoke_resolvconf
        - Src:             'resolve_handler.c:355,5'
          Dst:             write_nameservers
    - functionName:    invoke_resolvconf
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          235
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached:
        - close
        - fclose
        - fdopen
        - ferror
        - fgets
        - fprintf
        - process_start_shell
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'resolve_handler.c:174,12'
          Dst:             process_start_shell
        - Src:             'resolve_handler.c:183,11'
          Dst:             fdopen
        - Src:             'resolve_handler.c:189,5'
          Dst:             fprintf
        - Src:             'resolve_handler.c:192,4'
          Dst:             fclose
        - Src:             'resolve_handler.c:196,4'
          Dst:             close
        - Src:             'resolve_handler.c:197,4'
          Dst:             close
        - Src:             'resolve_handler.c:206,10'
          Dst:             fdopen
        - Src:             'resolve_handler.c:213,8'
          Dst:             fgets
        - Src:             'resolve_handler.c:215,9'
          Dst:             ferror
        - Src:             'resolve_handler.c:223,16'
          Dst:             strlen
        - Src:             'resolve_handler.c:231,3'
          Dst:             fclose
        - Src:             'resolve_handler.c:235,3'
          Dst:             close
    - functionName:    write_nameservers
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          128
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - fclose
        - fgets
        - fopen
        - fprintf
        - fputs
        - strstr
        - unlink
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'resolve_handler.c:123,7'
          Dst:             fopen
        - Src:             'resolve_handler.c:125,2'
          Dst:             unlink
        - Src:             'resolve_handler.c:126,8'
          Dst:             fopen
        - Src:             'resolve_handler.c:133,4'
          Dst:             fprintf
        - Src:             'resolve_handler.c:140,11'
          Dst:             fgets
        - Src:             'resolve_handler.c:142,10'
          Dst:             strstr
        - Src:             'resolve_handler.c:144,6'
          Dst:             fputs
        - Src:             'resolve_handler.c:151,3'
          Dst:             fclose
        - Src:             'resolve_handler.c:155,3'
          Dst:             fclose
    - functionName:    unlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fputs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          268
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - host_create_from_chunk
        - invoke_resolvconf
        - write_nameservers
      functionUses:    0
      BranchProfiles:
        - Branch String:   'resolve_handler.c:248,2'
          Branch Sides:    []
      Callsites:
        - Src:             'resolve_handler.c:251,11'
          Dst:             host_create_from_chunk
        - Src:             'resolve_handler.c:254,11'
          Dst:             host_create_from_chunk
        - Src:             'resolve_handler.c:279,14'
          Dst:             invoke_resolvconf
        - Src:             'resolve_handler.c:284,14'
          Dst:             write_nameservers
    - functionName:    dns_server_equals
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          58
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'resolve_handler.c:108,9'
          Dst:             chunk_equals
    - functionName:    dns_server_hash
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'resolve_handler.c:99,9'
          Dst:             chunk_hash
    - functionName:    resolve_handler_create
      functionSourceFile: '/src/strongswan/src/libcharon/plugins/resolve/resolve_handler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 493
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         11
      ICount:          143
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dns_server_equals
        - dns_server_hash
        - hashtable_create
        - mutex_create
        - stat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'resolve_handler.c:457,2'
          Dst:             mutex_create
        - Src:             'resolve_handler.c:457,2'
          Dst:             hashtable_create
        - Src:             'resolve_handler.c:457,2'
          Dst:             dns_server_hash
        - Src:             'resolve_handler.c:457,2'
          Dst:             dns_server_equals
        - Src:             'resolve_handler.c:480,27'
          Dst:             stat
    - functionName:    stat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lease_enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          113
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lease_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          291
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - array_create_enumerator
        - offset2host
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:539,26'
          Dst:             offset2host
        - Src:             'attributes/mem_pool.c:546,26'
          Dst:             offset2host
        - Src:             'attributes/mem_pool.c:558,18'
          Dst:             array_create_enumerator
        - Src:             'attributes/mem_pool.c:559,19'
          Dst:             array_create_enumerator
    - functionName:    offset2host
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - apply_offset
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:168,9'
          Dst:             apply_offset
    - functionName:    apply_offset
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          112
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
        - host_create_from_chunk
        - htonl
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:143,9'
          Dst:             chunk_create_clone
        - Src:             'attributes/mem_pool.c:152,24'
          Dst:             ntohl
        - Src:             'attributes/mem_pool.c:152,9'
          Dst:             htonl
        - Src:             'attributes/mem_pool.c:153,9'
          Dst:             host_create_from_chunk
    - functionName:    create_lease_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          69
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    release_address
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          163
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - array_create_enumerator
        - array_insert
        - array_remove_at
        - host2offset
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:465,13'
          Dst:             host2offset
        - Src:             'attributes/mem_pool.c:467,17'
          Dst:             array_create_enumerator
        - Src:             'attributes/mem_pool.c:474,7'
          Dst:             array_remove_at
        - Src:             'attributes/mem_pool.c:489,5'
          Dst:             array_insert
    - functionName:    host2offset
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          169
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_skip
        - memeq
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:188,8'
          Dst:             memeq
        - Src:             'attributes/mem_pool.c:192,10'
          Dst:             chunk_skip
        - Src:             'attributes/mem_pool.c:193,10'
          Dst:             chunk_skip
        - Src:             'attributes/mem_pool.c:195,10'
          Dst:             ntohl
        - Src:             'attributes/mem_pool.c:196,10'
          Dst:             ntohl
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    entry_destroy
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:113,2'
          Dst:             array_destroy
        - Src:             'attributes/mem_pool.c:114,2'
          Dst:             array_destroy
    - functionName:    entry_create
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:99,2'
          Dst:             array_create
        - Src:             'attributes/mem_pool.c:99,2'
          Dst:             array_create
    - functionName:    hash_addr
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_hash_inc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:267,10'
          Dst:             chunk_hash_inc
    - functionName:    get_reassigned
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          184
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - array_count
        - array_insert
        - array_remove
        - entry_create
        - entry_destroy
        - hash_addr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:370,7'
          Dst:             array_remove
        - Src:             'attributes/mem_pool.c:376,8'
          Dst:             array_count
        - Src:             'attributes/mem_pool.c:376,39'
          Dst:             array_count
        - Src:             'attributes/mem_pool.c:379,4'
          Dst:             entry_destroy
        - Src:             'attributes/mem_pool.c:393,12'
          Dst:             entry_create
        - Src:             'attributes/mem_pool.c:396,16'
          Dst:             hash_addr
        - Src:             'attributes/mem_pool.c:397,3'
          Dst:             array_insert
    - functionName:    get_new
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          93
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_insert
        - entry_create
        - hash_addr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:345,12'
          Dst:             entry_create
        - Src:             'attributes/mem_pool.c:349,16'
          Dst:             hash_addr
        - Src:             'attributes/mem_pool.c:350,3'
          Dst:             array_insert
    - functionName:    get_existing
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          208
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - array_create_enumerator
        - array_insert
        - array_remove_at
        - hash_addr
        - host2offset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:294,16'
          Dst:             array_create_enumerator
        - Src:             'attributes/mem_pool.c:297,23'
          Dst:             hash_addr
        - Src:             'attributes/mem_pool.c:299,23'
          Dst:             host2offset
        - Src:             'attributes/mem_pool.c:303,5'
          Dst:             array_insert
        - Src:             'attributes/mem_pool.c:316,15'
          Dst:             array_create_enumerator
        - Src:             'attributes/mem_pool.c:320,19'
          Dst:             hash_addr
        - Src:             'attributes/mem_pool.c:321,3'
          Dst:             array_insert
        - Src:             'attributes/mem_pool.c:322,3'
          Dst:             array_remove_at
    - functionName:    acquire_address
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          153
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - get_existing
        - get_new
        - get_reassigned
        - offset2host
      functionUses:    0
      BranchProfiles:
        - Branch String:   'attributes/mem_pool.c:422,2'
          Branch Sides:    []
      Callsites:
        - Src:             'attributes/mem_pool.c:425,13'
          Dst:             get_existing
        - Src:             'attributes/mem_pool.c:428,13'
          Dst:             get_new
        - Src:             'attributes/mem_pool.c:431,13'
          Dst:             get_reassigned
        - Src:             'attributes/mem_pool.c:445,10'
          Dst:             offset2host
    - functionName:    get_offline
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          82
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_count
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:252,12'
          Dst:             array_count
    - functionName:    get_online
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          82
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_count
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:233,12'
          Dst:             array_count
    - functionName:    get_size
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_base
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_equals
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_hash
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:123,9'
          Dst:             chunk_hash
    - functionName:    untoh32
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:177,9'
          Dst:             ntohl
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    mem_pool_create_range
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 723
      functionLinenumberEnd: 756
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          214
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - chunk_equals
        - create_generic
        - memcmp
        - untoh32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:733,3'
          Dst:             memcmp
        - Src:             'attributes/mem_pool.c:739,17'
          Dst:             chunk_create
        - Src:             'attributes/mem_pool.c:740,8'
          Dst:             chunk_create
        - Src:             'attributes/mem_pool.c:739,4'
          Dst:             chunk_equals
        - Src:             'attributes/mem_pool.c:745,9'
          Dst:             untoh32
        - Src:             'attributes/mem_pool.c:746,6'
          Dst:             untoh32
        - Src:             'attributes/mem_pool.c:752,9'
          Dst:             create_generic
    - functionName:    create_generic
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 637
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          68
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashtable_create
        - id_equals
        - id_hash
        - mutex_create
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:619,2'
          Dst:             strdup
        - Src:             'attributes/mem_pool.c:619,2'
          Dst:             hashtable_create
        - Src:             'attributes/mem_pool.c:619,2'
          Dst:             id_hash
        - Src:             'attributes/mem_pool.c:619,2'
          Dst:             id_equals
        - Src:             'attributes/mem_pool.c:619,2'
          Dst:             mutex_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 610
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          101
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - entry_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:601,3'
          Dst:             entry_destroy
    - functionName:    network_id_diff
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 646
      functionLinenumberEnd: 658
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - untoh32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:655,9'
          Dst:             untoh32
    - functionName:    mem_pool_create
      functionSourceFile: '/src/strongswan/src/libcharon/attributes/mem_pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 717
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          222
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - apply_offset
        - create_generic
        - destroy
        - network_id_diff
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'attributes/mem_pool.c:669,9'
          Dst:             create_generic
        - Src:             'attributes/mem_pool.c:690,11'
          Dst:             network_id_diff
        - Src:             'attributes/mem_pool.c:694,18'
          Dst:             apply_offset
        - Src:             'attributes/mem_pool.c:704,12'
          Dst:             network_id_diff
        - Src:             'attributes/mem_pool.c:712,4'
          Dst:             destroy
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 584
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_chunk
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - get_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/generator.c:437,36'
          Dst:             get_length
        - Src:             'encoding/generator.c:437,9'
          Dst:             chunk_create
    - functionName:    get_size
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_space
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    write_bytes_to_buffer
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          57
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - make_space_available
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/generator.c:185,2'
          Dst:             make_space_available
    - functionName:    make_space_available
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          92
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_size
        - get_space
        - realloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/generator.c:156,10'
          Dst:             get_space
        - Src:             'encoding/generator.c:160,21'
          Dst:             get_size
        - Src:             'encoding/generator.c:170,18'
          Dst:             realloc
    - functionName:    realloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generate_from_chunk
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - write_bytes_to_buffer
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/generator.c:425,2'
          Dst:             write_bytes_to_buffer
    - functionName:    get_offset
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generate_flag
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 403
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          120
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - make_space_available
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/generator.c:384,2'
          Dst:             make_space_available
    - functionName:    generate_u_int_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          433
      EdgeCount:       79
      CyclomaticComplexity: 13
      functionsReached:
        - htonl
        - htons
        - make_space_available
        - write_bytes_to_buffer
      functionUses:    4
      BranchProfiles:
        - Branch String:   'encoding/generator.c:204,2'
          Branch Sides:    []
        - Branch String:   'encoding/generator.c:241,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/generator.c:240,2'
          Dst:             make_space_available
        - Src:             'encoding/generator.c:317,10'
          Dst:             htons
        - Src:             'encoding/generator.c:323,4'
          Dst:             write_bytes_to_buffer
        - Src:             'encoding/generator.c:332,19'
          Dst:             htons
        - Src:             'encoding/generator.c:337,4'
          Dst:             write_bytes_to_buffer
        - Src:             'encoding/generator.c:342,19'
          Dst:             htonl
        - Src:             'encoding/generator.c:347,4'
          Dst:             write_bytes_to_buffer
        - Src:             'encoding/generator.c:353,4'
          Dst:             write_bytes_to_buffer
    - functionName:    generate_payload
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         65
      ICount:          414
      EdgeCount:       73
      CyclomaticComplexity: 10
      functionsReached:
        - generate_flag
        - generate_from_chunk
        - generate_payload
        - generate_u_int_type
        - get_offset
      functionUses:    1
      BranchProfiles:
        - Branch String:   'encoding/generator.c:480,3'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/generator.c:492,5'
          Dst:             generate_u_int_type
        - Src:             'encoding/generator.c:496,5'
          Dst:             generate_flag
        - Src:             'encoding/generator.c:499,34'
          Dst:             get_offset
        - Src:             'encoding/generator.c:500,5'
          Dst:             generate_u_int_type
        - Src:             'encoding/generator.c:505,5'
          Dst:             generate_from_chunk
        - Src:             'encoding/generator.c:526,6'
          Dst:             generate_payload
        - Src:             'encoding/generator.c:532,5'
          Dst:             generate_flag
        - Src:             'encoding/generator.c:540,6'
          Dst:             generate_u_int_type
        - Src:             'encoding/generator.c:544,6'
          Dst:             generate_u_int_type
        - Src:             'encoding/generator.c:559,6'
          Dst:             generate_from_chunk
    - functionName:    generator_create_no_dbg
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - generator_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/generator.c:614,52'
          Dst:             generator_create
    - functionName:    generator_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/generator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 590
      functionLinenumberEnd: 606
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          71
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - get_header_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/auth_payload.c:175,20'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/auth_payload.c:176,25'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_auth_method
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_auth_method
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    auth_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/auth_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          87
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/auth_payload.c:199,2'
          Dst:             get_header_length
    - functionName:    get_url
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_hash
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_cert_encoding
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_container
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          53
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/cert_payload.c:248,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_cert
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          68
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/cert_payload.c:222,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          176
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - __ctype_b_loc
        - chunk_create_cat
        - chunk_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/cert_payload.c:160,14'
          Dst:             __ctype_b_loc
        - Src:             'encoding/payloads/cert_payload.c:169,16'
          Dst:             chunk_length
        - Src:             'encoding/payloads/cert_payload.c:169,16'
          Dst:             chunk_create_cat
    - functionName:    __ctype_b_loc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cert_payload_create_custom
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cert_payload_create
        - get_header_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/cert_payload.c:388,34'
          Dst:             cert_payload_create
        - Src:             'encoding/payloads/cert_payload.c:391,25'
          Dst:             get_header_length
    - functionName:    cert_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          95
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/cert_payload.c:302,2'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cert_payload_create_from_hash_and_url
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          89
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cert_payload_create
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - get_header_length
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/cert_payload.c:372,34'
          Dst:             cert_payload_create
        - Src:             'encoding/payloads/cert_payload.c:374,15'
          Dst:             strlen
        - Src:             'encoding/payloads/cert_payload.c:374,15'
          Dst:             chunk_create
        - Src:             'encoding/payloads/cert_payload.c:374,15'
          Dst:             chunk_length
        - Src:             'encoding/payloads/cert_payload.c:374,15'
          Dst:             strlen
        - Src:             'encoding/payloads/cert_payload.c:374,15'
          Dst:             chunk_create
        - Src:             'encoding/payloads/cert_payload.c:374,15'
          Dst:             chunk_create_cat
        - Src:             'encoding/payloads/cert_payload.c:375,25'
          Dst:             get_header_length
    - functionName:    cert_payload_create_from_cert
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/cert_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          95
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - cert_payload_create
        - get_header_length
      functionUses:    4
      BranchProfiles:
        - Branch String:   'encoding/payloads/cert_payload.c:337,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/cert_payload.c:336,34'
          Dst:             cert_payload_create
        - Src:             'encoding/payloads/cert_payload.c:360,25'
          Dst:             get_header_length
    - functionName:    get_dn
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - identification_create_from_encoding
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/certreq_payload.c:170,10'
          Dst:             identification_create_from_encoding
    - functionName:    add_keyid
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create_cat
        - chunk_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/certreq_payload.c:178,15'
          Dst:             chunk_length
        - Src:             'encoding/payloads/certreq_payload.c:178,15'
          Dst:             chunk_create_cat
    - functionName:    get_cert_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          30
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/certreq_payload.c:244,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    keyid_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          115
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_keyid_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - enumerator_create_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/certreq_payload.c:228,10'
          Dst:             enumerator_create_empty
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/certreq_payload.c:258,2'
          Dst:             chunk_free
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          63
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    certreq_payload_create_dn
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - certreq_payload_create
        - chunk_create_clone
        - get_header_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/certreq_payload.c:328,6'
          Dst:             certreq_payload_create
        - Src:             'encoding/payloads/certreq_payload.c:331,15'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/certreq_payload.c:332,25'
          Dst:             get_header_length
    - functionName:    certreq_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          90
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/certreq_payload.c:269,2'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    certreq_payload_create_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/certreq_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - certreq_payload_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'encoding/payloads/certreq_payload.c:303,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/certreq_payload.c:302,6'
          Dst:             certreq_payload_create
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    spis_enumerate
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_skip
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/delete_payload.c:317,3'
          Dst:             memcpy_noop
        - Src:             'encoding/payloads/delete_payload.c:318,16'
          Dst:             chunk_skip
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_spi_enumerator
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - enumerator_create_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/delete_payload.c:331,10'
          Dst:             enumerator_create_empty
    - functionName:    get_ike_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/delete_payload.c:293,2'
          Dst:             memcpy_noop
        - Src:             'encoding/payloads/delete_payload.c:294,2'
          Dst:             memcpy_noop
    - functionName:    set_ike_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          97
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - get_header_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/delete_payload.c:279,15'
          Dst:             chunk_create
        - Src:             'encoding/payloads/delete_payload.c:279,15'
          Dst:             chunk_create
        - Src:             'encoding/payloads/delete_payload.c:279,15'
          Dst:             chunk_length
        - Src:             'encoding/payloads/delete_payload.c:279,15'
          Dst:             chunk_create
        - Src:             'encoding/payloads/delete_payload.c:279,15'
          Dst:             chunk_create
        - Src:             'encoding/payloads/delete_payload.c:279,15'
          Dst:             chunk_create_cat
        - Src:             'encoding/payloads/delete_payload.c:282,25'
          Dst:             get_header_length
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_spi
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/delete_payload.c:262,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/delete_payload.c:268,17'
          Dst:             chunk_create
        - Src:             'encoding/payloads/delete_payload.c:268,17'
          Dst:             chunk_length
        - Src:             'encoding/payloads/delete_payload.c:268,17'
          Dst:             chunk_create
        - Src:             'encoding/payloads/delete_payload.c:268,17'
          Dst:             chunk_create_cat
    - functionName:    get_protocol_id
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          118
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/delete_payload.c:171,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_payload_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    delete_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/delete_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          131
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_header_length
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/delete_payload.c:383,25'
          Dst:             get_header_length
    - functionName:    is_expanded
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate_types
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          92
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - extract_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:280,17'
          Dst:             extract_type
    - functionName:    extract_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          99
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - untoh32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:240,14'
          Dst:             untoh32
        - Src:             'encoding/payloads/eap_payload.c:241,12'
          Dst:             untoh32
    - functionName:    untoh32
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:177,9'
          Dst:             ntohl
    - functionName:    get_types
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - enumerator_create_empty
        - extract_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:292,11'
          Dst:             extract_type
        - Src:             'encoding/payloads/eap_payload.c:306,9'
          Dst:             enumerator_create_empty
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - extract_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:254,6'
          Dst:             extract_type
    - functionName:    get_identifier
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_code
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:197,15'
          Dst:             chunk_create_clone
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:318,2'
          Dst:             chunk_free
    - functionName:    untoh16
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:162,9'
          Dst:             ntohs
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          117
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - untoh16
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/eap_payload.c:122,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:114,11'
          Dst:             untoh16
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_payload_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    write_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 396
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eap_payload_create_nak
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 467
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - char
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          242
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - bio_writer_create
        - eap_payload_create_data
        - htoun16
        - write_type
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:423,11'
          Dst:             bio_writer_create
        - Src:             'encoding/payloads/eap_payload.c:429,2'
          Dst:             write_type
        - Src:             'encoding/payloads/eap_payload.c:441,4'
          Dst:             write_type
        - Src:             'encoding/payloads/eap_payload.c:453,3'
          Dst:             write_type
        - Src:             'encoding/payloads/eap_payload.c:458,3'
          Dst:             write_type
        - Src:             'encoding/payloads/eap_payload.c:463,2'
          Dst:             htoun16
        - Src:             'encoding/payloads/eap_payload.c:465,12'
          Dst:             eap_payload_create_data
    - functionName:    htoun16
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/byteorder.h:118,9'
          Dst:             htons
    - functionName:    eap_payload_create_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eap_payload_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:361,24'
          Dst:             eap_payload_create
    - functionName:    eap_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          90
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:329,2'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eap_payload_create_code
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eap_payload_create_data
        - htoun16
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:387,2'
          Dst:             htoun16
        - Src:             'encoding/payloads/eap_payload.c:388,9'
          Dst:             eap_payload_create_data
    - functionName:    eap_payload_create_data_own
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/eap_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eap_payload_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/eap_payload.c:372,24'
          Dst:             eap_payload_create
    - functionName:    get_encoded
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          106
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - htons
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/id_payload.c:337,18'
          Dst:             htons
        - Src:             'encoding/payloads/id_payload.c:338,9'
          Dst:             chunk_create
        - Src:             'encoding/payloads/id_payload.c:338,9'
          Dst:             chunk_create
        - Src:             'encoding/payloads/id_payload.c:338,9'
          Dst:             chunk_create
        - Src:             'encoding/payloads/id_payload.c:338,9'
          Dst:             chunk_length
        - Src:             'encoding/payloads/id_payload.c:338,9'
          Dst:             chunk_create
        - Src:             'encoding/payloads/id_payload.c:338,9'
          Dst:             chunk_create
        - Src:             'encoding/payloads/id_payload.c:338,9'
          Dst:             chunk_create
        - Src:             'encoding/payloads/id_payload.c:338,9'
          Dst:             chunk_create_cat
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ts_from_ip
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - traffic_selector_create_from_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/id_payload.c:283,9'
          Dst:             traffic_selector_create_from_bytes
    - functionName:    get_ts_from_range
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          80
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - chunk_skip
        - traffic_selector_create_from_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/id_payload.c:251,3'
          Dst:             chunk_create
        - Src:             'encoding/payloads/id_payload.c:252,3'
          Dst:             chunk_skip
        - Src:             'encoding/payloads/id_payload.c:250,9'
          Dst:             traffic_selector_create_from_bytes
    - functionName:    get_ts_from_subnet
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          158
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create
        - chunk_create_clone
        - chunk_free
        - chunk_skip
        - traffic_selector_create_from_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/id_payload.c:265,8'
          Dst:             chunk_create
        - Src:             'encoding/payloads/id_payload.c:266,12'
          Dst:             chunk_skip
        - Src:             'encoding/payloads/id_payload.c:266,12'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/id_payload.c:271,7'
          Dst:             traffic_selector_create_from_bytes
        - Src:             'encoding/payloads/id_payload.c:273,2'
          Dst:             chunk_free
    - functionName:    get_ts
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          136
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - get_ts_from_ip
        - get_ts_from_range
        - get_ts_from_subnet
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/id_payload.c:290,2'
          Branch Sides:    []
      Callsites:
        - Src:             'encoding/payloads/id_payload.c:295,12'
          Dst:             get_ts_from_subnet
        - Src:             'encoding/payloads/id_payload.c:301,12'
          Dst:             get_ts_from_subnet
        - Src:             'encoding/payloads/id_payload.c:307,12'
          Dst:             get_ts_from_range
        - Src:             'encoding/payloads/id_payload.c:313,12'
          Dst:             get_ts_from_range
        - Src:             'encoding/payloads/id_payload.c:319,12'
          Dst:             get_ts_from_ip
        - Src:             'encoding/payloads/id_payload.c:325,12'
          Dst:             get_ts_from_ip
    - functionName:    get_identification
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - identification_create_from_encoding
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/id_payload.c:241,9'
          Dst:             identification_create_from_encoding
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          119
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'encoding/payloads/id_payload.c:175,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_payload_create_from_ts
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 467
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          420
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_create_clone
        - chunk_length
        - id_payload_create
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/id_payload.c:406,32'
          Dst:             id_payload_create
        - Src:             'encoding/payloads/id_payload.c:418,19'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/id_payload.c:434,3'
          Dst:             memset_noop
        - Src:             'encoding/payloads/id_payload.c:445,19'
          Dst:             chunk_create
        - Src:             'encoding/payloads/id_payload.c:445,19'
          Dst:             chunk_length
        - Src:             'encoding/payloads/id_payload.c:445,19'
          Dst:             chunk_create
        - Src:             'encoding/payloads/id_payload.c:445,19'
          Dst:             chunk_create_cat
        - Src:             'encoding/payloads/id_payload.c:459,19'
          Dst:             chunk_length
        - Src:             'encoding/payloads/id_payload.c:459,19'
          Dst:             chunk_create_cat
    - functionName:    id_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          91
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/id_payload.c:357,2'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_payload_create_from_identification
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/id_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          89
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - id_payload_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/id_payload.c:389,32'
          Dst:             id_payload_create
        - Src:             'encoding/payloads/id_payload.c:390,18'
          Dst:             chunk_create_clone
    - functionName:    get_key_exchange_method
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_key_exchange_data
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ke_payload_create_from_key_exchange
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ke_payload_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/ke_payload.c:257,32'
          Dst:             ke_payload_create
    - functionName:    ke_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          87
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/ke_payload.c:240,25'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/ke_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_nonce
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/nonce_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/nonce_payload.c:179,9'
          Dst:             chunk_create_clone
    - functionName:    set_nonce
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/nonce_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - get_header_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/nonce_payload.c:172,16'
          Dst:             chunk_create_clone
        - Src:             'encoding/payloads/nonce_payload.c:173,25'
          Dst:             get_header_length
    - functionName:    get_header_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/nonce_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/nonce_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/nonce_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          91
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/nonce_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/nonce_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/nonce_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/nonce_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding_rules
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/nonce_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nonce_payload_create
      functionSourceFile: '/src/strongswan/src/libcharon/encoding/payloads/nonce_payload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          82
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_header_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'encoding/payloads/nonce_payload.c:196,2'
          Dst:             get_header_length
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/redirect_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/redirect_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/redirect_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          119
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    redirect_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/redirect_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/rekey_ike_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/rekey_ike_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_retry_delay
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/rekey_ike_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          104
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - random
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/jobs/rekey_ike_sa_job.c:62,29'
          Dst:             random
        - Src:             'processing/jobs/rekey_ike_sa_job.c:74,31'
          Dst:             random
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/rekey_ike_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          144
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - get_retry_delay
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/jobs/rekey_ike_sa_job.c:103,12'
          Dst:             get_retry_delay
    - functionName:    rekey_ike_sa_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/rekey_ike_sa_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/retransmit_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/retransmit_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/retransmit_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    retransmit_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/retransmit_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          58
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/retry_initiate_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/retry_initiate_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/retry_initiate_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    retry_initiate_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/retry_initiate_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/send_dpd_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/send_dpd_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/send_dpd_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_dpd_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/send_dpd_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/send_keepalive_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/send_keepalive_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/send_keepalive_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_keepalive_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/send_keepalive_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/inactivity_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/inactivity_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/inactivity_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          324
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - time_monotonic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/jobs/inactivity_job.c:83,12'
          Dst:             time_monotonic
    - functionName:    inactivity_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/inactivity_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/initiate_tasks_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/initiate_tasks_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/initiate_tasks_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    initiate_tasks_job_create
      functionSourceFile: '/src/strongswan/src/libcharon/processing/jobs/initiate_tasks_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    authenticator_create_verifier
      functionSourceFile: '/src/strongswan/src/libcharon/sa/authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          121
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - eap_authenticator_create_verifier
        - psk_authenticator_create_verifier
        - pubkey_authenticator_create_verifier
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/authenticator.c:99,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/authenticator.c:95,28'
          Dst:             eap_authenticator_create_verifier
        - Src:             'sa/authenticator.c:106,29'
          Dst:             pubkey_authenticator_create_verifier
        - Src:             'sa/authenticator.c:109,29'
          Dst:             psk_authenticator_create_verifier
    - functionName:    authenticator_create_builder
      functionSourceFile: '/src/strongswan/src/libcharon/sa/authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          97
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - eap_authenticator_create_builder
        - psk_authenticator_create_builder
        - pubkey_authenticator_create_builder
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sa/authenticator.c:62,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/authenticator.c:67,29'
          Dst:             pubkey_authenticator_create_builder
        - Src:             'sa/authenticator.c:70,29'
          Dst:             psk_authenticator_create_builder
        - Src:             'sa/authenticator.c:73,29'
          Dst:             eap_authenticator_create_builder
    - functionName:    build_server
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 639
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          107
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - build_auth
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:654,3'
          Dst:             build_auth
    - functionName:    build_auth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 554
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          171
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - auth_payload_create
        - chunk_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:572,17'
          Dst:             auth_payload_create
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:576,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:588,3'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    apply_eap_identity
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          70
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    server_process_eap
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         60
      ICount:          478
      EdgeCount:       74
      CyclomaticComplexity: 16
      functionsReached:
        - apply_eap_identity
        - chunk_create_clone
        - eap_payload_create_code
        - identification_create_from_data
        - server_initiate_eap
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/authenticators/eap_authenticator.c:295,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/authenticators/eap_authenticator.c:330,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:265,10'
          Dst:             eap_payload_create_code
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:282,12'
          Dst:             eap_payload_create_code
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:291,11'
          Dst:             eap_payload_create_code
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:307,11'
          Dst:             identification_create_from_data
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:320,10'
          Dst:             apply_eap_identity
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:328,12'
          Dst:             server_initiate_eap
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:333,18'
          Dst:             chunk_create_clone
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:356,11'
          Dst:             eap_payload_create_code
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:374,11'
          Dst:             eap_payload_create_code
    - functionName:    server_initiate_eap
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          229
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - eap_payload_create_code
        - load_method
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:174,19'
          Dst:             load_method
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:188,11'
          Dst:             eap_payload_create_code
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:195,17'
          Dst:             load_method
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:226,9'
          Dst:             eap_payload_create_code
    - functionName:    load_method
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          161
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_server
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          144
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - server_initiate_eap
        - server_process_eap
        - verify_auth
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:600,8'
          Dst:             verify_auth
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:616,23'
          Dst:             server_initiate_eap
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:626,23'
          Dst:             server_process_eap
    - functionName:    verify_auth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          274
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - chunk_equals_const
        - chunk_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:525,25'
          Dst:             chunk_equals_const
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:529,3'
          Dst:             chunk_free
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:532,2'
          Dst:             chunk_free
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 808
      functionLinenumberEnd: 814
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          90
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:812,2'
          Dst:             chunk_free
    - functionName:    is_mutual
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 777
      functionLinenumberEnd: 791
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_int_auth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 802
      functionLinenumberEnd: 804
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    use_ppk
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 795
      functionLinenumberEnd: 798
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_client
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 760
      functionLinenumberEnd: 773
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          76
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - build_auth
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:768,3'
          Dst:             build_auth
    - functionName:    client_process_eap
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         47
      ICount:          416
      EdgeCount:       63
      CyclomaticComplexity: 18
      functionsReached:
        - eap_payload_create_nak
        - load_method
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:405,18'
          Dst:             load_method
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:421,10'
          Dst:             eap_payload_create_nak
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:451,11'
          Dst:             eap_payload_create_nak
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:454,18'
          Dst:             load_method
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:458,11'
          Dst:             eap_payload_create_nak
    - functionName:    process_client
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 756
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          282
      EdgeCount:       47
      CyclomaticComplexity: 10
      functionsReached:
        - chunk_create_clone
        - client_process_eap
        - verify_auth
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/authenticators/eap_authenticator.c:689,3'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/authenticators/eap_authenticator.c:712,5'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:668,8'
          Dst:             verify_auth
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:693,25'
          Dst:             client_process_eap
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:715,19'
          Dst:             chunk_create_clone
    - functionName:    eap_authenticator_create_verifier
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 877
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          101
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:875,2'
          Dst:             memcpy_noop
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eap_authenticator_create_builder
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/eap_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 823
      functionLinenumberEnd: 845
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          101
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/eap_authenticator.c:843,2'
          Dst:             memcpy_noop
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    process
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/psk_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          321
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - chunk_equals_const
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/psk_authenticator.c:173,24'
          Dst:             chunk_equals_const
        - Src:             'sa/ikev2/authenticators/psk_authenticator.c:179,3'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/psk_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_int_auth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/psk_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    use_ppk
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/psk_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/psk_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          250
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - auth_payload_create
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/psk_authenticator.c:102,17'
          Dst:             auth_payload_create
        - Src:             'sa/ikev2/authenticators/psk_authenticator.c:105,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/authenticators/psk_authenticator.c:120,3'
          Dst:             chunk_free
    - functionName:    psk_authenticator_create_verifier
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/psk_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          79
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/psk_authenticator.c:272,2'
          Dst:             memcpy_noop
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    psk_authenticator_create_builder
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/psk_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          79
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/psk_authenticator.c:243,2'
          Dst:             memcpy_noop
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_compliant_cert
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 552
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_signature_auth_data
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          93
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_skip
        - key_type_from_signature_scheme
        - signature_params_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:90,15'
          Dst:             chunk_skip
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:91,7'
          Dst:             signature_params_parse
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:95,14'
          Dst:             key_type_from_signature_scheme
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:96,15'
          Dst:             chunk_skip
    - functionName:    process
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 573
      functionLinenumberEnd: 697
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          413
      EdgeCount:       60
      CyclomaticComplexity: 14
      functionsReached:
        - chunk_free
        - get_auth_octets_scheme
        - is_compliant_cert
        - parse_signature_auth_data
        - signature_params_clone
        - signature_params_destroy
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sa/ikev2/authenticators/pubkey_authenticator.c:608,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:624,8'
          Dst:             parse_signature_auth_data
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:633,4'
          Dst:             signature_params_destroy
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:637,7'
          Dst:             get_auth_octets_scheme
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:650,4'
          Dst:             is_compliant_cert
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:675,8'
          Dst:             signature_params_clone
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:689,2'
          Dst:             chunk_free
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:690,2'
          Dst:             signature_params_destroy
    - functionName:    get_auth_octets_scheme
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          104
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_create
        - array_destroy_function
        - array_insert
        - array_remove
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:417,12'
          Dst:             array_create
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:418,2'
          Dst:             array_insert
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:424,3'
          Dst:             array_remove
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:432,2'
          Dst:             array_destroy_function
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_destroy_scheme
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - signature_params_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:150,2'
          Dst:             signature_params_destroy
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 714
      functionLinenumberEnd: 716
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_int_auth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 710
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    use_ppk
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_scheme_if_supported
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_count
        - array_get
        - array_insert
        - signature_params_clone
        - signature_params_comply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:132,38'
          Dst:             signature_params_clone
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:132,3'
          Dst:             array_insert
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:136,18'
          Dst:             array_count
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:138,3'
          Dst:             array_get
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:139,7'
          Dst:             signature_params_comply
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:141,39'
          Dst:             signature_params_clone
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:141,4'
          Dst:             array_insert
    - functionName:    add_auth_to_message
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - auth_payload_create
        - chunk_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:300,18'
          Dst:             auth_payload_create
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:305,2'
          Dst:             chunk_free
    - functionName:    build_signature_auth_data
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          84
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_free
        - chunk_length
        - signature_params_build
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:109,7'
          Dst:             signature_params_build
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:111,3'
          Dst:             chunk_free
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:115,15'
          Dst:             chunk_create
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:115,15'
          Dst:             chunk_length
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:115,15'
          Dst:             chunk_create
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:115,15'
          Dst:             chunk_create_cat
    - functionName:    select_signature_schemes
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          413
      EdgeCount:       80
      CyclomaticComplexity: 22
      functionsReached:
        - add_scheme_if_supported
        - array_count
        - array_create
        - array_destroy
        - array_destroy_function
        - array_get
        - array_insert
        - array_insert_create
        - hasher_from_signature_scheme
        - key_type_from_signature_scheme
        - signature_params_clone
        - signature_schemes_for_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:168,13'
          Dst:             array_create
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:177,9'
          Dst:             hasher_from_signature_scheme
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:181,10'
          Dst:             signature_params_clone
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:180,5'
          Dst:             array_insert_create
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:199,19'
          Dst:             key_type_from_signature_scheme
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:201,9'
          Dst:             hasher_from_signature_scheme
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:204,4'
          Dst:             add_scheme_if_supported
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:212,3'
          Dst:             array_destroy_function
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:220,4'
          Dst:             array_destroy
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:225,16'
          Dst:             signature_schemes_for_key
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:236,9'
          Dst:             hasher_from_signature_scheme
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:240,9'
          Dst:             signature_params_clone
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:239,5'
          Dst:             array_insert
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:259,21'
          Dst:             array_count
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:261,6'
          Dst:             array_get
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:269,11'
          Dst:             hasher_from_signature_scheme
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:275,6'
          Dst:             array_insert
    - functionName:    sign_classic
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          215
      EdgeCount:       34
      CyclomaticComplexity: 6
      functionsReached:
        - add_auth_to_message
        - chunk_free
        - get_auth_octets_scheme
        - signature_params_destroy
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sa/ikev2/authenticators/pubkey_authenticator.c:449,2'
          Branch Sides:    []
        - Branch String:   'sa/ikev2/authenticators/pubkey_authenticator.c:457,4'
          Branch Sides:    []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:486,6'
          Dst:             get_auth_octets_scheme
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:489,3'
          Dst:             add_auth_to_message
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:494,4'
          Dst:             chunk_free
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:495,8'
          Dst:             get_auth_octets_scheme
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:500,5'
          Dst:             add_auth_to_message
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:510,3'
          Dst:             signature_params_destroy
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:515,2'
          Dst:             chunk_free
    - functionName:    sign_signature_auth
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 403
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          269
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - add_auth_to_message
        - array_count
        - array_create_enumerator
        - array_destroy
        - array_destroy_function
        - build_signature_auth_data
        - chunk_free
        - select_signature_schemes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:323,12'
          Dst:             select_signature_schemes
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:324,7'
          Dst:             array_count
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:328,3'
          Dst:             array_destroy
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:336,16'
          Dst:             array_create_enumerator
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:341,6'
          Dst:             build_signature_auth_data
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:348,4'
          Dst:             add_auth_to_message
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:353,5'
          Dst:             chunk_free
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:361,6'
          Dst:             build_signature_auth_data
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:363,6'
          Dst:             add_auth_to_message
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:400,2'
          Dst:             array_destroy_function
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:401,2'
          Dst:             chunk_free
    - functionName:    build
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 521
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          111
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - sign_classic
        - sign_signature_auth
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:538,12'
          Dst:             sign_signature_auth
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:542,12'
          Dst:             sign_classic
    - functionName:    pubkey_authenticator_create_verifier
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 773
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          79
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:771,2'
          Dst:             memcpy_noop
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libcharon/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pubkey_authenticator_create_builder
      functionSourceFile: '/src/strongswan/src/libcharon/sa/ikev2/authenticators/pubkey_authenticator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          79
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sa/ikev2/authenticators/pubkey_authenticator.c:742,2'
          Dst:             memcpy_noop
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          312
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - chunk_create
        - create_enumerator
        - memcpy_noop
        - memeq_const
        - memset_noop
        - ntohs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_message.c:542,41'
          Dst:             ntohs
        - Src:             'radius_message.c:542,8'
          Dst:             chunk_create
        - Src:             'radius_message.c:547,3'
          Dst:             memcpy_noop
        - Src:             'radius_message.c:550,4'
          Dst:             memcpy_noop
        - Src:             'radius_message.c:554,4'
          Dst:             memset_noop
        - Src:             'radius_message.c:560,5'
          Dst:             memeq_const
        - Src:             'radius_message.c:568,15'
          Dst:             create_enumerator
        - Src:             'radius_message.c:579,4'
          Dst:             memcpy_noop
        - Src:             'radius_message.c:580,4'
          Dst:             memset_noop
        - Src:             'radius_message.c:582,12'
          Dst:             chunk_create
        - Src:             'radius_message.c:585,5'
          Dst:             memcpy_noop
        - Src:             'radius_message.c:606,3'
          Dst:             memcpy_noop
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - enumerator_create_empty
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_message.c:282,6'
          Dst:             ntohs
        - Src:             'radius_message.c:284,10'
          Dst:             enumerator_create_empty
        - Src:             'radius_message.c:286,2'
          Dst:             ntohs
    - functionName:    attribute_enumerate
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          180
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    crypt
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          245
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - chunk_create
        - chunk_skip
        - memcpy_noop
        - memxor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_message.c:432,3'
          Dst:             memcpy_noop
        - Src:             'radius_message.c:438,9'
          Dst:             chunk_create
        - Src:             'radius_message.c:446,3'
          Dst:             memxor
        - Src:             'radius_message.c:448,9'
          Dst:             chunk_skip
        - Src:             'radius_message.c:455,11'
          Dst:             chunk_create
        - Src:             'radius_message.c:460,8'
          Dst:             chunk_skip
    - functionName:    sign
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 530
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          275
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - add
        - chunk_clear
        - chunk_create
        - crypt
        - memcpy_noop
        - memset_noop
        - ntohs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_message.c:482,4'
          Dst:             memcpy_noop
        - Src:             'radius_message.c:486,4'
          Dst:             memset_noop
        - Src:             'radius_message.c:493,8'
          Dst:             crypt
        - Src:             'radius_message.c:498,3'
          Dst:             add
        - Src:             'radius_message.c:499,3'
          Dst:             chunk_clear
        - Src:             'radius_message.c:507,3'
          Dst:             memset_noop
        - Src:             'radius_message.c:508,40'
          Dst:             chunk_create
        - Src:             'radius_message.c:508,3'
          Dst:             add
        - Src:             'radius_message.c:510,38'
          Dst:             ntohs
        - Src:             'radius_message.c:510,5'
          Dst:             chunk_create
        - Src:             'radius_message.c:511,28'
          Dst:             ntohs
        - Src:             'radius_message.c:522,42'
          Dst:             ntohs
        - Src:             'radius_message.c:522,9'
          Dst:             chunk_create
    - functionName:    add
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 402
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          197
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - htons
        - memcpy_noop
        - memset_noop
        - ntohs
        - realloc
        - round_up
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_message.c:388,20'
          Dst:             round_up
        - Src:             'radius_message.c:388,20'
          Dst:             chunk_create
        - Src:             'radius_message.c:389,3'
          Dst:             memset_noop
        - Src:             'radius_message.c:390,3'
          Dst:             memcpy_noop
        - Src:             'radius_message.c:396,7'
          Dst:             ntohs
        - Src:             'radius_message.c:395,14'
          Dst:             realloc
        - Src:             'radius_message.c:397,35'
          Dst:             ntohs
        - Src:             'radius_message.c:400,2'
          Dst:             memcpy_noop
        - Src:             'radius_message.c:401,28'
          Dst:             ntohs
        - Src:             'radius_message.c:401,22'
          Dst:             htons
    - functionName:    round_up
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/utils/align.h'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pad_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/align.h:58,16'
          Dst:             pad_len
    - functionName:    pad_len
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/utils/align.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 644
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - ntohs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_message.c:645,42'
          Dst:             ntohs
        - Src:             'radius_message.c:645,9'
          Dst:             chunk_create
    - functionName:    get_authenticator
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 638
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_identifier
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 631
      functionLinenumberEnd: 633
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_identifier
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 625
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_code
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 620
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vendor_destroy
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vendor_enumerate
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          301
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - bio_reader_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_message.c:341,20'
          Dst:             bio_reader_create
    - functionName:    create_vendor_enumerator
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_message.c:368,2'
          Dst:             create_enumerator
    - functionName:    radius_message_create_empty
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 654
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_clear
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_message.c:651,2'
          Dst:             chunk_clear
    - functionName:    radius_message_parse
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 703
      functionLinenumberEnd: 716
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - destroy
        - memcpy_noop
        - ntohs
        - radius_message_create_empty
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_message.c:704,35'
          Dst:             radius_message_create_empty
        - Src:             'radius_message.c:707,2'
          Dst:             memcpy_noop
        - Src:             'radius_message.c:709,3'
          Dst:             ntohs
        - Src:             'radius_message.c:712,3'
          Dst:             destroy
    - functionName:    radius_message_create
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 696
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - radius_message_create_empty
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_message.c:688,35'
          Dst:             radius_message_create_empty
        - Src:             'radius_message.c:690,2'
          Dst:             htons
    - functionName:    libradius_init
      functionSourceFile: '/src/strongswan/src/libradius/radius_message.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libradius/radius_client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_client.c:134,2'
          Dst:             chunk_clear
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_msk
      functionSourceFile: '/src/strongswan/src/libradius/radius_client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    save_state
      functionSourceFile: '/src/strongswan/src/libradius/radius_client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          103
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create_clone
        - chunk_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_client.c:72,18'
          Dst:             chunk_create_clone
        - Src:             'radius_client.c:79,2'
          Dst:             chunk_free
    - functionName:    request
      functionSourceFile: '/src/strongswan/src/libradius/radius_client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          174
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_clear
        - save_state
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_client.c:111,3'
          Dst:             save_state
        - Src:             'radius_client.c:114,4'
          Dst:             chunk_clear
    - functionName:    radius_client_create
      functionSourceFile: '/src/strongswan/src/libradius/radius_client.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libradius/radius_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libradius/radius_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_preference
      functionSourceFile: '/src/strongswan/src/libradius/radius_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          115
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_nas_identifier
      functionSourceFile: '/src/strongswan/src/libradius/radius_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_socket
      functionSourceFile: '/src/strongswan/src/libradius/radius_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          69
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_socket
      functionSourceFile: '/src/strongswan/src/libradius/radius_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libradius/radius_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    radius_config_create
      functionSourceFile: '/src/strongswan/src/libradius/radius_config.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      'N/A'
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - short
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          173
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - condvar_create
        - destroy
        - linked_list_create
        - mutex_create
        - radius_socket_create
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_config.c:212,2'
          Dst:             linked_list_create
        - Src:             'radius_config.c:212,2'
          Dst:             mutex_create
        - Src:             'radius_config.c:212,2'
          Dst:             condvar_create
        - Src:             'radius_config.c:212,2'
          Dst:             strlen
        - Src:             'radius_config.c:212,2'
          Dst:             chunk_create
        - Src:             'radius_config.c:236,33'
          Dst:             strlen
        - Src:             'radius_config.c:236,12'
          Dst:             chunk_create
        - Src:             'radius_config.c:235,12'
          Dst:             radius_socket_create
        - Src:             'radius_config.c:240,4'
          Dst:             destroy
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_mppe_key
      functionSourceFile: '/src/strongswan/src/libradius/radius_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          148
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - chunk_create_clone
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_socket.c:348,14'
          Dst:             chunk_create
        - Src:             'radius_socket.c:349,31'
          Dst:             chunk_create
        - Src:             'radius_socket.c:356,9'
          Dst:             chunk_create
        - Src:             'radius_socket.c:356,9'
          Dst:             chunk_create_clone
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_msk
      functionSourceFile: '/src/strongswan/src/libradius/radius_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          279
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - chunk_clear
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - decrypt_mppe_key
        - memset_noop
        - ntohl
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_socket.c:374,8'
          Dst:             ntohl
        - Src:             'radius_socket.c:377,12'
          Dst:             chunk_create
        - Src:             'radius_socket.c:380,13'
          Dst:             decrypt_mppe_key
        - Src:             'radius_socket.c:384,13'
          Dst:             decrypt_mppe_key
        - Src:             'radius_socket.c:396,10'
          Dst:             chunk_create
        - Src:             'radius_socket.c:397,4'
          Dst:             memset_noop
        - Src:             'radius_socket.c:399,10'
          Dst:             chunk_length
        - Src:             'radius_socket.c:399,10'
          Dst:             chunk_create_cat
        - Src:             'radius_socket.c:401,2'
          Dst:             chunk_clear
        - Src:             'radius_socket.c:402,2'
          Dst:             chunk_clear
    - functionName:    timeval_add_ms
      functionSourceFile: '/src/strongswan/src/libradius/../../src/libstrongswan/utils/utils/time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    receive_response
      functionSourceFile: '/src/strongswan/src/libradius/radius_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          187
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - poll
        - radius_message_parse
        - recv
        - time_monotonic
        - timeval_add_ms
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_socket.c:211,2'
          Dst:             time_monotonic
        - Src:             'radius_socket.c:212,2'
          Dst:             timeval_add_ms
        - Src:             'radius_socket.c:216,3'
          Dst:             time_monotonic
        - Src:             'radius_socket.c:223,9'
          Dst:             poll
        - Src:             'radius_socket.c:234,9'
          Dst:             recv
        - Src:             'radius_socket.c:241,30'
          Dst:             chunk_create
        - Src:             'radius_socket.c:241,9'
          Dst:             radius_message_parse
    - functionName:    check_connection
      functionSourceFile: '/src/strongswan/src/libradius/radius_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          214
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - bind
        - close
        - connect
        - host_create_from_dns
        - host_create_from_string_and_family
        - socket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_socket.c:143,12'
          Dst:             host_create_from_dns
        - Src:             'radius_socket.c:150,9'
          Dst:             socket
        - Src:             'radius_socket.c:160,10'
          Dst:             host_create_from_string_and_family
        - Src:             'radius_socket.c:168,8'
          Dst:             bind
        - Src:             'radius_socket.c:176,7'
          Dst:             connect
        - Src:             'radius_socket.c:191,2'
          Dst:             close
    - functionName:    connect
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    request
      functionSourceFile: '/src/strongswan/src/libradius/radius_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          254
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - check_connection
        - pow
        - receive_response
        - send
      functionUses:    0
      BranchProfiles:
        - Branch String:   'radius_socket.c:315,3'
          Branch Sides:    []
      Callsites:
        - Src:             'radius_socket.c:292,7'
          Dst:             check_connection
        - Src:             'radius_socket.c:303,7'
          Dst:             pow
        - Src:             'radius_socket.c:310,7'
          Dst:             send
        - Src:             'radius_socket.c:315,11'
          Dst:             receive_response
    - functionName:    send
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libradius/radius_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          123
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_socket.c:414,3'
          Dst:             close
        - Src:             'radius_socket.c:418,3'
          Dst:             close
    - functionName:    radius_socket_create
      functionSourceFile: '/src/strongswan/src/libradius/radius_socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 465
      functionDepth:   0
      returnType:      'N/A'
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - short
        - 'N/A'
        - size_t
        - int
        - double
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          194
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - destroy
        - random
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'radius_socket.c:457,3'
          Dst:             destroy
        - Src:             'radius_socket.c:462,21'
          Dst:             random
    - functionName:    unregister_plugins
      functionSourceFile: '/src/strongswan/src/libstrongswan/./plugin_constructors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - plugin_constructor_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './plugin_constructors.c:72,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:73,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:74,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:75,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:76,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:77,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:78,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:79,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:80,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:81,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:82,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:83,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:84,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:85,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:86,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:87,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:88,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:89,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:90,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:91,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:92,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:93,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:94,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:95,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:96,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:97,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:98,2'
          Dst:             plugin_constructor_register
    - functionName:    register_plugins
      functionSourceFile: '/src/strongswan/src/libstrongswan/./plugin_constructors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - acert_plugin_create
        - cmac_plugin_create
        - constraints_plugin_create
        - dnskey_plugin_create
        - drbg_plugin_create
        - gmp_plugin_create
        - hmac_plugin_create
        - kdf_plugin_create
        - mgf1_plugin_create
        - nonce_plugin_create
        - openssl_plugin_create
        - pem_plugin_create
        - pgp_plugin_create
        - pkcs12_plugin_create
        - pkcs1_plugin_create
        - pkcs7_plugin_create
        - pkcs8_plugin_create
        - plugin_constructor_register
        - pubkey_plugin_create
        - random_plugin_create
        - rc2_plugin_create
        - revocation_plugin_create
        - sha1_plugin_create
        - sha2_plugin_create
        - sha3_plugin_create
        - sshkey_plugin_create
        - x509_plugin_create
        - xcbc_plugin_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './plugin_constructors.c:40,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:40,2'
          Dst:             rc2_plugin_create
        - Src:             './plugin_constructors.c:41,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:41,2'
          Dst:             sha2_plugin_create
        - Src:             './plugin_constructors.c:42,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:42,2'
          Dst:             sha3_plugin_create
        - Src:             './plugin_constructors.c:43,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:43,2'
          Dst:             sha1_plugin_create
        - Src:             './plugin_constructors.c:44,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:44,2'
          Dst:             mgf1_plugin_create
        - Src:             './plugin_constructors.c:45,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:45,2'
          Dst:             random_plugin_create
        - Src:             './plugin_constructors.c:46,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:46,2'
          Dst:             nonce_plugin_create
        - Src:             './plugin_constructors.c:47,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:47,2'
          Dst:             x509_plugin_create
        - Src:             './plugin_constructors.c:48,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:48,2'
          Dst:             revocation_plugin_create
        - Src:             './plugin_constructors.c:49,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:49,2'
          Dst:             constraints_plugin_create
        - Src:             './plugin_constructors.c:50,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:50,2'
          Dst:             acert_plugin_create
        - Src:             './plugin_constructors.c:51,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:51,2'
          Dst:             pubkey_plugin_create
        - Src:             './plugin_constructors.c:52,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:52,2'
          Dst:             pkcs1_plugin_create
        - Src:             './plugin_constructors.c:53,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:53,2'
          Dst:             pkcs7_plugin_create
        - Src:             './plugin_constructors.c:54,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:54,2'
          Dst:             pkcs12_plugin_create
        - Src:             './plugin_constructors.c:55,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:55,2'
          Dst:             pgp_plugin_create
        - Src:             './plugin_constructors.c:56,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:56,2'
          Dst:             dnskey_plugin_create
        - Src:             './plugin_constructors.c:57,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:57,2'
          Dst:             sshkey_plugin_create
        - Src:             './plugin_constructors.c:58,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:58,2'
          Dst:             pem_plugin_create
        - Src:             './plugin_constructors.c:59,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:59,2'
          Dst:             openssl_plugin_create
        - Src:             './plugin_constructors.c:60,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:60,2'
          Dst:             pkcs8_plugin_create
        - Src:             './plugin_constructors.c:61,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:61,2'
          Dst:             gmp_plugin_create
        - Src:             './plugin_constructors.c:62,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:62,2'
          Dst:             xcbc_plugin_create
        - Src:             './plugin_constructors.c:63,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:63,2'
          Dst:             cmac_plugin_create
        - Src:             './plugin_constructors.c:64,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:64,2'
          Dst:             hmac_plugin_create
        - Src:             './plugin_constructors.c:65,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:65,2'
          Dst:             kdf_plugin_create
        - Src:             './plugin_constructors.c:66,2'
          Dst:             plugin_constructor_register
        - Src:             './plugin_constructors.c:66,2'
          Dst:             drbg_plugin_create
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set
      functionSourceFile: '/src/strongswan/src/libstrongswan/library.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          77
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get
      functionSourceFile: '/src/strongswan/src/libstrongswan/library.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/library.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'library.c:279,9'
          Dst:             streq
    - functionName:    hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/library.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'library.c:271,38'
          Dst:             strlen
        - Src:             'library.c:271,20'
          Dst:             chunk_create
        - Src:             'library.c:271,9'
          Dst:             chunk_hash
    - functionName:    strdupnull
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:79,13'
          Dst:             strdup
    - functionName:    library_init
      functionSourceFile: '/src/strongswan/src/libstrongswan/library.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          445
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - arrays_init
        - backtrace_init
        - capabilities_create
        - chunk_hash_seed
        - chunk_printf_hook
        - cred_encoding_create
        - credential_factory_create
        - credential_manager_create
        - crypto_factory_create
        - database_factory_create
        - enum_printf_hook
        - equals
        - fetcher_manager_create
        - getenv
        - hash
        - hashtable_create
        - host_printf_hook
        - host_resolver_create
        - identification_printf_hook
        - key_exchange_init
        - mem_printf_hook
        - metadata_factory_create
        - ocsp_responders_create
        - plugin_loader_create
        - printf_hook_create
        - processor_create
        - proposal_keywords_create
        - proposal_printf_hook
        - resolver_manager_create
        - scheduler_create
        - settings_create
        - strdup
        - strdupnull
        - stream_manager_create
        - threads_init
        - time_delta_printf_hook
        - time_printf_hook
        - traffic_selector_printf_hook
        - utils_init
        - watcher_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'library.c:348,2'
          Dst:             chunk_hash_seed
        - Src:             'library.c:350,2'
          Dst:             strdup
        - Src:             'library.c:350,2'
          Dst:             getenv
        - Src:             'library.c:350,2'
          Dst:             strdupnull
        - Src:             'library.c:361,2'
          Dst:             threads_init
        - Src:             'library.c:362,2'
          Dst:             utils_init
        - Src:             'library.c:363,2'
          Dst:             arrays_init
        - Src:             'library.c:364,2'
          Dst:             backtrace_init
        - Src:             'library.c:386,8'
          Dst:             printf_hook_create
        - Src:             'library.c:389,2'
          Dst:             mem_printf_hook
        - Src:             'library.c:392,2'
          Dst:             chunk_printf_hook
        - Src:             'library.c:394,2'
          Dst:             host_printf_hook
        - Src:             'library.c:396,2'
          Dst:             enum_printf_hook
        - Src:             'library.c:399,2'
          Dst:             time_printf_hook
        - Src:             'library.c:402,2'
          Dst:             time_delta_printf_hook
        - Src:             'library.c:405,2'
          Dst:             identification_printf_hook
        - Src:             'library.c:407,2'
          Dst:             traffic_selector_printf_hook
        - Src:             'library.c:409,2'
          Dst:             proposal_printf_hook
        - Src:             'library.c:412,18'
          Dst:             hashtable_create
        - Src:             'library.c:412,18'
          Dst:             hash
        - Src:             'library.c:412,18'
          Dst:             equals
        - Src:             'library.c:415,26'
          Dst:             settings_create
        - Src:             'library.c:431,23'
          Dst:             host_resolver_create
        - Src:             'library.c:432,26'
          Dst:             proposal_keywords_create
        - Src:             'library.c:433,22'
          Dst:             capabilities_create
        - Src:             'library.c:434,24'
          Dst:             crypto_factory_create
        - Src:             'library.c:435,23'
          Dst:             credential_factory_create
        - Src:             'library.c:436,25'
          Dst:             credential_manager_create
        - Src:             'library.c:437,26'
          Dst:             cred_encoding_create
        - Src:             'library.c:438,22'
          Dst:             ocsp_responders_create
        - Src:             'library.c:439,26'
          Dst:             metadata_factory_create
        - Src:             'library.c:440,25'
          Dst:             fetcher_manager_create
        - Src:             'library.c:441,26'
          Dst:             resolver_manager_create
        - Src:             'library.c:442,20'
          Dst:             database_factory_create
        - Src:             'library.c:443,27'
          Dst:             processor_create
        - Src:             'library.c:444,27'
          Dst:             scheduler_create
        - Src:             'library.c:445,25'
          Dst:             watcher_create
        - Src:             'library.c:446,25'
          Dst:             stream_manager_create
        - Src:             'library.c:447,25'
          Dst:             plugin_loader_create
        - Src:             'library.c:472,2'
          Dst:             key_exchange_init
    - functionName:    library_deinit
      functionSourceFile: '/src/strongswan/src/libstrongswan/library.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         19
      ICount:          434
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - arrays_deinit
        - backtrace_deinit
        - key_exchange_deinit
        - threads_deinit
        - utils_deinit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'library.c:194,2'
          Dst:             key_exchange_deinit
        - Src:             'library.c:234,2'
          Dst:             backtrace_deinit
        - Src:             'library.c:235,2'
          Dst:             arrays_deinit
        - Src:             'library.c:236,2'
          Dst:             utils_deinit
        - Src:             'library.c:237,2'
          Dst:             threads_deinit
    - functionName:    library_init_register
      functionSourceFile: '/src/strongswan/src/libstrongswan/library.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'library.c:117,3'
          Dst:             fprintf
    - functionName:    library_add_namespace
      functionSourceFile: '/src/strongswan/src/libstrongswan/library.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'library.c:93,3'
          Dst:             fprintf
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    asn1_parse_time
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 949
      functionLinenumberEnd: 967
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_parser_create
        - asn1_to_time
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:955,10'
          Dst:             asn1_parser_create
        - Src:             'asn1/asn1.c:962,15'
          Dst:             asn1_to_time
    - functionName:    asn1_to_time
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         60
      ICount:          371
      EdgeCount:       83
      CyclomaticComplexity: 25
      functionsReached:
        - __isoc99_sscanf
        - snprintf
        - strchr
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:368,2'
          Dst:             snprintf
        - Src:             'asn1/asn1.c:370,13'
          Dst:             strchr
        - Src:             'asn1/asn1.c:374,18'
          Dst:             strchr
        - Src:             'asn1/asn1.c:376,7'
          Dst:             __isoc99_sscanf
        - Src:             'asn1/asn1.c:382,18'
          Dst:             strchr
        - Src:             'asn1/asn1.c:384,7'
          Dst:             __isoc99_sscanf
        - Src:             'asn1/asn1.c:400,7'
          Dst:             __isoc99_sscanf
        - Src:             'asn1/asn1.c:410,7'
          Dst:             __isoc99_sscanf
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             './utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    asn1_integer
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 874
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_build_object
        - memcpy_noop
      functionUses:    29
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:863,8'
          Dst:             asn1_build_object
        - Src:             'asn1/asn1.c:868,2'
          Dst:             memcpy_noop
    - functionName:    asn1_build_object
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 808
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          64
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_code_length
        - memcpy_noop
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:792,2'
          Dst:             asn1_code_length
        - Src:             'asn1/asn1.c:805,2'
          Dst:             memcpy_noop
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn1_code_length
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 780
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          120
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn1_bitstring
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 838
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_build_object
        - memcpy_noop
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:830,16'
          Dst:             asn1_build_object
        - Src:             'asn1/asn1.c:833,2'
          Dst:             memcpy_noop
    - functionName:    asn1_is_printablestring
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 747
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:741,7'
          Dst:             strchr
    - functionName:    is_asn1
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 691
      functionLinenumberEnd: 728
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          132
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - asn1_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:707,8'
          Dst:             asn1_length
    - functionName:    asn1_length
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          147
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn1_parse_algorithmIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          112
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - asn1_debug_simple_object
        - asn1_known_oid
        - asn1_unwrap
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:654,6'
          Dst:             asn1_unwrap
        - Src:             'asn1/asn1.c:661,7'
          Dst:             asn1_unwrap
        - Src:             'asn1/asn1.c:666,5'
          Dst:             asn1_debug_simple_object
        - Src:             'asn1/asn1.c:668,10'
          Dst:             asn1_known_oid
    - functionName:    asn1_unwrap
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          197
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_skip
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:322,10'
          Dst:             chunk_skip
        - Src:             'asn1/asn1.c:339,12'
          Dst:             chunk_skip
        - Src:             'asn1/asn1.c:347,10'
          Dst:             chunk_skip
    - functionName:    asn1_debug_simple_object
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          106
      EdgeCount:       25
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_known_oid
        - asn1_oid_to_string
      functionUses:    3
      BranchProfiles:
        - Branch String:   'asn1/asn1.c:525,2'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1/asn1.c:528,10'
          Dst:             asn1_known_oid
        - Src:             'asn1/asn1.c:531,21'
          Dst:             asn1_oid_to_string
    - functionName:    asn1_known_oid
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          100
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    26
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn1_oid_to_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          219
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - chunk_skip
        - snprintf
        - strdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:213,12'
          Dst:             snprintf
        - Src:             'asn1/asn1.c:214,8'
          Dst:             chunk_skip
        - Src:             'asn1/asn1.c:233,14'
          Dst:             snprintf
        - Src:             'asn1/asn1.c:242,9'
          Dst:             chunk_skip
        - Src:             'asn1/asn1.c:244,22'
          Dst:             strdup
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn1_integer_from_uint64
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          124
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - chunk_create_clone
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:637,10'
          Dst:             chunk_create
        - Src:             'asn1/asn1.c:637,10'
          Dst:             chunk_create_clone
        - Src:             'asn1/asn1.c:643,9'
          Dst:             chunk_create_clone
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn1_parse_integer_uint64
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 623
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          46
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn1_parse_simple_object
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_debug_simple_object
        - asn1_length
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:596,8'
          Dst:             asn1_length
        - Src:             'asn1/asn1.c:606,2'
          Dst:             asn1_debug_simple_object
    - functionName:    asn1_from_time
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          100
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_simple_object
        - gmtime_r
        - snprintf
        - strlen
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:495,2'
          Dst:             gmtime_r
        - Src:             'asn1/asn1.c:511,2'
          Dst:             snprintf
        - Src:             'asn1/asn1.c:514,23'
          Dst:             strlen
        - Src:             'asn1/asn1.c:515,9'
          Dst:             asn1_simple_object
    - functionName:    gmtime_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn1_simple_object
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 815
      functionLinenumberEnd: 821
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_build_object
        - memcpy_noop
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:818,16'
          Dst:             asn1_build_object
        - Src:             'asn1/asn1.c:819,2'
          Dst:             memcpy_noop
    - functionName:    bytes_required
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    asn1_oid_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          197
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - bytes_required
        - chunk_create
        - chunk_create_clone
        - enumerator_create_token
        - strtoul
      functionUses:    1
      BranchProfiles:
        - Branch String:   'asn1/asn1.c:177,3'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1/asn1.c:167,15'
          Dst:             enumerator_create_token
        - Src:             'asn1/asn1.c:170,9'
          Dst:             strtoul
        - Src:             'asn1/asn1.c:171,9'
          Dst:             bytes_required
        - Src:             'asn1/asn1.c:195,9'
          Dst:             chunk_create
        - Src:             'asn1/asn1.c:195,9'
          Dst:             chunk_create_clone
    - functionName:    asn1_algorithmIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          77
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - asn1_algorithmIdentifier_params
        - asn1_simple_object
      functionUses:    10
      BranchProfiles:
        - Branch String:   'asn1/asn1.c:52,2'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1/asn1.c:64,17'
          Dst:             asn1_simple_object
        - Src:             'asn1/asn1.c:67,9'
          Dst:             asn1_algorithmIdentifier_params
    - functionName:    asn1_algorithmIdentifier_params
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_build_known_oid
        - asn1_wrap
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:41,40'
          Dst:             asn1_build_known_oid
        - Src:             'asn1/asn1.c:41,9'
          Dst:             asn1_wrap
    - functionName:    asn1_build_known_oid
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          131
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
      functionUses:    47
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1.c:119,8'
          Dst:             chunk_create
    - functionName:    asn1_wrap
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 882
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          166
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_build_object
        - chunk_clear
        - memcpy_noop
        - strlen
      functionUses:    217
      BranchProfiles:
        - Branch String:   'asn1/asn1.c:911,3'
          Branch Sides:    []
      Callsites:
        - Src:             'asn1/asn1.c:887,14'
          Dst:             strlen
        - Src:             'asn1/asn1.c:900,8'
          Dst:             asn1_build_object
        - Src:             'asn1/asn1.c:908,3'
          Dst:             memcpy_noop
        - Src:             'asn1/asn1.c:914,5'
          Dst:             chunk_clear
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    success
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_flags
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_top_level
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_level
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iterate
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         105
      ICount:          779
      EdgeCount:       141
      CyclomaticComplexity: 38
      functionsReached:
        - asn1_debug_simple_object
        - asn1_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'asn1/asn1_parser.c:189,15'
          Dst:             asn1_length
        - Src:             'asn1/asn1_parser.c:281,3'
          Dst:             asn1_debug_simple_object
    - functionName:    asn1_parser_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/asn1/asn1_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          64
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    45
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read_data32
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - read_data
        - read_uint32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:302,7'
          Dst:             read_uint32
        - Src:             'bio/bio_reader.c:306,9'
          Dst:             read_data
    - functionName:    read_uint32
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_uint32_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:210,9'
          Dst:             read_uint32_internal
    - functionName:    read_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_data_internal
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:222,9'
          Dst:             read_data_internal
    - functionName:    read_data_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - chunk_skip_end
        - get_ptr_end
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:184,22'
          Dst:             get_ptr_end
        - Src:             'bio/bio_reader.c:184,9'
          Dst:             chunk_create
        - Src:             'bio/bio_reader.c:185,14'
          Dst:             chunk_skip_end
    - functionName:    get_ptr_end
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip_end
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          50
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read_uint32_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_skip_end
        - get_ptr_end
        - untoh32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:150,17'
          Dst:             get_ptr_end
        - Src:             'bio/bio_reader.c:150,9'
          Dst:             untoh32
        - Src:             'bio/bio_reader.c:151,14'
          Dst:             chunk_skip_end
    - functionName:    untoh32
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/byteorder.h:177,9'
          Dst:             ntohl
    - functionName:    read_data24
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - read_data
        - read_uint24
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:290,7'
          Dst:             read_uint24
        - Src:             'bio/bio_reader.c:294,9'
          Dst:             read_data
    - functionName:    read_uint24
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_uint24_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:204,9'
          Dst:             read_uint24_internal
    - functionName:    read_uint24_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_skip_end
        - get_ptr_end
        - memcpy_noop
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:132,2'
          Dst:             get_ptr_end
        - Src:             'bio/bio_reader.c:132,2'
          Dst:             memcpy_noop
        - Src:             'bio/bio_reader.c:133,9'
          Dst:             ntohl
        - Src:             'bio/bio_reader.c:134,14'
          Dst:             chunk_skip_end
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read_data16
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - read_data
        - read_uint16
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:278,7'
          Dst:             read_uint16
        - Src:             'bio/bio_reader.c:282,9'
          Dst:             read_data
    - functionName:    read_uint16
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_uint16_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:198,9'
          Dst:             read_uint16_internal
    - functionName:    read_uint16_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_skip_end
        - get_ptr_end
        - untoh16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:113,17'
          Dst:             get_ptr_end
        - Src:             'bio/bio_reader.c:113,9'
          Dst:             untoh16
        - Src:             'bio/bio_reader.c:114,14'
          Dst:             chunk_skip_end
    - functionName:    untoh16
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/byteorder.h:162,9'
          Dst:             ntohs
    - functionName:    read_data8
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - read_data
        - read_uint8
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:266,7'
          Dst:             read_uint8
        - Src:             'bio/bio_reader.c:270,9'
          Dst:             read_data
    - functionName:    read_uint8
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_uint8_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:192,9'
          Dst:             read_uint8_internal
    - functionName:    read_uint8_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_skip_end
        - get_ptr_end
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:96,10'
          Dst:             get_ptr_end
        - Src:             'bio/bio_reader.c:97,14'
          Dst:             chunk_skip_end
    - functionName:    read_data_end
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_data_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:258,9'
          Dst:             read_data_internal
    - functionName:    read_uint64_end
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_uint64_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:252,9'
          Dst:             read_uint64_internal
    - functionName:    read_uint64_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_skip_end
        - get_ptr_end
        - untoh64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:167,17'
          Dst:             get_ptr_end
        - Src:             'bio/bio_reader.c:167,9'
          Dst:             untoh64
        - Src:             'bio/bio_reader.c:168,14'
          Dst:             chunk_skip_end
    - functionName:    untoh64
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/byteorder.h:192,9'
          Dst:             __bswap_64
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read_uint32_end
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_uint32_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:246,9'
          Dst:             read_uint32_internal
    - functionName:    read_uint24_end
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_uint24_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:240,9'
          Dst:             read_uint24_internal
    - functionName:    read_uint16_end
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_uint16_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:234,9'
          Dst:             read_uint16_internal
    - functionName:    read_uint8_end
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_uint8_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:228,9'
          Dst:             read_uint8_internal
    - functionName:    read_uint64
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_uint64_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:216,9'
          Dst:             read_uint64_internal
    - functionName:    peek
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remaining
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bio_reader_create_own
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bio_reader_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_reader.c:358,32'
          Dst:             bio_reader_create
    - functionName:    bio_reader_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_reader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          90
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    extract_buf
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_buf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:207,16'
          Dst:             get_buf
    - functionName:    get_buf
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:201,9'
          Dst:             chunk_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - increase
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:192,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:193,12'
          Dst:             chunk_create
    - functionName:    increase
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - realloc
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:62,19'
          Dst:             realloc
    - functionName:    wrap32
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htoun32
        - increase
        - memmove_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:181,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:182,2'
          Dst:             memmove_noop
        - Src:             'bio/bio_writer.c:183,2'
          Dst:             htoun32
    - functionName:    memmove_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htoun32
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/byteorder.h:132,9'
          Dst:             htonl
    - functionName:    wrap24
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - increase
        - memcpy_noop
        - memmove_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:170,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:171,2'
          Dst:             memmove_noop
        - Src:             'bio/bio_writer.c:173,8'
          Dst:             htonl
        - Src:             'bio/bio_writer.c:174,2'
          Dst:             memcpy_noop
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    wrap16
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htoun16
        - increase
        - memmove_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:159,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:160,2'
          Dst:             memmove_noop
        - Src:             'bio/bio_writer.c:161,2'
          Dst:             htoun16
    - functionName:    htoun16
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/byteorder.h:118,9'
          Dst:             htons
    - functionName:    wrap8
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - increase
        - memmove_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:150,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:151,2'
          Dst:             memmove_noop
    - functionName:    write_data32
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - increase
        - write_data
        - write_uint32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:142,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:143,2'
          Dst:             write_uint32
        - Src:             'bio/bio_writer.c:144,2'
          Dst:             write_data
    - functionName:    write_uint32
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htoun32
        - increase
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:94,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:95,2'
          Dst:             htoun32
    - functionName:    write_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - increase
        - memcpy_noop
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:110,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:111,2'
          Dst:             memcpy_noop
    - functionName:    write_data24
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - increase
        - write_data
        - write_uint24
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:134,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:135,2'
          Dst:             write_uint24
        - Src:             'bio/bio_writer.c:136,2'
          Dst:             write_data
    - functionName:    write_uint24
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - increase
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:85,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:86,10'
          Dst:             htonl
        - Src:             'bio/bio_writer.c:87,2'
          Dst:             memcpy_noop
    - functionName:    write_data16
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - increase
        - write_data
        - write_uint16
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:126,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:127,2'
          Dst:             write_uint16
        - Src:             'bio/bio_writer.c:128,2'
          Dst:             write_data
    - functionName:    write_uint16
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htoun16
        - increase
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:77,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:78,2'
          Dst:             htoun16
    - functionName:    write_data8
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - increase
        - write_data
        - write_uint8
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:118,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:119,2'
          Dst:             write_uint8
        - Src:             'bio/bio_writer.c:120,2'
          Dst:             write_data
    - functionName:    write_uint8
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - increase
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:69,2'
          Dst:             increase
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htoun64
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/byteorder.h:146,9'
          Dst:             __bswap_64
    - functionName:    write_uint64
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htoun64
        - increase
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:102,2'
          Dst:             increase
        - Src:             'bio/bio_writer.c:103,2'
          Dst:             htoun64
    - functionName:    bio_writer_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/bio/bio_writer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          161
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'bio/bio_writer.c:252,15'
          Dst:             chunk_create
    - functionName:    destroy_single
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 780
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate_single
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 784
      functionLinenumberEnd: 795
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          66
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_cleaner
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 728
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate_cleaner
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 732
      functionLinenumberEnd: 739
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 675
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 686
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_nested
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate_nested
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 593
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          118
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_token_enum
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate_token_enum
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         67
      ICount:          397
      EdgeCount:       86
      CyclomaticComplexity: 21
      functionsReached:
        - strchr
      functionUses:    0
      BranchProfiles:
        - Branch String:   'collections/enumerator.c:484,2'
          Branch Sides:    []
      Callsites:
        - Src:             'collections/enumerator.c:490,10'
          Dst:             strchr
        - Src:             'collections/enumerator.c:506,11'
          Dst:             strchr
        - Src:             'collections/enumerator.c:522,23'
          Dst:             strchr
    - functionName:    destroy_glob_enum
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - globfree
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/enumerator.c:212,2'
          Dst:             globfree
    - functionName:    globfree
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate_glob_enum
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          145
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - stat
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/enumerator.c:234,12'
          Dst:             stat
    - functionName:    destroy_dir_enum
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - closedir
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/enumerator.c:94,2'
          Dst:             closedir
    - functionName:    closedir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    enumerate_dir_enum
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         50
      ICount:          304
      EdgeCount:       67
      CyclomaticComplexity: 19
      functionsReached:
        - __errno_location
        - lstat
        - readdir
        - snprintf
        - stat
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/enumerator.c:101,25'
          Dst:             readdir
        - Src:             'collections/enumerator.c:113,6'
          Dst:             streq
        - Src:             'collections/enumerator.c:113,35'
          Dst:             streq
        - Src:             'collections/enumerator.c:124,9'
          Dst:             snprintf
        - Src:             'collections/enumerator.c:135,13'
          Dst:             stat
        - Src:             'collections/enumerator.c:138,9'
          Dst:             __errno_location
        - Src:             'collections/enumerator.c:138,28'
          Dst:             __errno_location
        - Src:             'collections/enumerator.c:138,49'
          Dst:             lstat
    - functionName:    readdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lstat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerator_create_single
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 801
      functionLinenumberEnd: 813
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerator_enumerate_default
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    46
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerator_create_cleaner
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 746
      functionLinenumberEnd: 759
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerator_create_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 695
      functionLinenumberEnd: 709
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    34
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerator_create_nested
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerator_create_token
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          56
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdup
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/enumerator.c:563,2'
          Dst:             strdup
    - functionName:    enumerator_create_glob
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          77
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - enumerator_create_empty
        - glob
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/enumerator.c:253,10'
          Dst:             enumerator_create_empty
        - Src:             'collections/enumerator.c:264,11'
          Dst:             glob
    - functionName:    enumerator_create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    38
      BranchProfiles:  []
      Callsites:       []
    - functionName:    glob
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    path_is_separator
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/path.h'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerator_create_directory
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/enumerator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          145
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - opendir
        - path_is_separator
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/enumerator.c:169,8'
          Dst:             snprintf
        - Src:             'collections/enumerator.c:177,7'
          Dst:             path_is_separator
        - Src:             'collections/enumerator.c:184,14'
          Dst:             opendir
    - functionName:    opendir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_function
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 554
      functionLinenumberEnd: 556
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:555,2'
          Dst:             destroy_internal
    - functionName:    destroy_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 544
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          85
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 550
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:549,2'
          Dst:             destroy_internal
    - functionName:    get_count
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_at
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 464
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - remove_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:468,3'
          Dst:             remove_internal
    - functionName:    remove_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 457
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_key
        - remove_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:458,17'
          Dst:             find_key
        - Src:             'collections/hashtable.c:459,9'
          Dst:             remove_internal
    - functionName:    find_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          200
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - get_index
        - get_next
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:305,10'
          Dst:             get_index
        - Src:             'collections/hashtable.c:324,9'
          Dst:             get_next
        - Src:             'collections/hashtable.c:325,11'
          Dst:             get_index
    - functionName:    get_index
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_next
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:434,17'
          Dst:             find_key
    - functionName:    set_index
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    insert_item
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_index
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:348,2'
          Dst:             set_index
    - functionName:    rehash
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          140
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - get_index
        - get_next
        - init_hashtable
        - insert_item
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:370,2'
          Dst:             init_hashtable
        - Src:             'collections/hashtable.c:383,13'
          Dst:             get_index
        - Src:             'collections/hashtable.c:386,12'
          Dst:             get_next
        - Src:             'collections/hashtable.c:387,14'
          Dst:             get_index
        - Src:             'collections/hashtable.c:389,13'
          Dst:             insert_item
    - functionName:    init_hashtable
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          137
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - calloc
        - hashtable_get_nearest_powerof2
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:256,15'
          Dst:             hashtable_get_nearest_powerof2
        - Src:             'collections/hashtable.c:261,16'
          Dst:             calloc
        - Src:             'collections/hashtable.c:272,16'
          Dst:             calloc
    - functionName:    hashtable_get_nearest_powerof2
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          37
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 400
      functionLinenumberEnd: 429
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          114
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - find_key
        - insert_item
        - rehash
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:406,4'
          Dst:             rehash
        - Src:             'collections/hashtable.c:412,9'
          Dst:             find_key
        - Src:             'collections/hashtable.c:420,10'
          Dst:             insert_item
    - functionName:    enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 504
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          144
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hashtable_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          80
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - init_hashtable
      functionUses:    36
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:581,2'
          Dst:             init_hashtable
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    hashtable_equals_str
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - streq
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:189,9'
          Dst:             streq
    - functionName:    hashtable_equals_ptr
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hashtable_hash_str
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
        - strlen
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:173,20'
          Dst:             strlen
        - Src:             'collections/hashtable.c:173,20'
          Dst:             chunk_create
        - Src:             'collections/hashtable.c:173,9'
          Dst:             chunk_hash
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hashtable_hash_ptr
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashtable.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashtable.c:165,20'
          Dst:             chunk_create
        - Src:             'collections/hashtable.c:165,9'
          Dst:             chunk_hash
    - functionName:    get_match
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashlist.c:345,17'
          Dst:             find_key
    - functionName:    find_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          226
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_function
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashlist.c:489,2'
          Dst:             destroy_internal
    - functionName:    destroy_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashlist.c:483,2'
          Dst:             destroy_internal
    - functionName:    get_count
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_at
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - find_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashlist.c:355,9'
          Dst:             find_key
    - functionName:    get
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashlist.c:338,17'
          Dst:             find_key
    - functionName:    insert_pair
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          58
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rehash
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          146
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - init_hashtable
        - insert_pair
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashlist.c:206,2'
          Dst:             init_hashtable
        - Src:             'collections/hashlist.c:226,4'
          Dst:             insert_pair
    - functionName:    init_hashtable
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
        - hashtable_get_nearest_powerof2
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashlist.c:162,15'
          Dst:             hashtable_get_nearest_powerof2
        - Src:             'collections/hashlist.c:166,16'
          Dst:             calloc
    - functionName:    put
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          103
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - find_key
        - insert_pair
        - rehash
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashlist.c:310,3'
          Dst:             rehash
        - Src:             'collections/hashlist.c:313,9'
          Dst:             find_key
        - Src:             'collections/hashlist.c:327,3'
          Dst:             insert_pair
    - functionName:    enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          200
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hashlist_create_sorted
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 548
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashlist_create_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashlist.c:544,29'
          Dst:             hashlist_create_internal
    - functionName:    hashlist_create_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          79
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - init_hashtable
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashlist.c:518,2'
          Dst:             init_hashtable
    - functionName:    hashlist_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/hashlist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 535
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashlist_create_internal
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/hashlist.c:531,29'
          Dst:             hashlist_create_internal
    - functionName:    make_tail_room
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_size
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:83,7'
          Dst:             get_size
        - Src:             'collections/array.c:82,17'
          Dst:             realloc
    - functionName:    get_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          36
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    33
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_head_room
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          93
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_size
        - memmove_noop
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:98,7'
          Dst:             get_size
        - Src:             'collections/array.c:97,17'
          Dst:             realloc
        - Src:             'collections/array.c:99,3'
          Dst:             get_size
        - Src:             'collections/array.c:99,3'
          Dst:             get_size
        - Src:             'collections/array.c:99,3'
          Dst:             memmove_noop
    - functionName:    memmove_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          118
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:238,5'
          Dst:             get_size
    - functionName:    arrays_deinit
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 610
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    arrays_init
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_destroy_offset
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 593
      functionLinenumberEnd: 596
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy
        - array_invoke_offset
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:594,2'
          Dst:             array_invoke_offset
        - Src:             'collections/array.c:595,2'
          Dst:             array_destroy
    - functionName:    array_invoke_offset
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 556
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          90
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - get_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:565,24'
          Dst:             get_size
    - functionName:    array_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 584
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    59
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_destroy_function
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 587
      functionLinenumberEnd: 590
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy
        - array_invoke
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:588,2'
          Dst:             array_invoke
        - Src:             'collections/array.c:589,2'
          Dst:             array_destroy
    - functionName:    array_invoke
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          93
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - get_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:544,24'
          Dst:             get_size
    - functionName:    search_elements
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_bsearch
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - bsearch
        - get_size
        - memcpy_noop
        - search_elements
      functionUses:    29
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:519,25'
          Dst:             get_size
        - Src:             'collections/array.c:521,46'
          Dst:             get_size
        - Src:             'collections/array.c:521,10'
          Dst:             bsearch
        - Src:             'collections/array.c:521,10'
          Dst:             search_elements
        - Src:             'collections/array.c:527,5'
          Dst:             get_size
        - Src:             'collections/array.c:527,5'
          Dst:             memcpy_noop
        - Src:             'collections/array.c:529,27'
          Dst:             get_size
    - functionName:    bsearch
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compare_elements
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    array_sort
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 483
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - compare_elements
        - get_size
        - qsort_r
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:466,25'
          Dst:             get_size
        - Src:             'collections/array.c:469,32'
          Dst:             get_size
        - Src:             'collections/array.c:469,3'
          Dst:             qsort_r
        - Src:             'collections/array.c:469,3'
          Dst:             compare_elements
    - functionName:    qsort_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_head
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_size
        - memmove_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:154,2'
          Dst:             get_size
        - Src:             'collections/array.c:154,2'
          Dst:             get_size
        - Src:             'collections/array.c:154,2'
          Dst:             get_size
        - Src:             'collections/array.c:154,2'
          Dst:             memmove_noop
    - functionName:    remove_tail
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_size
        - memmove_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:141,2'
          Dst:             get_size
        - Src:             'collections/array.c:141,2'
          Dst:             get_size
        - Src:             'collections/array.c:141,2'
          Dst:             get_size
        - Src:             'collections/array.c:141,2'
          Dst:             memmove_noop
    - functionName:    array_get
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          105
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - array_count
        - get_size
        - memcpy_noop
      functionUses:    42
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:379,25'
          Dst:             array_count
        - Src:             'collections/array.c:385,7'
          Dst:             array_count
        - Src:             'collections/array.c:389,9'
          Dst:             array_count
        - Src:             'collections/array.c:393,3'
          Dst:             get_size
        - Src:             'collections/array.c:393,3'
          Dst:             get_size
        - Src:             'collections/array.c:393,3'
          Dst:             memcpy_noop
    - functionName:    array_count
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    80
      BranchProfiles:  []
      Callsites:       []
    - functionName:    insert_tail
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_size
        - make_tail_room
        - memmove_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:110,2'
          Dst:             make_tail_room
        - Src:             'collections/array.c:112,2'
          Dst:             get_size
        - Src:             'collections/array.c:112,2'
          Dst:             get_size
        - Src:             'collections/array.c:112,2'
          Dst:             get_size
        - Src:             'collections/array.c:112,2'
          Dst:             memmove_noop
    - functionName:    insert_head
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_size
        - make_head_room
        - memmove_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:125,2'
          Dst:             make_head_room
        - Src:             'collections/array.c:127,2'
          Dst:             get_size
        - Src:             'collections/array.c:127,2'
          Dst:             get_size
        - Src:             'collections/array.c:127,2'
          Dst:             get_size
        - Src:             'collections/array.c:127,2'
          Dst:             memmove_noop
    - functionName:    is_in_array
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - get_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:319,26'
          Dst:             get_size
    - functionName:    array_insert_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:308,3'
          Dst:             array_insert
    - functionName:    array_insert
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          214
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - array_count
        - get_size
        - insert_head
        - insert_tail
        - is_in_array
        - memcpy_noop
      functionUses:    82
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:325,24'
          Dst:             array_count
        - Src:             'collections/array.c:331,23'
          Dst:             is_in_array
        - Src:             'collections/array.c:334,4'
          Dst:             memcpy_noop
        - Src:             'collections/array.c:340,10'
          Dst:             array_count
        - Src:             'collections/array.c:345,4'
          Dst:             insert_head
        - Src:             'collections/array.c:349,4'
          Dst:             insert_tail
        - Src:             'collections/array.c:351,18'
          Dst:             array_count
        - Src:             'collections/array.c:353,4'
          Dst:             insert_tail
        - Src:             'collections/array.c:357,4'
          Dst:             insert_head
        - Src:             'collections/array.c:360,23'
          Dst:             get_size
        - Src:             'collections/array.c:363,4'
          Dst:             memcpy_noop
    - functionName:    array_insert_create_value
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create
        - array_insert
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:297,12'
          Dst:             array_create
        - Src:             'collections/array.c:299,2'
          Dst:             array_insert
    - functionName:    array_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_size
      functionUses:    50
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:170,24'
          Dst:             get_size
    - functionName:    array_insert_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create
        - array_insert
      functionUses:    33
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:287,12'
          Dst:             array_create
        - Src:             'collections/array.c:289,2'
          Dst:             array_insert
    - functionName:    array_remove
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 400
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - array_compress
        - array_count
        - array_get
        - remove_head
        - remove_tail
      functionUses:    55
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:401,7'
          Dst:             array_get
        - Src:             'collections/array.c:407,9'
          Dst:             array_count
        - Src:             'collections/array.c:409,12'
          Dst:             array_count
        - Src:             'collections/array.c:411,3'
          Dst:             remove_tail
        - Src:             'collections/array.c:415,3'
          Dst:             remove_head
        - Src:             'collections/array.c:419,3'
          Dst:             array_compress
    - functionName:    array_compress
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          121
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - get_size
        - memmove_noop
        - realloc
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:193,4'
          Dst:             get_size
        - Src:             'collections/array.c:193,4'
          Dst:             get_size
        - Src:             'collections/array.c:193,4'
          Dst:             memmove_noop
        - Src:             'collections/array.c:200,18'
          Dst:             get_size
        - Src:             'collections/array.c:204,19'
          Dst:             realloc
    - functionName:    array_remove_at
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_remove
      functionUses:    41
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:279,3'
          Dst:             array_remove
    - functionName:    array_create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/array.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - enumerator_create_empty
      functionUses:    112
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/array.c:259,10'
          Dst:             enumerator_create_empty
    - functionName:    destroy_function
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_offset
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 532
      functionLinenumberEnd: 544
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 528
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - remove_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:522,9'
          Dst:             remove_first
    - functionName:    remove_first
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_first
        - remove_element
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:266,6'
          Dst:             get_first
        - Src:             'collections/linked_list.c:268,3'
          Dst:             remove_element
    - functionName:    get_first
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          33
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_element
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals_function
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          95
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals_offset
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          103
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clone_offset
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:455,10'
          Dst:             linked_list_create
    - functionName:    linked_list_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          95
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    199
      BranchProfiles:  []
      Callsites:       []
    - functionName:    invoke_function
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    invoke_offset
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_first
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          117
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_last
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 333
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          33
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_last
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_last
        - remove_element
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:338,6'
          Dst:             get_last
        - Src:             'collections/linked_list.c:340,3'
          Dst:             remove_element
    - functionName:    insert_last
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - element_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:279,12'
          Dst:             element_create
    - functionName:    element_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          91
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - remove_element
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:358,14'
          Dst:             remove_element
    - functionName:    remove_at
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - remove_element
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:379,3'
          Dst:             remove_element
    - functionName:    enumerate_current
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - do_enumerate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:162,9'
          Dst:             do_enumerate
    - functionName:    do_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          73
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate_next
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - do_enumerate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:155,9'
          Dst:             do_enumerate
    - functionName:    insert_before
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - element_create
        - insert_last
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:304,3'
          Dst:             insert_last
        - Src:             'collections/linked_list.c:307,12'
          Dst:             element_create
    - functionName:    insert_first
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - element_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:201,12'
          Dst:             element_create
    - functionName:    reset_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_count
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    linked_list_create_with_items
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - linked_list_create
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:624,9'
          Dst:             linked_list_create
    - functionName:    linked_list_create_from_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - linked_list_create
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:605,9'
          Dst:             linked_list_create
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    linked_list_match_str
      functionSourceFile: '/src/strongswan/src/libstrongswan/collections/linked_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'collections/linked_list.c:59,9'
          Dst:             streq
    - functionName:    encryption_algorithm_is_aead
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypters/crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          63
      EdgeCount:       28
      CyclomaticComplexity: 15
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'crypto/crypters/crypter.c:179,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    encryption_algorithm_to_oid
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypters/crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          82
      EdgeCount:       32
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/crypters/crypter.c:125,2'
          Branch Sides:    []
        - Branch String:   'crypto/crypters/crypter.c:134,4'
          Branch Sides:    []
        - Branch String:   'crypto/crypters/crypter.c:150,4'
          Branch Sides:    []
      Callsites:       []
    - functionName:    encryption_algorithm_from_oid
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypters/crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          89
      EdgeCount:       29
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'crypto/crypters/crypter.c:69,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hasher_from_signature_scheme
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          143
      EdgeCount:       69
      CyclomaticComplexity: 36
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   'crypto/hashers/hasher.c:476,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hasher_signature_algorithm_to_oid
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 406
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          135
      EdgeCount:       48
      CyclomaticComplexity: 23
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'crypto/hashers/hasher.c:407,2'
          Branch Sides:    []
        - Branch String:   'crypto/hashers/hasher.c:410,4'
          Branch Sides:    []
        - Branch String:   'crypto/hashers/hasher.c:436,4'
          Branch Sides:    []
        - Branch String:   'crypto/hashers/hasher.c:450,4'
          Branch Sides:    []
        - Branch String:   'crypto/hashers/hasher.c:458,4'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hasher_algorithm_to_oid
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          67
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'crypto/hashers/hasher.c:364,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hasher_algorithm_for_ikev2
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 335
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          73
      EdgeCount:       36
      CyclomaticComplexity: 19
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'crypto/hashers/hasher.c:336,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hasher_algorithm_to_integrity
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          148
      EdgeCount:       63
      CyclomaticComplexity: 30
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/hashers/hasher.c:266,2'
          Branch Sides:    []
        - Branch String:   'crypto/hashers/hasher.c:269,4'
          Branch Sides:    []
        - Branch String:   'crypto/hashers/hasher.c:278,4'
          Branch Sides:    []
        - Branch String:   'crypto/hashers/hasher.c:289,4'
          Branch Sides:    []
        - Branch String:   'crypto/hashers/hasher.c:300,4'
          Branch Sides:    []
        - Branch String:   'crypto/hashers/hasher.c:310,4'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hasher_algorithm_from_integrity
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          196
      EdgeCount:       100
      CyclomaticComplexity: 51
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'crypto/hashers/hasher.c:195,3'
          Branch Sides:    []
        - Branch String:   'crypto/hashers/hasher.c:227,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hasher_algorithm_from_prf
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          77
      EdgeCount:       36
      CyclomaticComplexity: 19
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'crypto/hashers/hasher.c:162,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hasher_algorithm_from_oid
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         36
      ICount:          127
      EdgeCount:       70
      CyclomaticComplexity: 36
      functionsReached: []
      functionUses:    7
      BranchProfiles:
        - Branch String:   'crypto/hashers/hasher.c:117,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hasher_hash_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          82
      EdgeCount:       34
      CyclomaticComplexity: 18
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/hashers/hasher.c:81,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hash_algorithm_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/hashers/hash_algorithm_set.c:100,2'
          Dst:             array_destroy
    - functionName:    _cb_hash_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hash_algorithm_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hash_algorithm_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_enumerator
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/hashers/hash_algorithm_set.c:93,34'
          Dst:             array_create_enumerator
        - Src:             'crypto/hashers/hash_algorithm_set.c:93,9'
          Dst:             enumerator_create_filter
    - functionName:    count
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hash_algorithm_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_count
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/hashers/hash_algorithm_set.c:72,9'
          Dst:             array_count
    - functionName:    hash_find
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hash_algorithm_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_sort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/hashers/hash_algorithm_set.c:50,9'
          Dst:             hash_sort
    - functionName:    hash_sort
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hash_algorithm_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    contains
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hash_algorithm_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_bsearch
        - hash_find
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/hashers/hash_algorithm_set.c:56,9'
          Dst:             array_bsearch
        - Src:             'crypto/hashers/hash_algorithm_set.c:56,9'
          Dst:             hash_find
    - functionName:    add
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hash_algorithm_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_insert
        - array_sort
        - contains
        - hash_sort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/hashers/hash_algorithm_set.c:62,7'
          Dst:             contains
        - Src:             'crypto/hashers/hash_algorithm_set.c:64,3'
          Dst:             array_insert
        - Src:             'crypto/hashers/hash_algorithm_set.c:65,3'
          Dst:             array_sort
        - Src:             'crypto/hashers/hash_algorithm_set.c:65,3'
          Dst:             hash_sort
    - functionName:    hash_algorithm_set_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/hashers/hash_algorithm_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/hashers/hash_algorithm_set.c:111,2'
          Dst:             array_create
    - functionName:    remove_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_bsearch
        - array_remove
        - type_find
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:179,6'
          Dst:             array_bsearch
        - Src:             'crypto/proposal/proposal.c:179,6'
          Dst:             type_find
        - Src:             'crypto/proposal/proposal.c:182,3'
          Dst:             array_remove
    - functionName:    type_find
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - type_sort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:123,9'
          Dst:             type_sort
    - functionName:    type_sort
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - type_for_sort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:114,24'
          Dst:             type_for_sort
        - Src:             'crypto/proposal/proposal.c:114,47'
          Dst:             type_for_sort
    - functionName:    type_for_sort
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          33
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'crypto/proposal/proposal.c:98,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    remove_transform
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_create_enumerator
        - array_remove_at
        - remove_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:691,6'
          Dst:             array_create_enumerator
        - Src:             'crypto/proposal/proposal.c:696,4'
          Dst:             array_remove_at
        - Src:             'crypto/proposal/proposal.c:700,2'
          Dst:             remove_type
    - functionName:    clone_
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 661
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          124
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - add_type
        - array_create_enumerator
        - array_insert
        - is_ke_transform
        - proposal_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:639,31'
          Dst:             proposal_create
        - Src:             'crypto/proposal/proposal.c:641,15'
          Dst:             array_create_enumerator
        - Src:             'crypto/proposal/proposal.c:648,7'
          Dst:             is_ke_transform
        - Src:             'crypto/proposal/proposal.c:652,3'
          Dst:             array_insert
        - Src:             'crypto/proposal/proposal.c:653,3'
          Dst:             add_type
    - functionName:    proposal_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1022
      functionLinenumberEnd: 1023
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - proposal_create_v1
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:1023,9'
          Dst:             proposal_create_v1
    - functionName:    is_ke_transform
      functionSourceFile: '/src/strongswan/src/libstrongswan/./crypto/transform.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          32
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_insert
        - array_sort
        - contains_type
        - type_sort
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:139,7'
          Dst:             contains_type
        - Src:             'crypto/proposal/proposal.c:141,3'
          Dst:             array_insert
        - Src:             'crypto/proposal/proposal.c:142,3'
          Dst:             array_sort
        - Src:             'crypto/proposal/proposal.c:142,3'
          Dst:             type_sort
    - functionName:    contains_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_bsearch
        - type_find
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:131,9'
          Dst:             array_bsearch
        - Src:             'crypto/proposal/proposal.c:131,9'
          Dst:             type_find
    - functionName:    proposal_create_v1
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 987
      functionLinenumberEnd: 1015
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          96
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:990,2'
          Dst:             array_create
        - Src:             'crypto/proposal/proposal.c:990,2'
          Dst:             array_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 976
      functionLinenumberEnd: 980
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:977,2'
          Dst:             array_destroy
        - Src:             'crypto/proposal/proposal.c:978,2'
          Dst:             array_destroy
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 608
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - algo_list_equals
        - array_count
        - array_destroy
        - array_get
        - merge_types
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:618,10'
          Dst:             merge_types
        - Src:             'crypto/proposal/proposal.c:619,18'
          Dst:             array_count
        - Src:             'crypto/proposal/proposal.c:621,3'
          Dst:             array_get
        - Src:             'crypto/proposal/proposal.c:622,8'
          Dst:             algo_list_equals
        - Src:             'crypto/proposal/proposal.c:624,4'
          Dst:             array_destroy
        - Src:             'crypto/proposal/proposal.c:628,2'
          Dst:             array_destroy
    - functionName:    merge_types
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - add_type
        - array_count
        - array_create
        - array_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:155,10'
          Dst:             array_count
        - Src:             'crypto/proposal/proposal.c:155,10'
          Dst:             array_count
        - Src:             'crypto/proposal/proposal.c:156,10'
          Dst:             array_create
        - Src:             'crypto/proposal/proposal.c:160,7'
          Dst:             array_get
        - Src:             'crypto/proposal/proposal.c:162,4'
          Dst:             add_type
        - Src:             'crypto/proposal/proposal.c:164,7'
          Dst:             array_get
        - Src:             'crypto/proposal/proposal.c:166,4'
          Dst:             add_type
    - functionName:    algo_list_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          124
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - create_enumerator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:567,7'
          Dst:             create_enumerator
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_enumerator
        - enumerator_create_filter
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:243,7'
          Dst:             array_create_enumerator
        - Src:             'crypto/proposal/proposal.c:242,9'
          Dst:             enumerator_create_filter
    - functionName:    _cb_alg_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          139
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_transform_number
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 602
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_number
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_spi
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 549
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_spi
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 554
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_protocol
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 541
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    matches
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 537
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - select_algos
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:536,9'
          Dst:             select_algos
    - functionName:    select_algos
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          228
      EdgeCount:       53
      CyclomaticComplexity: 15
      functionsReached:
        - array_count
        - array_destroy
        - array_get
        - encryption_algorithm_is_aead
        - equals_alg
        - hash_alg
        - hashtable_create
        - is_ke_transform
        - merge_types
        - select_algo
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:436,8'
          Dst:             hashtable_create
        - Src:             'crypto/proposal/proposal.c:436,8'
          Dst:             hash_alg
        - Src:             'crypto/proposal/proposal.c:436,8'
          Dst:             equals_alg
        - Src:             'crypto/proposal/proposal.c:438,10'
          Dst:             merge_types
        - Src:             'crypto/proposal/proposal.c:439,18'
          Dst:             array_count
        - Src:             'crypto/proposal/proposal.c:443,3'
          Dst:             array_get
        - Src:             'crypto/proposal/proposal.c:448,7'
          Dst:             is_ke_transform
        - Src:             'crypto/proposal/proposal.c:452,7'
          Dst:             select_algo
        - Src:             'crypto/proposal/proposal.c:464,8'
          Dst:             is_ke_transform
        - Src:             'crypto/proposal/proposal.c:469,5'
          Dst:             encryption_algorithm_is_aead
        - Src:             'crypto/proposal/proposal.c:482,4'
          Dst:             array_destroy
        - Src:             'crypto/proposal/proposal.c:487,2'
          Dst:             array_destroy
    - functionName:    hash_alg
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:412,20'
          Dst:             chunk_create
        - Src:             'crypto/proposal/proposal.c:412,9'
          Dst:             chunk_hash
    - functionName:    equals_alg
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 419
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select_algo
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 329
      functionLinenumberEnd: 403
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          381
      EdgeCount:       90
      CyclomaticComplexity: 24
      functionsReached:
        - create_enumerator
        - is_ke_transform
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:334,6'
          Dst:             is_ke_transform
        - Src:             'crypto/proposal/proposal.c:340,7'
          Dst:             create_enumerator
        - Src:             'crypto/proposal/proposal.c:370,7'
          Dst:             create_enumerator
        - Src:             'crypto/proposal/proposal.c:374,7'
          Dst:             is_ke_transform
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select_proposal
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 526
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          129
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - proposal_create_v1
        - select_algos
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:508,14'
          Dst:             proposal_create_v1
        - Src:             'crypto/proposal/proposal.c:514,14'
          Dst:             proposal_create_v1
        - Src:             'crypto/proposal/proposal.c:519,7'
          Dst:             select_algos
    - functionName:    promote_transform
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          103
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - array_create_enumerator
        - array_insert
        - array_remove_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:300,15'
          Dst:             array_create_enumerator
        - Src:             'crypto/proposal/proposal.c:306,4'
          Dst:             array_remove_at
        - Src:             'crypto/proposal/proposal.c:318,3'
          Dst:             array_insert
    - functionName:    has_transform
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          105
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:271,15'
          Dst:             create_enumerator
    - functionName:    get_algorithm
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - create_enumerator
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:254,15'
          Dst:             create_enumerator
    - functionName:    add_algorithm
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_type
        - array_insert
      functionUses:    44
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:208,2'
          Dst:             array_insert
        - Src:             'crypto/proposal/proposal.c:209,2'
          Dst:             add_type
    - functionName:    proposal_has_additional_ke
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1505
      functionLinenumberEnd: 1522
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_create_enumerator
        - is_ke_transform
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:1511,15'
          Dst:             array_create_enumerator
        - Src:             'crypto/proposal/proposal.c:1515,4'
          Dst:             is_ke_transform
    - functionName:    proposal_select
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1450
      functionLinenumberEnd: 1498
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          181
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_proposal
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 707
      functionLinenumberEnd: 856
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         85
      ICount:          452
      EdgeCount:       111
      CyclomaticComplexity: 28
      functionsReached:
        - add_algorithm
        - array_compress
        - array_create_enumerator
        - array_remove_at
        - create_enumerator
        - encryption_algorithm_is_aead
        - get_algorithm
        - remove_transform
        - remove_type
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/proposal/proposal.c:815,6'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:716,8'
          Dst:             get_algorithm
        - Src:             'crypto/proposal/proposal.c:719,8'
          Dst:             create_enumerator
        - Src:             'crypto/proposal/proposal.c:726,7'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:734,8'
          Dst:             get_algorithm
        - Src:             'crypto/proposal/proposal.c:740,7'
          Dst:             array_create_enumerator
        - Src:             'crypto/proposal/proposal.c:745,5'
          Dst:             array_remove_at
        - Src:             'crypto/proposal/proposal.c:749,8'
          Dst:             get_algorithm
        - Src:             'crypto/proposal/proposal.c:757,3'
          Dst:             remove_transform
        - Src:             'crypto/proposal/proposal.c:762,7'
          Dst:             create_enumerator
        - Src:             'crypto/proposal/proposal.c:766,8'
          Dst:             encryption_algorithm_is_aead
        - Src:             'crypto/proposal/proposal.c:791,4'
          Dst:             remove_transform
        - Src:             'crypto/proposal/proposal.c:794,7'
          Dst:             get_algorithm
        - Src:             'crypto/proposal/proposal.c:805,7'
          Dst:             array_create_enumerator
        - Src:             'crypto/proposal/proposal.c:831,5'
          Dst:             array_remove_at
        - Src:             'crypto/proposal/proposal.c:835,3'
          Dst:             remove_type
        - Src:             'crypto/proposal/proposal.c:837,8'
          Dst:             get_algorithm
        - Src:             'crypto/proposal/proposal.c:847,8'
          Dst:             get_algorithm
        - Src:             'crypto/proposal/proposal.c:849,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:853,2'
          Dst:             array_compress
        - Src:             'crypto/proposal/proposal.c:854,2'
          Dst:             array_compress
    - functionName:    proposal_create_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1433
      functionLinenumberEnd: 1443
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - check_proposal
        - proposal_create_from_string_unchecked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:1436,9'
          Dst:             proposal_create_from_string_unchecked
        - Src:             'crypto/proposal/proposal.c:1437,16'
          Dst:             check_proposal
    - functionName:    proposal_create_from_string_unchecked
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1400
      functionLinenumberEnd: 1427
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          79
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_string_algo
        - destroy
        - enumerator_create_token
        - proposal_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:1406,30'
          Dst:             proposal_create
        - Src:             'crypto/proposal/proposal.c:1409,15'
          Dst:             enumerator_create_token
        - Src:             'crypto/proposal/proposal.c:1412,8'
          Dst:             add_string_algo
        - Src:             'crypto/proposal/proposal.c:1423,3'
          Dst:             destroy
    - functionName:    add_string_algo
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 862
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add_algorithm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:872,2'
          Dst:             add_algorithm
    - functionName:    proposal_create_default_aead
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1364
      functionLinenumberEnd: 1393
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - add_algorithm
        - add_supported_ike
        - add_supported_ke_methods
        - destroy
        - proposal_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'crypto/proposal/proposal.c:1367,2'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:1370,32'
          Dst:             proposal_create
        - Src:             'crypto/proposal/proposal.c:1371,9'
          Dst:             add_supported_ike
        - Src:             'crypto/proposal/proposal.c:1373,5'
          Dst:             destroy
        - Src:             'crypto/proposal/proposal.c:1380,32'
          Dst:             proposal_create
        - Src:             'crypto/proposal/proposal.c:1381,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1382,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1383,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1384,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1386,4'
          Dst:             add_supported_ke_methods
        - Src:             'crypto/proposal/proposal.c:1387,4'
          Dst:             add_algorithm
    - functionName:    add_supported_ike
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1113
      functionLinenumberEnd: 1311
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         93
      ICount:          589
      EdgeCount:       96
      CyclomaticComplexity: 5
      functionsReached:
        - add_algorithm
        - add_supported_ke_methods
        - array_count
      functionUses:    2
      BranchProfiles:
        - Branch String:   'crypto/proposal/proposal.c:1126,4'
          Branch Sides:    []
        - Branch String:   'crypto/proposal/proposal.c:1149,4'
          Branch Sides:    []
        - Branch String:   'crypto/proposal/proposal.c:1179,4'
          Branch Sides:    []
        - Branch String:   'crypto/proposal/proposal.c:1200,4'
          Branch Sides:    []
        - Branch String:   'crypto/proposal/proposal.c:1223,4'
          Branch Sides:    []
        - Branch String:   'crypto/proposal/proposal.c:1240,4'
          Branch Sides:    []
        - Branch String:   'crypto/proposal/proposal.c:1261,3'
          Branch Sides:    []
        - Branch String:   'crypto/proposal/proposal.c:1278,3'
          Branch Sides:    []
        - Branch String:   'crypto/proposal/proposal.c:1294,3'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:1132,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1133,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1134,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1137,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1158,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1159,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1160,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1168,8'
          Dst:             array_count
        - Src:             'crypto/proposal/proposal.c:1186,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1187,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1188,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1203,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1214,8'
          Dst:             array_count
        - Src:             'crypto/proposal/proposal.c:1228,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1245,6'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1266,5'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1282,5'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1297,5'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1308,2'
          Dst:             add_supported_ke_methods
    - functionName:    add_supported_ke_methods
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1030
      functionLinenumberEnd: 1107
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         46
      ICount:          239
      EdgeCount:       46
      CyclomaticComplexity: 2
      functionsReached:
        - add_algorithm
      functionUses:    4
      BranchProfiles:
        - Branch String:   'crypto/proposal/proposal.c:1039,3'
          Branch Sides:    []
        - Branch String:   'crypto/proposal/proposal.c:1061,3'
          Branch Sides:    []
        - Branch String:   'crypto/proposal/proposal.c:1079,3'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:1049,5'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1067,5'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1100,5'
          Dst:             add_algorithm
    - functionName:    proposal_create_default
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1317
      functionLinenumberEnd: 1358
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          91
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - add_algorithm
        - add_supported_ike
        - add_supported_ke_methods
        - destroy
        - proposal_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'crypto/proposal/proposal.c:1320,2'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:1318,50'
          Dst:             proposal_create
        - Src:             'crypto/proposal/proposal.c:1323,9'
          Dst:             add_supported_ike
        - Src:             'crypto/proposal/proposal.c:1325,5'
          Dst:             destroy
        - Src:             'crypto/proposal/proposal.c:1330,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1331,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1332,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1333,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1334,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1335,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1336,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1337,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1338,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1340,4'
          Dst:             add_supported_ke_methods
        - Src:             'crypto/proposal/proposal.c:1341,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1344,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1345,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1346,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1347,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1348,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1349,4'
          Dst:             add_algorithm
        - Src:             'crypto/proposal/proposal.c:1351,4'
          Dst:             add_supported_ke_methods
        - Src:             'crypto/proposal/proposal.c:1352,4'
          Dst:             add_algorithm
    - functionName:    print_alg
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 882
      functionLinenumberEnd: 924
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          167
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - array_create_enumerator
        - is_ke_transform
        - print_in_hook
        - sprintf
        - transform_get_enum_names
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:888,10'
          Dst:             transform_get_enum_names
        - Src:             'crypto/proposal/proposal.c:890,15'
          Dst:             array_create_enumerator
        - Src:             'crypto/proposal/proposal.c:904,7'
          Dst:             is_ke_transform
        - Src:             'crypto/proposal/proposal.c:906,4'
          Dst:             sprintf
        - Src:             'crypto/proposal/proposal.c:910,15'
          Dst:             print_in_hook
        - Src:             'crypto/proposal/proposal.c:915,15'
          Dst:             print_in_hook
        - Src:             'crypto/proposal/proposal.c:920,15'
          Dst:             print_in_hook
    - functionName:    proposal_printf_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 932
      functionLinenumberEnd: 972
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          158
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - array_create_enumerator
        - print_alg
        - print_in_hook
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal.c:942,10'
          Dst:             print_in_hook
        - Src:             'crypto/proposal/proposal.c:952,16'
          Dst:             print_in_hook
        - Src:             'crypto/proposal/proposal.c:957,16'
          Dst:             print_in_hook
        - Src:             'crypto/proposal/proposal.c:964,12'
          Dst:             print_in_hook
        - Src:             'crypto/proposal/proposal.c:965,15'
          Dst:             array_create_enumerator
        - Src:             'crypto/proposal/proposal.c:968,14'
          Dst:             print_alg
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal_keywords.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    register_algname_parser
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal_keywords.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    register_token
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal_keywords.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          78
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal_keywords.c:142,2'
          Dst:             strdup
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    parse_token
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal_keywords.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          91
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_token
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal_keywords.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal_keywords.c:83,7'
          Dst:             streq
    - functionName:    get_token
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal_keywords.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - find_token
        - parse_token
        - proposal_get_token_static
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal_keywords.c:124,41'
          Dst:             strlen
        - Src:             'crypto/proposal/proposal_keywords.c:124,10'
          Dst:             proposal_get_token_static
        - Src:             'crypto/proposal/proposal_keywords.c:127,11'
          Dst:             find_token
        - Src:             'crypto/proposal/proposal_keywords.c:131,11'
          Dst:             parse_token
    - functionName:    proposal_keywords_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/proposal/proposal_keywords.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/proposal/proposal_keywords.c:185,2'
          Dst:             linked_list_create
        - Src:             'crypto/proposal/proposal_keywords.c:185,2'
          Dst:             linked_list_create
        - Src:             'crypto/proposal/proposal_keywords.c:185,2'
          Dst:             rwlock_create
    - functionName:    hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/./crypto/proposal/proposal_keywords_static.txt'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          146
      EdgeCount:       40
      CyclomaticComplexity: 21
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   './crypto/proposal/proposal_keywords_static.txt:81,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    proposal_get_token_static
      functionSourceFile: '/src/strongswan/src/libstrongswan/./crypto/proposal/proposal_keywords_static.txt'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          120
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - hash
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './crypto/proposal/proposal_keywords_static.txt:194,35'
          Dst:             hash
        - Src:             './crypto/proposal/proposal_keywords_static.txt:204,34'
          Dst:             strncmp
    - functionName:    pseudo_random_function_from_oid
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/prfs/prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          51
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/prfs/prf.c:45,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             './utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rng_allocate_bytes_not_zero
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/rngs/rng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_clear
        - chunk_create
        - rng_get_bytes_not_zero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/rngs/rng.c:57,11'
          Dst:             chunk_create
        - Src:             'crypto/rngs/rng.c:58,7'
          Dst:             rng_get_bytes_not_zero
        - Src:             'crypto/rngs/rng.c:60,3'
          Dst:             chunk_clear
    - functionName:    rng_get_bytes_not_zero
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/rngs/rng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          123
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1432
      functionLinenumberEnd: 1447
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          158
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1367
      functionLinenumberEnd: 1371
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1303
      functionLinenumberEnd: 1363
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          415
      EdgeCount:       30
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'crypto/crypto_factory.c:1315,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    create_verify_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1375
      functionLinenumberEnd: 1428
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          251
      EdgeCount:       31
      CyclomaticComplexity: 17
      functionsReached:
        - enumerator_create_empty
      functionUses:    0
      BranchProfiles:
        - Branch String:   'crypto/crypto_factory.c:1380,2'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1414,11'
          Dst:             enumerator_create_empty
    - functionName:    add_test_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1261
      functionLinenumberEnd: 1288
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          185
      EdgeCount:       29
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'crypto/crypto_factory.c:1262,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    _cb_nonce_gen_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1239
      functionLinenumberEnd: 1251
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_nonce_gen_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1255
      functionLinenumberEnd: 1256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1256,9'
          Dst:             create_enumerator
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1006
      functionLinenumberEnd: 1012
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
        - linked_list_create
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1011,6'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1009,5'
          Dst:             enumerator_create_filter
        - Src:             'crypto/crypto_factory.c:1008,9'
          Dst:             enumerator_create_filter
    - functionName:    _cb_unique_check
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 982
      functionLinenumberEnd: 998
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          97
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_entry_match
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 973
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          49
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_rng_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1229
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_rng_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1233
      functionLinenumberEnd: 1234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1234,9'
          Dst:             create_enumerator
    - functionName:    _cb_ke_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1191
      functionLinenumberEnd: 1205
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_ke_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1209
      functionLinenumberEnd: 1210
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1210,9'
          Dst:             create_enumerator
    - functionName:    _cb_drbg_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1167
      functionLinenumberEnd: 1181
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_drbg_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1185
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1186,9'
          Dst:             create_enumerator
    - functionName:    _cb_kdf_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1143
      functionLinenumberEnd: 1157
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_kdf_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1161
      functionLinenumberEnd: 1162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1162,9'
          Dst:             create_enumerator
    - functionName:    _cb_xof_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1133
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_xof_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1137
      functionLinenumberEnd: 1138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1138,9'
          Dst:             create_enumerator
    - functionName:    _cb_prf_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1095
      functionLinenumberEnd: 1109
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_prf_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1113
      functionLinenumberEnd: 1114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1114,9'
          Dst:             create_enumerator
    - functionName:    _cb_hasher_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1071
      functionLinenumberEnd: 1085
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_hasher_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1089
      functionLinenumberEnd: 1090
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1090,9'
          Dst:             create_enumerator
    - functionName:    _cb_signer_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1047
      functionLinenumberEnd: 1061
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_signer_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1065
      functionLinenumberEnd: 1066
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1066,9'
          Dst:             create_enumerator
    - functionName:    create_aead_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1041
      functionLinenumberEnd: 1042
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1042,9'
          Dst:             create_enumerator
    - functionName:    _cb_crypter_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1017
      functionLinenumberEnd: 1031
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_crypter_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1036
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1036,9'
          Dst:             create_enumerator
    - functionName:    remove_ke
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 953
      functionLinenumberEnd: 969
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_ke
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 937
      functionLinenumberEnd: 949
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          85
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:944,3'
          Dst:             add_entry
    - functionName:    add_entry
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 571
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          184
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_nonce_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 916
      functionLinenumberEnd: 932
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_nonce_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 909
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:910,2'
          Dst:             add_entry
    - functionName:    remove_rng
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 888
      functionLinenumberEnd: 904
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_rng
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 884
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:879,3'
          Dst:             add_entry
    - functionName:    remove_drbg
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 851
      functionLinenumberEnd: 867
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_drbg
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 835
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:842,3'
          Dst:             add_entry
    - functionName:    remove_kdf
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 814
      functionLinenumberEnd: 830
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_kdf
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 810
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          85
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:805,3'
          Dst:             add_entry
    - functionName:    remove_xof
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 777
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_xof
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 761
      functionLinenumberEnd: 773
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:768,3'
          Dst:             add_entry
    - functionName:    remove_prf
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 740
      functionLinenumberEnd: 756
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_prf
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:731,3'
          Dst:             add_entry
    - functionName:    remove_hasher
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 703
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_hasher
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 699
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:694,3'
          Dst:             add_entry
    - functionName:    remove_signer
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 666
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_signer
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 662
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:657,3'
          Dst:             add_entry
    - functionName:    add_aead
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:620,3'
          Dst:             add_entry
    - functionName:    remove_aead
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_crypter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 592
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_crypter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 588
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - add_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:583,3'
          Dst:             add_entry
    - functionName:    create_ke
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          225
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_nonce_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_rng
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          141
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_drbg
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 429
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          156
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_kdf
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          158
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_xof
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          141
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_prf
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          141
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_hasher
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          143
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_signer
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          141
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_aead
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          149
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_crypter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          145
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    crypto_factory_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1453
      functionLinenumberEnd: 1527
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          259
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - crypto_tester_create
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             crypto_tester_create
        - Src:             'crypto/crypto_factory.c:1456,2'
          Dst:             rwlock_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1965
      functionLinenumberEnd: 1977
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          125
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_ke_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1959
      functionLinenumberEnd: 1961
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_rng_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1953
      functionLinenumberEnd: 1955
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_drbg_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1947
      functionLinenumberEnd: 1949
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_kdf_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1941
      functionLinenumberEnd: 1943
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_xof_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1935
      functionLinenumberEnd: 1937
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_prf_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1929
      functionLinenumberEnd: 1931
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_hasher_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1923
      functionLinenumberEnd: 1925
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_signer_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1917
      functionLinenumberEnd: 1919
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_aead_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1911
      functionLinenumberEnd: 1913
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_crypter_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1905
      functionLinenumberEnd: 1907
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bench_ke
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1658
      functionLinenumberEnd: 1691
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          202
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - chunk_free
        - end_timing
        - start_timing
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1665,2'
          Dst:             start_timing
        - Src:             'crypto/crypto_tester.c:1666,9'
          Dst:             end_timing
        - Src:             'crypto/crypto_tester.c:1684,3'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:1685,3'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:1686,3'
          Dst:             chunk_free
    - functionName:    start_timing
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clock_gettime
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:138,2'
          Dst:             clock_gettime
    - functionName:    end_timing
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clock_gettime
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:148,2'
          Dst:             clock_gettime
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clock_gettime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    test_single_ke
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1697
      functionLinenumberEnd: 1774
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          431
      EdgeCount:       78
      CyclomaticComplexity: 23
      functionsReached:
        - chunk_create
        - chunk_equals
        - chunk_free
        - key_exchange_is_kem
        - rng_tester_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1712,6'
          Dst:             key_exchange_is_kem
        - Src:             'crypto/crypto_tester.c:1715,13'
          Dst:             rng_tester_create
        - Src:             'crypto/crypto_tester.c:1732,12'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:1733,12'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:1740,40'
          Dst:             chunk_equals
        - Src:             'crypto/crypto_tester.c:1748,43'
          Dst:             chunk_equals
        - Src:             'crypto/crypto_tester.c:1752,40'
          Dst:             chunk_equals
        - Src:             'crypto/crypto_tester.c:1760,43'
          Dst:             chunk_equals
        - Src:             'crypto/crypto_tester.c:1769,2'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:1770,2'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:1771,2'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:1772,2'
          Dst:             chunk_free
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    45
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    test_ke
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1820
      functionLinenumberEnd: 1901
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          134
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - bench_ke
        - test_single_ke
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1834,13'
          Dst:             test_single_ke
        - Src:             'crypto/crypto_tester.c:1858,13'
          Dst:             bench_ke
    - functionName:    bench_rng
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1532
      functionLinenumberEnd: 1560
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          119
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - end_timing
        - start_timing
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1543,9'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:1544,3'
          Dst:             start_timing
        - Src:             'crypto/crypto_tester.c:1545,10'
          Dst:             end_timing
    - functionName:    test_rng
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1565
      functionLinenumberEnd: 1651
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          267
      EdgeCount:       53
      CyclomaticComplexity: 16
      functionsReached:
        - bench_rng
        - chunk_free
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1607,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:1620,3'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:1640,13'
          Dst:             bench_rng
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bench_drbg
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1406
      functionLinenumberEnd: 1436
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          136
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - end_timing
        - memset_noop
        - rng_tester_create
        - start_timing
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1410,17'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:1412,2'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:1413,12'
          Dst:             rng_tester_create
        - Src:             'crypto/crypto_tester.c:1423,3'
          Dst:             start_timing
        - Src:             'crypto/crypto_tester.c:1424,10'
          Dst:             end_timing
    - functionName:    test_drbg
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1441
      functionLinenumberEnd: 1525
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          279
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - bench_drbg
        - chunk_create
        - chunk_equals
        - chunk_free
        - rng_tester_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1461,13'
          Dst:             rng_tester_create
        - Src:             'crypto/crypto_tester.c:1462,9'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:1471,4'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:1486,8'
          Dst:             chunk_equals
        - Src:             'crypto/crypto_tester.c:1494,3'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:1514,13'
          Dst:             bench_drbg
    - functionName:    create_kdf_args
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1203
      functionLinenumberEnd: 1210
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_kdf_vector
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1219
      functionLinenumberEnd: 1229
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          49
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - create_kdf_args
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/crypto_tester.c:1220,2'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1224,11'
          Dst:             create_kdf_args
    - functionName:    kdf_vector_applies
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1236
      functionLinenumberEnd: 1252
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/crypto_tester.c:1239,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    test_kdf
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1259
      functionLinenumberEnd: 1399
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          451
      EdgeCount:       94
      CyclomaticComplexity: 28
      functionsReached:
        - chunk_equals
        - chunk_free
        - create_kdf_vector
        - kdf_has_fixed_output_length
        - kdf_vector_applies
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1273,14'
          Dst:             kdf_vector_applies
        - Src:             'crypto/crypto_tester.c:1288,10'
          Dst:             create_kdf_vector
        - Src:             'crypto/crypto_tester.c:1316,7'
          Dst:             kdf_has_fixed_output_length
        - Src:             'crypto/crypto_tester.c:1332,8'
          Dst:             chunk_equals
        - Src:             'crypto/crypto_tester.c:1337,7'
          Dst:             kdf_has_fixed_output_length
        - Src:             'crypto/crypto_tester.c:1339,4'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:1344,9'
          Dst:             chunk_equals
        - Src:             'crypto/crypto_tester.c:1350,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:1355,8'
          Dst:             chunk_equals
        - Src:             'crypto/crypto_tester.c:1363,3'
          Dst:             chunk_free
    - functionName:    bench_xof
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1061
      functionLinenumberEnd: 1093
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          162
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - end_timing
        - memset_noop
        - start_timing
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1072,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:1073,27'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:1080,3'
          Dst:             start_timing
        - Src:             'crypto/crypto_tester.c:1081,10'
          Dst:             end_timing
    - functionName:    test_xof
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1098
      functionLinenumberEnd: 1194
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          283
      EdgeCount:       51
      CyclomaticComplexity: 16
      functionsReached:
        - bench_xof
        - chunk_create
        - chunk_free
        - memeq
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1125,10'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:1139,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:1144,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:1153,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:1163,3'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:1183,13'
          Dst:             bench_xof
    - functionName:    bench_prf
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 875
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          199
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
        - end_timing
        - memset_noop
        - start_timing
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:886,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:887,26'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:893,9'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:894,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:897,3'
          Dst:             start_timing
        - Src:             'crypto/crypto_tester.c:898,10'
          Dst:             end_timing
    - functionName:    test_prf
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 916
      functionLinenumberEnd: 1054
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         65
      ICount:          509
      EdgeCount:       91
      CyclomaticComplexity: 28
      functionsReached:
        - bench_prf
        - chunk_create
        - chunk_free
        - chunk_skip
        - memeq
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:943,10'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:944,9'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:970,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:975,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:987,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:994,4'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:1002,34'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:1006,29'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:1010,29'
          Dst:             chunk_skip
        - Src:             'crypto/crypto_tester.c:1014,9'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:1023,3'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:1043,13'
          Dst:             bench_prf
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bench_hasher
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 719
      functionLinenumberEnd: 748
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          138
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - end_timing
        - memset_noop
        - start_timing
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:730,9'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:731,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:734,3'
          Dst:             start_timing
        - Src:             'crypto/crypto_tester.c:735,10'
          Dst:             end_timing
    - functionName:    test_hasher
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 753
      functionLinenumberEnd: 868
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          394
      EdgeCount:       67
      CyclomaticComplexity: 21
      functionsReached:
        - bench_hasher
        - chunk_create
        - chunk_free
        - chunk_skip
        - memeq
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:781,10'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:790,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:795,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:808,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:815,4'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:816,39'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:820,34'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:824,34'
          Dst:             chunk_skip
        - Src:             'crypto/crypto_tester.c:828,9'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:837,3'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:857,13'
          Dst:             bench_hasher
    - functionName:    bench_signer
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          213
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - end_timing
        - memset_noop
        - start_timing
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:549,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:550,32'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:555,9'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:556,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:559,3'
          Dst:             start_timing
        - Src:             'crypto/crypto_tester.c:560,10'
          Dst:             end_timing
        - Src:             'crypto/crypto_tester.c:566,46'
          Dst:             chunk_create
    - functionName:    test_signer
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 582
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          483
      EdgeCount:       73
      CyclomaticComplexity: 23
      functionsReached:
        - bench_signer
        - chunk_create
        - chunk_free
        - chunk_skip
        - memeq
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:609,10'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:610,9'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:633,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:638,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:643,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:662,12'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:667,13'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:671,42'
          Dst:             chunk_skip
        - Src:             'crypto/crypto_tester.c:672,13'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:681,3'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:701,13'
          Dst:             bench_signer
    - functionName:    bench_aead
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 390
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          278
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - end_timing
        - memset_noop
        - start_timing
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:356,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:357,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:358,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:359,28'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:365,9'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:366,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:370,3'
          Dst:             start_timing
        - Src:             'crypto/crypto_tester.c:371,10'
          Dst:             end_timing
        - Src:             'crypto/crypto_tester.c:373,33'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:374,7'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:378,28'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:379,7'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:379,32'
          Dst:             chunk_create
    - functionName:    test_aead
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 396
      functionLinenumberEnd: 530
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          497
      EdgeCount:       78
      CyclomaticComplexity: 24
      functionsReached:
        - bench_aead
        - chunk_create
        - chunk_free
        - memeq
        - realloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:433,9'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:438,8'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:439,11'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:443,11'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:448,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:457,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:462,28'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:467,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:471,15'
          Dst:             realloc
        - Src:             'crypto/crypto_tester.c:477,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:485,3'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:488,4'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:518,13'
          Dst:             bench_aead
    - functionName:    bench_crypter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          229
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - end_timing
        - memset_noop
        - start_timing
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:178,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:179,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:180,34'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:185,9'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:186,3'
          Dst:             memset_noop
        - Src:             'crypto/crypto_tester.c:189,3'
          Dst:             start_timing
        - Src:             'crypto/crypto_tester.c:190,10'
          Dst:             end_timing
        - Src:             'crypto/crypto_tester.c:192,39'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:196,39'
          Dst:             chunk_create
    - functionName:    test_crypter
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          430
      EdgeCount:       71
      CyclomaticComplexity: 22
      functionsReached:
        - bench_crypter
        - chunk_create
        - chunk_free
        - memeq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:241,9'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:246,8'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:249,11'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:254,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:263,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:269,7'
          Dst:             chunk_create
        - Src:             'crypto/crypto_tester.c:273,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:282,8'
          Dst:             memeq
        - Src:             'crypto/crypto_tester.c:290,3'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:293,4'
          Dst:             chunk_free
        - Src:             'crypto/crypto_tester.c:323,13'
          Dst:             bench_crypter
    - functionName:    crypto_tester_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/crypto_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1983
      functionLinenumberEnd: 2034
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          195
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/crypto_tester.c:1986,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_tester.c:1986,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_tester.c:1986,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_tester.c:1986,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_tester.c:1986,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_tester.c:1986,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_tester.c:1986,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_tester.c:1986,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_tester.c:1986,2'
          Dst:             linked_list_create
        - Src:             'crypto/crypto_tester.c:1986,2'
          Dst:             linked_list_create
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    strcaseeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:55,32'
          Dst:             strcasecmp
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             './utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    key_exchange_concat_secrets
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/key_exchange.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 755
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          128
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - array_count
        - array_get
        - chunk_clear
        - chunk_create_cat
        - chunk_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/key_exchange.c:727,7'
          Dst:             array_count
        - Src:             'crypto/key_exchange.c:733,18'
          Dst:             array_count
        - Src:             'crypto/key_exchange.c:735,7'
          Dst:             array_get
        - Src:             'crypto/key_exchange.c:744,15'
          Dst:             chunk_length
        - Src:             'crypto/key_exchange.c:744,15'
          Dst:             chunk_create_cat
        - Src:             'crypto/key_exchange.c:749,4'
          Dst:             chunk_clear
        - Src:             'crypto/key_exchange.c:750,4'
          Dst:             chunk_clear
    - functionName:    key_exchange_check_pubkey_len
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/key_exchange.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 714
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          254
      EdgeCount:       48
      CyclomaticComplexity: 3
      functionsReached:
        - diffie_hellman_get_params
      functionUses:    4
      BranchProfiles:
        - Branch String:   'crypto/key_exchange.c:642,2'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/key_exchange.c:655,13'
          Dst:             diffie_hellman_get_params
    - functionName:    diffie_hellman_get_params
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/key_exchange.c'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 590
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    key_exchange_is_kem
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/key_exchange.c'
      linkageType:     InternalLinkage
      functionLinenumber: 622
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          31
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/key_exchange.c:623,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    key_exchange_is_ecdh
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/key_exchange.c'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 616
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          71
      EdgeCount:       32
      CyclomaticComplexity: 17
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'crypto/key_exchange.c:597,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    token_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/key_exchange.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    key_exchange_deinit
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/key_exchange.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - token_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/key_exchange.c:571,2'
          Dst:             token_destroy
    - functionName:    additional_key_exchange_parser
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/key_exchange.c'
      linkageType:     InternalLinkage
      functionLinenumber: 501
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          171
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - __isoc99_sscanf
        - strcaseeq
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/key_exchange.c:507,18'
          Dst:             __isoc99_sscanf
        - Src:             'crypto/key_exchange.c:508,4'
          Dst:             strcaseeq
        - Src:             'crypto/key_exchange.c:523,2'
          Dst:             strdup
    - functionName:    key_exchange_init
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/key_exchange.c'
      linkageType:     InternalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          92
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - additional_key_exchange_parser
        - hashtable_create
        - hashtable_equals_str
        - hashtable_hash_str
        - mutex_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/key_exchange.c:560,10'
          Dst:             mutex_create
        - Src:             'crypto/key_exchange.c:561,11'
          Dst:             hashtable_create
        - Src:             'crypto/key_exchange.c:561,11'
          Dst:             hashtable_hash_str
        - Src:             'crypto/key_exchange.c:561,11'
          Dst:             hashtable_equals_str
        - Src:             'crypto/key_exchange.c:562,2'
          Dst:             additional_key_exchange_parser
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          87
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_split
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/aead.c:155,2'
          Dst:             chunk_split
    - functionName:    get_key_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_iv_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_iv_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_icv_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_block_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          185
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_split
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/aead.c:103,2'
          Dst:             chunk_split
    - functionName:    encrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          212
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create_cat
        - chunk_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/aead.c:74,16'
          Dst:             chunk_length
        - Src:             'crypto/aead.c:74,16'
          Dst:             chunk_create_cat
    - functionName:    aead_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          66
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    transform_get_enum_names
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/transform.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          116
      EdgeCount:       48
      CyclomaticComplexity: 25
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'crypto/transform.c:56,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    iv_gen_create_for_alg
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         41
      ICount:          162
      EdgeCount:       81
      CyclomaticComplexity: 42
      functionsReached:
        - iv_gen_null_create
        - iv_gen_rand_create
        - iv_gen_seq_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'crypto/iv/iv_gen.c:28,2'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/iv/iv_gen.c:43,11'
          Dst:             iv_gen_rand_create
        - Src:             'crypto/iv/iv_gen.c:57,11'
          Dst:             iv_gen_seq_create
        - Src:             'crypto/iv/iv_gen.c:59,11'
          Dst:             iv_gen_null_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_rand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_iv
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_rand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_iv
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_rand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iv_gen_rand_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_rand.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_iv
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - chunk_free
        - get_iv
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/iv/iv_gen_seq.c:101,11'
          Dst:             chunk_create
        - Src:             'crypto/iv/iv_gen_seq.c:102,7'
          Dst:             get_iv
        - Src:             'crypto/iv/iv_gen_seq.c:104,3'
          Dst:             chunk_free
    - functionName:    get_iv
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          167
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - htoun64
        - memcpy_noop
        - memset_noop
        - memxor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/iv/iv_gen_seq.c:90,3'
          Dst:             memset_noop
        - Src:             'crypto/iv/iv_gen_seq.c:92,2'
          Dst:             htoun64
        - Src:             'crypto/iv/iv_gen_seq.c:93,2'
          Dst:             memxor
        - Src:             'crypto/iv/iv_gen_seq.c:94,2'
          Dst:             memcpy_noop
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htoun64
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __bswap_64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/byteorder.h:146,9'
          Dst:             __bswap_64
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __bswap_64
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/byteswap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iv_gen_seq_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          97
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_null.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_iv
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_null.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_iv
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_null.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    iv_gen_null_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/iv/iv_gen_null.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kdf_has_fixed_output_length
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/kdfs/kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          32
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'crypto/kdfs/kdf.c:30,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    xof_mgf1_from_hash_algorithm
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/xofs/xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          80
      EdgeCount:       34
      CyclomaticComplexity: 18
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'crypto/xofs/xof.c:41,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_builder_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          118
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_builder_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_factory.c:211,9'
          Dst:             enumerator_create_filter
    - functionName:    remove_builder
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_builder
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          83
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          234
      EdgeCount:       36
      CyclomaticComplexity: 8
      functionsReached:
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    0
      BranchProfiles:
        - Branch String:   'credentials/credential_factory.c:129,2'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/credential_factory.c:155,2'
          Dst:             thread_cleanup_push
        - Src:             'credentials/credential_factory.c:175,2'
          Dst:             thread_cleanup_pop
    - functionName:    credential_factory_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
        - thread_value_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_factory.c:232,2'
          Dst:             linked_list_create
        - Src:             'credentials/credential_factory.c:232,2'
          Dst:             thread_value_create
        - Src:             'credentials/credential_factory.c:232,2'
          Dst:             rwlock_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/cred_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          72
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_encoder
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/cred_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_encoder
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/cred_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cache
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/cred_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          125
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_cache
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/cred_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          101
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clear_cache
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/cred_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/cred_encoding.c:208,4'
          Dst:             chunk_free
    - functionName:    encode
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/cred_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          215
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cred_encoding_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/cred_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          77
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hashtable_create
        - hashtable_equals_ptr
        - hashtable_hash_ptr
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/cred_encoding.c:257,2'
          Dst:             linked_list_create
        - Src:             'credentials/cred_encoding.c:257,2'
          Dst:             rwlock_create
        - Src:             'credentials/cred_encoding.c:273,23'
          Dst:             hashtable_create
        - Src:             'credentials/cred_encoding.c:273,23'
          Dst:             hashtable_hash_ptr
        - Src:             'credentials/cred_encoding.c:273,23'
          Dst:             hashtable_equals_ptr
    - functionName:    cred_encoding_args
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/cred_encoding.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          179
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    21
      BranchProfiles:  []
      Callsites:       []
    - functionName:    signature_schemes_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          121
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    key_type_from_signature_scheme
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          116
      EdgeCount:       56
      CyclomaticComplexity: 29
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'credentials/keys/public_key.c:308,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    signature_schemes_for_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    signature_scheme_to_oid
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          128
      EdgeCount:       54
      CyclomaticComplexity: 28
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'credentials/keys/public_key.c:169,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    signature_scheme_from_oid
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          137
      EdgeCount:       66
      CyclomaticComplexity: 34
      functionsReached: []
      functionUses:    9
      BranchProfiles:
        - Branch String:   'credentials/keys/public_key.c:117,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    public_key_has_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/keys/public_key.c:104,4'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    public_key_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          88
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_equals
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/keys/public_key.c:87,11'
          Dst:             chunk_equals
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             './utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/shared_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/keys/shared_key.c:81,3'
          Dst:             chunk_clear
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/shared_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/shared_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/shared_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    shared_key_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/shared_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rsa_pss_params_build
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/signature_params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          332
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - asn1_algorithmIdentifier
        - asn1_algorithmIdentifier_params
        - asn1_integer
        - asn1_integer_from_uint64
        - asn1_wrap
        - chunk_free
        - hasher_algorithm_to_oid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/keys/signature_params.c:369,9'
          Dst:             hasher_algorithm_to_oid
        - Src:             'credentials/keys/signature_params.c:374,10'
          Dst:             asn1_algorithmIdentifier
        - Src:             'credentials/keys/signature_params.c:380,29'
          Dst:             asn1_integer_from_uint64
        - Src:             'credentials/keys/signature_params.c:380,11'
          Dst:             asn1_integer
        - Src:             'credentials/keys/signature_params.c:385,9'
          Dst:             hasher_algorithm_to_oid
        - Src:             'credentials/keys/signature_params.c:388,4'
          Dst:             chunk_free
        - Src:             'credentials/keys/signature_params.c:392,14'
          Dst:             asn1_algorithmIdentifier
        - Src:             'credentials/keys/signature_params.c:391,9'
          Dst:             asn1_algorithmIdentifier_params
        - Src:             'credentials/keys/signature_params.c:396,3'
          Dst:             chunk_free
        - Src:             'credentials/keys/signature_params.c:397,3'
          Dst:             chunk_free
        - Src:             'credentials/keys/signature_params.c:402,28'
          Dst:             asn1_integer_from_uint64
        - Src:             'credentials/keys/signature_params.c:402,10'
          Dst:             asn1_integer
        - Src:             'credentials/keys/signature_params.c:405,16'
          Dst:             asn1_wrap
        - Src:             'credentials/keys/signature_params.c:406,16'
          Dst:             asn1_wrap
        - Src:             'credentials/keys/signature_params.c:407,16'
          Dst:             asn1_wrap
        - Src:             'credentials/keys/signature_params.c:408,16'
          Dst:             asn1_wrap
        - Src:             'credentials/keys/signature_params.c:404,10'
          Dst:             asn1_wrap
    - functionName:    signature_params_build
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/signature_params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          99
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - asn1_algorithmIdentifier
        - asn1_algorithmIdentifier_params
        - rsa_pss_params_build
        - signature_scheme_to_oid
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/keys/signature_params.c:234,8'
          Dst:             signature_scheme_to_oid
        - Src:             'credentials/keys/signature_params.c:240,4'
          Dst:             rsa_pss_params_build
        - Src:             'credentials/keys/signature_params.c:246,11'
          Dst:             asn1_algorithmIdentifier_params
        - Src:             'credentials/keys/signature_params.c:250,11'
          Dst:             asn1_algorithmIdentifier
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    rsa_pss_params_parse
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/signature_params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          265
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - asn1_parse_algorithmIdentifier
        - asn1_parse_integer_uint64
        - asn1_parser_create
        - hasher_algorithm_from_oid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'credentials/keys/signature_params.c:296,3'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/keys/signature_params.c:289,11'
          Dst:             asn1_parser_create
        - Src:             'credentials/keys/signature_params.c:301,12'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'credentials/keys/signature_params.c:302,21'
          Dst:             hasher_algorithm_from_oid
        - Src:             'credentials/keys/signature_params.c:314,12'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'credentials/keys/signature_params.c:323,12'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'credentials/keys/signature_params.c:324,26'
          Dst:             hasher_algorithm_from_oid
        - Src:             'credentials/keys/signature_params.c:334,34'
          Dst:             asn1_parse_integer_uint64
    - functionName:    signature_params_parse
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/signature_params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          117
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_parse_algorithmIdentifier
        - chunk_equals
        - rsa_pss_params_parse
        - signature_scheme_from_oid
      functionUses:    14
      BranchProfiles:
        - Branch String:   'credentials/keys/signature_params.c:195,2'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/keys/signature_params.c:193,8'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'credentials/keys/signature_params.c:194,18'
          Dst:             signature_scheme_from_oid
        - Src:             'credentials/keys/signature_params.c:203,9'
          Dst:             rsa_pss_params_parse
        - Src:             'credentials/keys/signature_params.c:214,6'
          Dst:             chunk_equals
    - functionName:    signature_params_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/signature_params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    signature_params_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/signature_params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    signature_params_clone
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/signature_params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          105
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    27
      BranchProfiles:
        - Branch String:   'credentials/keys/signature_params.c:135,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    signature_params_comply
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/signature_params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compare_params
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/keys/signature_params.c:115,9'
          Dst:             compare_params
    - functionName:    compare_params
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/signature_params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          176
      EdgeCount:       45
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'credentials/keys/signature_params.c:85,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    signature_params_equal
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/signature_params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compare_params
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/keys/signature_params.c:107,9'
          Dst:             compare_params
    - functionName:    rsa_pss_params_set_salt_len
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/signature_params.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          112
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - hasher_hash_size
      functionUses:    1
      BranchProfiles:
        - Branch String:   'credentials/keys/signature_params.c:37,3'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/keys/signature_params.c:31,14'
          Dst:             hasher_hash_size
    - functionName:    certificate_matches
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/certificates/certificate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          194
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    certificate_is_newer
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/certificates/certificate.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    x509_cdp_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/certificates/x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1437
      functionLinenumberEnd: 1452
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          132
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cache_queue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:1438,2'
          Dst:             cache_queue
    - functionName:    cache_queue
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 534
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          153
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_validator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1429
      functionLinenumberEnd: 1433
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_validator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1421
      functionLinenumberEnd: 1425
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_set
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1413
      functionLinenumberEnd: 1417
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_set
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1405
      functionLinenumberEnd: 1409
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flush_cache
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1396
      functionLinenumberEnd: 1401
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cache_cert
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 528
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          128
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_local_set
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 493
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          149
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    public_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1077
      functionLinenumberEnd: 1089
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          101
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cache_queue
        - remove_local_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:1082,3'
          Dst:             remove_local_set
        - Src:             'credentials/credential_manager.c:1087,2'
          Dst:             cache_queue
    - functionName:    public_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1055
      functionLinenumberEnd: 1073
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          150
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_local_set
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          95
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - linked_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:460,10'
          Dst:             linked_list_create
    - functionName:    create_public_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1094
      functionLinenumberEnd: 1112
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          91
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add_local_set
        - auth_cfg_wrapper_create
        - create_trusted_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:1097,2'
          Dst:             create_trusted_enumerator
        - Src:             'credentials/credential_manager.c:1108,25'
          Dst:             auth_cfg_wrapper_create
        - Src:             'credentials/credential_manager.c:1109,3'
          Dst:             add_local_set
    - functionName:    create_trusted_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1019
      functionLinenumberEnd: 1034
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          68
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:1022,2'
          Dst:             linked_list_create
    - functionName:    trusted_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1006
      functionLinenumberEnd: 1014
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - cache_queue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:1012,2'
          Dst:             cache_queue
    - functionName:    trusted_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 919
      functionLinenumberEnd: 1002
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         49
      ICount:          398
      EdgeCount:       66
      CyclomaticComplexity: 19
      functionsReached:
        - auth_cfg_create
        - check_lifetime
        - create_cert_enumerator
        - get_pretrusted_cert
        - issued_by
        - verify_trust_chain
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:927,15'
          Dst:             auth_cfg_create
        - Src:             'credentials/credential_manager.c:932,22'
          Dst:             create_cert_enumerator
        - Src:             'credentials/credential_manager.c:935,22'
          Dst:             get_pretrusted_cert
        - Src:             'credentials/credential_manager.c:947,8'
          Dst:             issued_by
        - Src:             'credentials/credential_manager.c:949,10'
          Dst:             check_lifetime
        - Src:             'credentials/credential_manager.c:961,5'
          Dst:             verify_trust_chain
        - Src:             'credentials/credential_manager.c:989,7'
          Dst:             verify_trust_chain
    - functionName:    create_cert_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_cert
        - create_sets_enumerator
        - destroy_cert_data
        - enumerator_create_nested
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:268,34'
          Dst:             create_sets_enumerator
        - Src:             'credentials/credential_manager.c:268,9'
          Dst:             enumerator_create_nested
        - Src:             'credentials/credential_manager.c:268,9'
          Dst:             create_cert
        - Src:             'credentials/credential_manager.c:268,9'
          Dst:             destroy_cert_data
    - functionName:    get_pretrusted_cert
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 668
      functionLinenumberEnd: 685
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          70
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - get_cert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:672,12'
          Dst:             get_cert
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 498
      functionLinenumberEnd: 504
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_lifetime
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          137
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - call_hook
      functionUses:    4
      BranchProfiles:
        - Branch String:   'credentials/credential_manager.c:587,2'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/credential_manager.c:603,2'
          Dst:             call_hook
    - functionName:    verify_trust_chain
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 881
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          423
      EdgeCount:       76
      CyclomaticComplexity: 21
      functionsReached:
        - auth_cfg_create
        - call_hook
        - check_certificate
        - check_certificate_online
        - check_lifetime
        - get_issuer_cert
        - get_key_strength
        - issued_by
        - signature_params_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:755,9'
          Dst:             auth_cfg_create
        - Src:             'credentials/credential_manager.c:756,2'
          Dst:             get_key_strength
        - Src:             'credentials/credential_manager.c:762,12'
          Dst:             get_issuer_cert
        - Src:             'credentials/credential_manager.c:766,8'
          Dst:             issued_by
        - Src:             'credentials/credential_manager.c:783,13'
          Dst:             get_issuer_cert
        - Src:             'credentials/credential_manager.c:791,6'
          Dst:             signature_params_destroy
        - Src:             'credentials/credential_manager.c:792,6'
          Dst:             call_hook
        - Src:             'credentials/credential_manager.c:806,5'
          Dst:             call_hook
        - Src:             'credentials/credential_manager.c:809,11'
          Dst:             check_lifetime
        - Src:             'credentials/credential_manager.c:823,8'
          Dst:             check_certificate
        - Src:             'credentials/credential_manager.c:831,4'
          Dst:             get_key_strength
        - Src:             'credentials/credential_manager.c:846,3'
          Dst:             call_hook
        - Src:             'credentials/credential_manager.c:861,10'
          Dst:             check_certificate_online
    - functionName:    _cb_cert_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 886
      functionLinenumberEnd: 890
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_key_strength
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 740
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'credentials/credential_manager.c:727,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_issuer_cert
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 708
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          86
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - create_cert_enumerator
        - issued_by
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:697,15'
          Dst:             create_cert_enumerator
        - Src:             'credentials/credential_manager.c:701,7'
          Dst:             issued_by
    - functionName:    call_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_certificate
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 636
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          126
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - check_lifetime
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:617,7'
          Dst:             check_lifetime
        - Src:             'credentials/credential_manager.c:618,4'
          Dst:             check_lifetime
    - functionName:    check_certificate_online
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 644
      functionLinenumberEnd: 661
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          101
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_cert
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - create_cert_enumerator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:280,15'
          Dst:             create_cert_enumerator
    - functionName:    create_sets_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          136
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_cert
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_cert_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sets_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sets_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          167
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ocsp
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1370
      functionLinenumberEnd: 1391
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          107
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    auth_contains_cacert
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          77
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_private_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 329
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_private
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_private_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_private
        - create_sets_enumerator
        - destroy_private_data
        - enumerator_create_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:356,34'
          Dst:             create_sets_enumerator
        - Src:             'credentials/credential_manager.c:356,9'
          Dst:             enumerator_create_nested
        - Src:             'credentials/credential_manager.c:356,9'
          Dst:             create_private
        - Src:             'credentials/credential_manager.c:356,9'
          Dst:             destroy_private_data
    - functionName:    prefer_cert
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1220
      functionLinenumberEnd: 1237
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_trustchain
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1146
      functionLinenumberEnd: 1189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          165
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - auth_cfg_create
        - auth_contains_cacert
        - get_issuer_cert
        - issued_by
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:1153,15'
          Dst:             auth_cfg_create
        - Src:             'credentials/credential_manager.c:1155,6'
          Dst:             issued_by
        - Src:             'credentials/credential_manager.c:1162,12'
          Dst:             get_issuer_cert
        - Src:             'credentials/credential_manager.c:1167,7'
          Dst:             auth_contains_cacert
        - Src:             'credentials/credential_manager.c:1173,7'
          Dst:             issued_by
    - functionName:    get_private_by_cert
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1196
      functionLinenumberEnd: 1213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_private_by_keyid
        - identification_create_from_encoding
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:1207,12'
          Dst:             identification_create_from_encoding
        - Src:             'credentials/credential_manager.c:1208,14'
          Dst:             get_private_by_keyid
    - functionName:    get_private_by_keyid
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - create_private_enumerator
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:370,15'
          Dst:             create_private_enumerator
    - functionName:    get_private
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1242
      functionLinenumberEnd: 1365
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          486
      EdgeCount:       100
      CyclomaticComplexity: 27
      functionsReached:
        - build_trustchain
        - create_cert_enumerator
        - get_private_by_cert
        - get_private_by_keyid
        - prefer_cert
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:1253,13'
          Dst:             get_private_by_keyid
        - Src:             'credentials/credential_manager.c:1271,15'
          Dst:             get_private_by_cert
        - Src:             'credentials/credential_manager.c:1274,19'
          Dst:             build_trustchain
        - Src:             'credentials/credential_manager.c:1280,8'
          Dst:             prefer_cert
        - Src:             'credentials/credential_manager.c:1304,17'
          Dst:             create_cert_enumerator
        - Src:             'credentials/credential_manager.c:1307,15'
          Dst:             get_private_by_cert
        - Src:             'credentials/credential_manager.c:1310,19'
          Dst:             build_trustchain
        - Src:             'credentials/credential_manager.c:1316,8'
          Dst:             prefer_cert
        - Src:             'credentials/credential_manager.c:1353,16'
          Dst:             create_cert_enumerator
        - Src:             'credentials/credential_manager.c:1356,14'
          Dst:             get_private_by_cert
    - functionName:    get_shared
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          139
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - create_shared_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:423,15'
          Dst:             create_shared_enumerator
    - functionName:    create_shared_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          58
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_sets_enumerator
        - create_shared
        - destroy_shared_data
        - enumerator_create_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:409,34'
          Dst:             create_sets_enumerator
        - Src:             'credentials/credential_manager.c:409,9'
          Dst:             enumerator_create_nested
        - Src:             'credentials/credential_manager.c:409,9'
          Dst:             create_shared
        - Src:             'credentials/credential_manager.c:409,9'
          Dst:             destroy_shared_data
    - functionName:    create_shared
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_shared_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_cdp_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_cdp
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_cdp_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_cdp
        - create_sets_enumerator
        - destroy_cdp_data
        - enumerator_create_nested
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:320,34'
          Dst:             create_sets_enumerator
        - Src:             'credentials/credential_manager.c:320,9'
          Dst:             enumerator_create_nested
        - Src:             'credentials/credential_manager.c:320,9'
          Dst:             create_cdp
        - Src:             'credentials/credential_manager.c:320,9'
          Dst:             destroy_cdp_data
    - functionName:    credential_manager_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/credential_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1458
      functionLinenumberEnd: 1502
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          190
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cert_cache_create
        - linked_list_create
        - mutex_create
        - rwlock_create
        - thread_value_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/credential_manager.c:1461,2'
          Dst:             linked_list_create
        - Src:             'credentials/credential_manager.c:1461,2'
          Dst:             linked_list_create
        - Src:             'credentials/credential_manager.c:1461,2'
          Dst:             linked_list_create
        - Src:             'credentials/credential_manager.c:1461,2'
          Dst:             rwlock_create
        - Src:             'credentials/credential_manager.c:1461,2'
          Dst:             mutex_create
        - Src:             'credentials/credential_manager.c:1494,21'
          Dst:             thread_value_create
        - Src:             'credentials/credential_manager.c:1495,31'
          Dst:             thread_value_create
        - Src:             'credentials/credential_manager.c:1498,17'
          Dst:             cert_cache_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/ocsp_responders.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_responder
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/ocsp_responders.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_responder
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/ocsp_responders.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_status
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/ocsp_responders.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          132
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ocsp_responders_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/ocsp_responders.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/ocsp_responders.c:107,2'
          Dst:             linked_list_create
        - Src:             'credentials/ocsp_responders.c:107,2'
          Dst:             rwlock_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/auth_cfg_wrapper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    wrapper_enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/auth_cfg_wrapper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fetch_cert
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/auth_cfg_wrapper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          163
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/auth_cfg_wrapper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         58
      ICount:          313
      EdgeCount:       79
      CyclomaticComplexity: 23
      functionsReached:
        - fetch_cert
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/auth_cfg_wrapper.c:130,9'
          Dst:             fetch_cert
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/auth_cfg_wrapper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          85
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    auth_cfg_wrapper_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/auth_cfg_wrapper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/cert_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - signature_params_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/cert_cache.c:479,4'
          Dst:             signature_params_destroy
    - functionName:    flush
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/cert_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          225
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - signature_params_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/cert_cache.c:454,5'
          Dst:             signature_params_destroy
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    replace_relation
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/cert_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          93
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - signature_params_clone
        - signature_params_destroy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/cert_cache.c:103,3'
          Dst:             signature_params_destroy
        - Src:             'credentials/sets/cert_cache.c:108,16'
          Dst:             signature_params_clone
    - functionName:    cache
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/cert_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         84
      ICount:          656
      EdgeCount:       114
      CyclomaticComplexity: 32
      functionsReached:
        - certificate_is_newer
        - chunk_equals
        - crl_is_newer
        - random
        - replace_relation
        - sched_yield
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/cert_cache.c:146,7'
          Dst:             crl_is_newer
        - Src:             'credentials/sets/cert_cache.c:148,7'
          Dst:             replace_relation
        - Src:             'credentials/sets/cert_cache.c:180,7'
          Dst:             certificate_is_newer
        - Src:             'credentials/sets/cert_cache.c:187,8'
          Dst:             chunk_equals
        - Src:             'credentials/sets/cert_cache.c:191,8'
          Dst:             replace_relation
        - Src:             'credentials/sets/cert_cache.c:213,5'
          Dst:             replace_relation
        - Src:             'credentials/sets/cert_cache.c:224,12'
          Dst:             random
        - Src:             'credentials/sets/cert_cache.c:235,5'
          Dst:             replace_relation
        - Src:             'credentials/sets/cert_cache.c:241,3'
          Dst:             sched_yield
    - functionName:    sched_yield
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/cert_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          261
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - cache
        - signature_params_clone
        - signature_params_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/cert_cache.c:269,18'
          Dst:             signature_params_clone
        - Src:             'credentials/sets/cert_cache.c:287,3'
          Dst:             cache
        - Src:             'credentials/sets/cert_cache.c:294,4'
          Dst:             signature_params_destroy
    - functionName:    cert_enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/cert_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cert_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/cert_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          392
      EdgeCount:       65
      CyclomaticComplexity: 19
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/cert_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cert_cache_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/cert_cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          108
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/cert_cache.c:516,29'
          Dst:             rwlock_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 874
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          83
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clear_
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:875,2'
          Dst:             clear_
    - functionName:    clear_
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 863
      functionLinenumberEnd: 870
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cdp_destroy
        - linked_list_create
        - reset_certs
        - reset_secrets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:865,2'
          Dst:             cdp_destroy
        - Src:             'credentials/sets/mem_cred.c:866,15'
          Dst:             linked_list_create
        - Src:             'credentials/sets/mem_cred.c:867,2'
          Dst:             reset_certs
        - Src:             'credentials/sets/mem_cred.c:868,2'
          Dst:             reset_secrets
    - functionName:    cdp_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 677
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reset_certs
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:761,18'
          Dst:             linked_list_create
        - Src:             'credentials/sets/mem_cred.c:762,20'
          Dst:             linked_list_create
    - functionName:    reset_secrets
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 799
      functionLinenumberEnd: 804
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - shared_entry_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:801,2'
          Dst:             shared_entry_destroy
        - Src:             'credentials/sets/mem_cred.c:802,15'
          Dst:             linked_list_create
        - Src:             'credentials/sets/mem_cred.c:803,17'
          Dst:             linked_list_create
    - functionName:    shared_entry_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clear_secrets
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 859
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - reset_secrets
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:857,2'
          Dst:             reset_secrets
    - functionName:    replace_secrets
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 808
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          251
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - reset_secrets
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:816,2'
          Dst:             reset_secrets
    - functionName:    copy_certs
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 766
      functionLinenumberEnd: 784
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    replace_certs
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 796
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - copy_certs
        - reset_certs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:792,2'
          Dst:             reset_certs
        - Src:             'credentials/sets/mem_cred.c:793,2'
          Dst:             copy_certs
        - Src:             'credentials/sets/mem_cred.c:794,2'
          Dst:             copy_certs
    - functionName:    add_cdp
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 686
      functionLinenumberEnd: 697
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          81
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:689,2'
          Dst:             strdup
    - functionName:    _cb_unique_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          94
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_unique_shared_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 656
      functionLinenumberEnd: 661
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:658,9'
          Dst:             enumerator_create_filter
    - functionName:    remove_shared_unique
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 605
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          107
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - shared_entry_destroy
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:619,7'
          Dst:             streq
        - Src:             'credentials/sets/mem_cred.c:622,4'
          Dst:             shared_entry_destroy
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    shared_entry_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 406
      functionLinenumberEnd: 438
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          224
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:415,7'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    strdupnull
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:79,13'
          Dst:             strdup
    - functionName:    add_shared_unique
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          172
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - shared_entry_destroy
        - shared_entry_equals
        - strdupnull
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:547,2'
          Dst:             strdupnull
        - Src:             'credentials/sets/mem_cred.c:560,14'
          Dst:             streq
        - Src:             'credentials/sets/mem_cred.c:561,28'
          Dst:             shared_entry_equals
        - Src:             'credentials/sets/mem_cred.c:564,4'
          Dst:             shared_entry_destroy
    - functionName:    add_shared_list
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 577
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_shared_unique
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:578,2'
          Dst:             add_shared_unique
    - functionName:    add_shared
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          85
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - add_shared_list
        - linked_list_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:585,26'
          Dst:             linked_list_create
        - Src:             'credentials/sets/mem_cred.c:600,2'
          Dst:             add_shared_list
    - functionName:    remove_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          118
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 329
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          119
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_crl
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          351
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - chunk_equals
        - crl_is_newer
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:213,8'
          Dst:             chunk_equals
        - Src:             'credentials/sets/mem_cred.c:235,11'
          Dst:             chunk_equals
        - Src:             'credentials/sets/mem_cred.c:245,10'
          Dst:             chunk_equals
        - Src:             'credentials/sets/mem_cred.c:251,11'
          Dst:             crl_is_newer
    - functionName:    get_cert_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_certificate_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_cert_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_cert_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:173,9'
          Dst:             add_cert_internal
    - functionName:    add_cert_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          123
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_cert
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_cert_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:166,26'
          Dst:             add_cert_internal
    - functionName:    _cb_cdp_data_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 713
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_cdp_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          133
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_cdp_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          66
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:750,9'
          Dst:             enumerator_create_filter
    - functionName:    _cb_shared_data_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_owner
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_shared_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          273
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - has_owner
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:498,15'
          Dst:             has_owner
        - Src:             'credentials/sets/mem_cred.c:502,18'
          Dst:             has_owner
    - functionName:    create_shared_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 537
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          71
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:535,9'
          Dst:             enumerator_create_filter
    - functionName:    _cb_cert_data_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_certs_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - certificate_matches
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:92,7'
          Dst:             certificate_matches
    - functionName:    create_cert_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          98
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:123,9'
          Dst:             enumerator_create_filter
    - functionName:    _cb_key_data_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_key_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          151
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_private_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          66
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:323,9'
          Dst:             enumerator_create_filter
    - functionName:    mem_cred_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/mem_cred.c'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 927
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          108
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/sets/mem_cred.c:892,2'
          Dst:             rwlock_create
        - Src:             'credentials/sets/mem_cred.c:892,2'
          Dst:             linked_list_create
        - Src:             'credentials/sets/mem_cred.c:892,2'
          Dst:             linked_list_create
        - Src:             'credentials/sets/mem_cred.c:892,2'
          Dst:             linked_list_create
        - Src:             'credentials/sets/mem_cred.c:892,2'
          Dst:             linked_list_create
        - Src:             'credentials/sets/mem_cred.c:892,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1456
      functionLinenumberEnd: 1460
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy
        - purge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/auth_cfg.c:1457,2'
          Dst:             purge
        - Src:             'credentials/auth_cfg.c:1458,2'
          Dst:             array_destroy
    - functionName:    purge
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1365
      functionLinenumberEnd: 1381
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_compress
        - array_create_enumerator
        - array_remove_at
        - destroy_entry_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/auth_cfg.c:1369,15'
          Dst:             array_create_enumerator
        - Src:             'credentials/auth_cfg.c:1374,4'
          Dst:             destroy_entry_value
        - Src:             'credentials/auth_cfg.c:1375,4'
          Dst:             array_remove_at
        - Src:             'credentials/auth_cfg.c:1380,2'
          Dst:             array_compress
    - functionName:    destroy_entry_value
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         39
      ICount:          176
      EdgeCount:       77
      CyclomaticComplexity: 40
      functionsReached:
        - signature_params_destroy
      functionUses:    2
      BranchProfiles:
        - Branch String:   'credentials/auth_cfg.c:357,2'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/auth_cfg.c:393,4'
          Dst:             signature_params_destroy
    - functionName:    clone_
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1385
      functionLinenumberEnd: 1451
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         42
      ICount:          238
      EdgeCount:       42
      CyclomaticComplexity: 2
      functionsReached:
        - auth_cfg_create
        - create_enumerator
        - signature_params_clone
        - strdup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'credentials/auth_cfg.c:1396,3'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/auth_cfg.c:1391,10'
          Dst:             auth_cfg_create
        - Src:             'credentials/auth_cfg.c:1393,15'
          Dst:             create_enumerator
        - Src:             'credentials/auth_cfg.c:1426,29'
          Dst:             strdup
        - Src:             'credentials/auth_cfg.c:1443,29'
          Dst:             signature_params_clone
    - functionName:    auth_cfg_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1466
      functionLinenumberEnd: 1486
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          56
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/auth_cfg.c:1469,2'
          Dst:             array_create
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_enumerator
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/auth_cfg.c:223,2'
          Dst:             array_create_enumerator
    - functionName:    entry_enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          169
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - is_multi_value_rule
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/auth_cfg.c:192,8'
          Dst:             is_multi_value_rule
    - functionName:    is_multi_value_rule
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          137
      EdgeCount:       66
      CyclomaticComplexity: 34
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'credentials/auth_cfg.c:103,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    add
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 565
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_insert
        - init_entry
        - is_multi_value_rule
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/auth_cfg.c:553,2'
          Dst:             init_entry
        - Src:             'credentials/auth_cfg.c:556,6'
          Dst:             is_multi_value_rule
        - Src:             'credentials/auth_cfg.c:558,3'
          Dst:             array_insert
        - Src:             'credentials/auth_cfg.c:563,3'
          Dst:             array_insert
    - functionName:    replace
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 467
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          230
      EdgeCount:       47
      CyclomaticComplexity: 4
      functionsReached:
        - destroy_entry_value
      functionUses:    1
      BranchProfiles:
        - Branch String:   'credentials/auth_cfg.c:425,3'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/auth_cfg.c:423,3'
          Dst:             destroy_entry_value
    - functionName:    merge
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1222
      functionLinenumberEnd: 1307
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          248
      EdgeCount:       53
      CyclomaticComplexity: 5
      functionsReached:
        - add
        - array_compress
        - array_insert
        - array_remove
        - create_enumerator
        - signature_params_clone
        - strdup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'credentials/auth_cfg.c:1237,4'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/auth_cfg.c:1234,16'
          Dst:             create_enumerator
        - Src:             'credentials/auth_cfg.c:1249,6'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:1262,6'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:1274,6'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:1280,22'
          Dst:             signature_params_clone
        - Src:             'credentials/auth_cfg.c:1280,6'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:1288,22'
          Dst:             strdup
        - Src:             'credentials/auth_cfg.c:1288,6'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:1301,10'
          Dst:             array_remove
        - Src:             'credentials/auth_cfg.c:1303,4'
          Dst:             array_insert
        - Src:             'credentials/auth_cfg.c:1305,3'
          Dst:             array_compress
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1353
      functionLinenumberEnd: 1361
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - auth_cfg_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/auth_cfg.c:1354,6'
          Dst:             auth_cfg_equals
        - Src:             'credentials/auth_cfg.c:1358,10'
          Dst:             auth_cfg_equals
    - functionName:    auth_cfg_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1313
      functionLinenumberEnd: 1346
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          127
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - array_create_enumerator
        - entry_equals
        - is_multi_value_rule
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/auth_cfg.c:1320,7'
          Dst:             array_create_enumerator
        - Src:             'credentials/auth_cfg.c:1325,8'
          Dst:             array_create_enumerator
        - Src:             'credentials/auth_cfg.c:1328,8'
          Dst:             entry_equals
        - Src:             'credentials/auth_cfg.c:1333,38'
          Dst:             is_multi_value_rule
    - functionName:    entry_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          226
      EdgeCount:       42
      CyclomaticComplexity: 2
      functionsReached:
        - signature_params_equal
        - streq
      functionUses:    1
      BranchProfiles:
        - Branch String:   'credentials/auth_cfg.c:291,2'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/auth_cfg.c:337,11'
          Dst:             signature_params_equal
        - Src:             'credentials/auth_cfg.c:344,11'
          Dst:             streq
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    complies
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 829
      functionLinenumberEnd: 1216
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         229
      ICount:          1103
      EdgeCount:       292
      CyclomaticComplexity: 65
      functionsReached:
        - complies_scheme
        - create_enumerator
        - get
        - streq
      functionUses:    0
      BranchProfiles:
        - Branch String:   'credentials/auth_cfg.c:843,3'
          Branch Sides:    []
        - Branch String:   'credentials/auth_cfg.c:918,7'
          Branch Sides:    []
        - Branch String:   'credentials/auth_cfg.c:1152,4'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/auth_cfg.c:854,10'
          Dst:             create_enumerator
        - Src:             'credentials/auth_cfg.c:872,10'
          Dst:             create_enumerator
        - Src:             'credentials/auth_cfg.c:891,10'
          Dst:             create_enumerator
        - Src:             'credentials/auth_cfg.c:908,9'
          Dst:             get
        - Src:             'credentials/auth_cfg.c:913,10'
          Dst:             create_enumerator
        - Src:             'credentials/auth_cfg.c:960,11'
          Dst:             get
        - Src:             'credentials/auth_cfg.c:968,14'
          Dst:             get
        - Src:             'credentials/auth_cfg.c:1008,37'
          Dst:             get
        - Src:             'credentials/auth_cfg.c:1022,40'
          Dst:             get
        - Src:             'credentials/auth_cfg.c:1038,40'
          Dst:             get
        - Src:             'credentials/auth_cfg.c:1056,10'
          Dst:             create_enumerator
        - Src:             'credentials/auth_cfg.c:1090,10'
          Dst:             create_enumerator
        - Src:             'credentials/auth_cfg.c:1093,22'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:1133,13'
          Dst:             complies_scheme
        - Src:             'credentials/auth_cfg.c:1138,13'
          Dst:             complies_scheme
        - Src:             'credentials/auth_cfg.c:1148,8'
          Dst:             create_enumerator
    - functionName:    get
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         58
      ICount:          246
      EdgeCount:       64
      CyclomaticComplexity: 8
      functionsReached:
        - create_enumerator
      functionUses:    6
      BranchProfiles:
        - Branch String:   'credentials/auth_cfg.c:502,2'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/auth_cfg.c:477,15'
          Dst:             create_enumerator
    - functionName:    complies_scheme
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 824
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          134
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - create_enumerator
        - signature_params_comply
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/auth_cfg.c:794,7'
          Dst:             create_enumerator
        - Src:             'credentials/auth_cfg.c:804,6'
          Dst:             signature_params_comply
    - functionName:    add_pubkey_constraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 781
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         110
      ICount:          539
      EdgeCount:       149
      CyclomaticComplexity: 41
      functionsReached:
        - add
        - atoi
        - create_enumerator
        - create_rsa_pss_constraint
        - enumerator_create_token
        - signature_params_clone
        - streq
        - strlen
        - strpfx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/auth_cfg.c:608,15'
          Dst:             enumerator_create_token
        - Src:             'credentials/auth_cfg.c:637,15'
          Dst:             atoi
        - Src:             'credentials/auth_cfg.c:640,5'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:648,7'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:648,30'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:655,7'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:655,34'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:662,7'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:662,32'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:669,7'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:669,34'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:675,7'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:675,32'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:681,7'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:681,33'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:687,20'
          Dst:             strpfx
        - Src:             'credentials/auth_cfg.c:692,38'
          Dst:             strlen
        - Src:             'credentials/auth_cfg.c:692,20'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:694,13'
          Dst:             create_rsa_pss_constraint
        - Src:             'credentials/auth_cfg.c:697,9'
          Dst:             strpfx
        - Src:             'credentials/auth_cfg.c:699,6'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:704,6'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:716,15'
          Dst:             create_rsa_pss_constraint
        - Src:             'credentials/auth_cfg.c:719,11'
          Dst:             strpfx
        - Src:             'credentials/auth_cfg.c:721,8'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:726,8'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:734,9'
          Dst:             streq
        - Src:             'credentials/auth_cfg.c:742,11'
          Dst:             strpfx
        - Src:             'credentials/auth_cfg.c:744,8'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:749,8'
          Dst:             add
        - Src:             'credentials/auth_cfg.c:770,16'
          Dst:             create_enumerator
        - Src:             'credentials/auth_cfg.c:776,6'
          Dst:             signature_params_clone
        - Src:             'credentials/auth_cfg.c:775,5'
          Dst:             add
    - functionName:    strpfx
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - strneq
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:47,27'
          Dst:             strlen
        - Src:             './utils/utils/string.h:47,9'
          Dst:             strneq
    - functionName:    create_rsa_pss_constraint
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - enum_from_name_as_int
        - rsa_pss_params_set_salt_len
        - signature_params_clone
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/auth_cfg.c:575,6'
          Dst:             enum_from_name_as_int
        - Src:             'credentials/auth_cfg.c:586,3'
          Dst:             rsa_pss_params_set_salt_len
        - Src:             'credentials/auth_cfg.c:587,12'
          Dst:             signature_params_clone
    - functionName:    strneq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:39,32'
          Dst:             strncmp
    - functionName:    init_entry
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/auth_cfg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          201
      EdgeCount:       40
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'credentials/auth_cfg.c:240,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/database/database_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_database
      functionSourceFile: '/src/strongswan/src/libstrongswan/database/database_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_database
      functionSourceFile: '/src/strongswan/src/libstrongswan/database/database_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create
      functionSourceFile: '/src/strongswan/src/libstrongswan/database/database_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          91
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    database_factory_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/database/database_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - mutex_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'database/database_factory.c:98,2'
          Dst:             linked_list_create
        - Src:             'database/database_factory.c:98,2'
          Dst:             mutex_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/fetcher/fetcher_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - entry_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fetcher/fetcher_manager.c:193,2'
          Dst:             entry_destroy
    - functionName:    entry_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/fetcher/fetcher_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_fetcher
      functionSourceFile: '/src/strongswan/src/libstrongswan/fetcher/fetcher_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - entry_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fetcher/fetcher_manager.c:183,4'
          Dst:             entry_destroy
    - functionName:    add_fetcher
      functionSourceFile: '/src/strongswan/src/libstrongswan/fetcher/fetcher_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          68
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'fetcher/fetcher_manager.c:161,2'
          Dst:             strdup
    - functionName:    fetch
      functionSourceFile: '/src/strongswan/src/libstrongswan/fetcher/fetcher_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          472
      EdgeCount:       74
      CyclomaticComplexity: 17
      functionsReached:
        - strlen
        - strncasecmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'fetcher/fetcher_manager.c:95,4'
          Branch Sides:    []
      Callsites:
        - Src:             'fetcher/fetcher_manager.c:81,36'
          Dst:             strlen
        - Src:             'fetcher/fetcher_manager.c:81,7'
          Dst:             strncasecmp
    - functionName:    fetcher_manager_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/fetcher/fetcher_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - rwlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'fetcher/fetcher_manager.c:205,2'
          Dst:             linked_list_create
        - Src:             'fetcher/fetcher_manager.c:205,2'
          Dst:             rwlock_create
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    eap_vendor_type_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/eap/eap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          166
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - eap_type_from_string
        - enumerator_create_token
        - streq
        - strtoul
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap/eap.c:149,15'
          Dst:             enumerator_create_token
        - Src:             'eap/eap.c:154,8'
          Dst:             streq
        - Src:             'eap/eap.c:158,11'
          Dst:             eap_type_from_string
        - Src:             'eap/eap.c:161,5'
          Dst:             __errno_location
        - Src:             'eap/eap.c:162,12'
          Dst:             strtoul
        - Src:             'eap/eap.c:163,25'
          Dst:             __errno_location
        - Src:             'eap/eap.c:171,3'
          Dst:             __errno_location
        - Src:             'eap/eap.c:172,12'
          Dst:             strtoul
        - Src:             'eap/eap.c:173,23'
          Dst:             __errno_location
    - functionName:    eap_type_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/eap/eap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcaseeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'eap/eap.c:129,7'
          Dst:             strcaseeq
    - functionName:    strcaseeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:55,32'
          Dst:             strcasecmp
    - functionName:    allocate_unique_if_id
      functionSourceFile: '/src/strongswan/src/libstrongswan/ipsec/ipsec_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ref_get_nonzero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ipsec/ipsec_types.c:262,10'
          Dst:             ref_get_nonzero
        - Src:             'ipsec/ipsec_types.c:265,11'
          Dst:             ref_get_nonzero
    - functionName:    ref_get_nonzero
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/atomics.h'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_unique_mark
      functionSourceFile: '/src/strongswan/src/libstrongswan/ipsec/ipsec_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ref_get_nonzero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'ipsec/ipsec_types.c:178,6'
          Dst:             ref_get_nonzero
        - Src:             'ipsec/ipsec_types.c:181,7'
          Dst:             ref_get_nonzero
    - functionName:    strncaseeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:63,32'
          Dst:             strncasecmp
    - functionName:    allocate_unique_if_ids
      functionSourceFile: '/src/strongswan/src/libstrongswan/ipsec/ipsec_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          170
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - allocate_unique_if_id
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'ipsec/ipsec_types.c:284,12'
          Dst:             allocate_unique_if_id
        - Src:             'ipsec/ipsec_types.c:288,23'
          Dst:             allocate_unique_if_id
        - Src:             'ipsec/ipsec_types.c:292,24'
          Dst:             allocate_unique_if_id
    - functionName:    if_id_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/ipsec/ipsec_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          86
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - strcasepfx
        - strtoul
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ipsec/ipsec_types.c:223,6'
          Dst:             strcasepfx
        - Src:             'ipsec/ipsec_types.c:226,7'
          Dst:             strcasepfx
        - Src:             'ipsec/ipsec_types.c:243,12'
          Dst:             strtoul
    - functionName:    strcasepfx
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - strncaseeq
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:71,31'
          Dst:             strlen
        - Src:             './utils/utils/string.h:71,9'
          Dst:             strncaseeq
    - functionName:    allocate_unique_marks
      functionSourceFile: '/src/strongswan/src/libstrongswan/ipsec/ipsec_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          170
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - allocate_unique_mark
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ipsec/ipsec_types.c:199,11'
          Dst:             allocate_unique_mark
        - Src:             'ipsec/ipsec_types.c:203,23'
          Dst:             allocate_unique_mark
        - Src:             'ipsec/ipsec_types.c:207,24'
          Dst:             allocate_unique_mark
    - functionName:    mark_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/ipsec/ipsec_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          227
      EdgeCount:       58
      CyclomaticComplexity: 17
      functionsReached:
        - strcasepfx
        - strtoul
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'ipsec/ipsec_types.c:99,6'
          Dst:             strcasepfx
        - Src:             'ipsec/ipsec_types.c:107,7'
          Dst:             strcasepfx
        - Src:             'ipsec/ipsec_types.c:122,11'
          Dst:             strcasepfx
        - Src:             'ipsec/ipsec_types.c:142,17'
          Dst:             strtoul
        - Src:             'ipsec/ipsec_types.c:151,16'
          Dst:             strtoul
    - functionName:    ipsec_sa_cfg_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/ipsec/ipsec_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          149
      EdgeCount:       25
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipsec_sa_cfg_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/ipsec/ipsec_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          154
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
        - chunk_hash_inc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'ipsec/ipsec_types.c:61,24'
          Dst:             chunk_create
        - Src:             'ipsec/ipsec_types.c:62,19'
          Dst:             chunk_create
        - Src:             'ipsec/ipsec_types.c:63,19'
          Dst:             chunk_create
        - Src:             'ipsec/ipsec_types.c:64,19'
          Dst:             chunk_create
        - Src:             'ipsec/ipsec_types.c:65,19'
          Dst:             chunk_create
        - Src:             'ipsec/ipsec_types.c:66,19'
          Dst:             chunk_create
        - Src:             'ipsec/ipsec_types.c:67,19'
          Dst:             chunk_create
        - Src:             'ipsec/ipsec_types.c:68,19'
          Dst:             chunk_create
        - Src:             'ipsec/ipsec_types.c:69,16'
          Dst:             chunk_create
        - Src:             'ipsec/ipsec_types.c:69,5'
          Dst:             chunk_hash
        - Src:             'ipsec/ipsec_types.c:68,4'
          Dst:             chunk_hash_inc
        - Src:             'ipsec/ipsec_types.c:67,4'
          Dst:             chunk_hash_inc
        - Src:             'ipsec/ipsec_types.c:66,4'
          Dst:             chunk_hash_inc
        - Src:             'ipsec/ipsec_types.c:65,4'
          Dst:             chunk_hash_inc
        - Src:             'ipsec/ipsec_types.c:64,4'
          Dst:             chunk_hash_inc
        - Src:             'ipsec/ipsec_types.c:63,4'
          Dst:             chunk_hash_inc
        - Src:             'ipsec/ipsec_types.c:62,4'
          Dst:             chunk_hash_inc
        - Src:             'ipsec/ipsec_types.c:61,9'
          Dst:             chunk_hash_inc
    - functionName:    destroy_entry
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_entry
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_factory.c:98,2'
          Dst:             destroy_entry
    - functionName:    create
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    register_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_entry
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_factory.c:87,2'
          Dst:             strdup
        - Src:             'metadata/metadata_factory.c:92,2'
          Dst:             destroy_entry
    - functionName:    metadata_factory_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_factory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashtable_create
        - hashtable_equals_str
        - hashtable_hash_str
        - metadata_create_int
        - register_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_factory.c:106,2'
          Dst:             hashtable_create
        - Src:             'metadata/metadata_factory.c:106,2'
          Dst:             hashtable_hash_str
        - Src:             'metadata/metadata_factory.c:106,2'
          Dst:             hashtable_equals_str
        - Src:             'metadata/metadata_factory.c:116,2'
          Dst:             register_type
        - Src:             'metadata/metadata_factory.c:116,2'
          Dst:             metadata_create_int
        - Src:             'metadata/metadata_factory.c:117,2'
          Dst:             register_type
        - Src:             'metadata/metadata_factory.c:117,2'
          Dst:             metadata_create_int
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          105
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_int.c:86,6'
          Dst:             streq
        - Src:             'metadata/metadata_int.c:93,11'
          Dst:             streq
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          112
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_int.c:64,6'
          Dst:             streq
        - Src:             'metadata/metadata_int.c:71,11'
          Dst:             streq
    - functionName:    clone_
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - create_generic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_int.c:57,9'
          Dst:             create_generic
    - functionName:    create_generic
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    metadata_create_int
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_int.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          104
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - create_generic
        - streq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_int.c:137,6'
          Dst:             streq
        - Src:             'metadata/metadata_int.c:142,10'
          Dst:             create_generic
        - Src:             'metadata/metadata_int.c:144,11'
          Dst:             streq
        - Src:             'metadata/metadata_int.c:149,10'
          Dst:             create_generic
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_port
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          47
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - htons
      functionUses:    0
      BranchProfiles:
        - Branch String:   'networking/host.c:220,2'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host.c:224,30'
          Dst:             htons
        - Src:             'networking/host.c:229,31'
          Dst:             htons
    - functionName:    get_port
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - ntohs
      functionUses:    0
      BranchProfiles:
        - Branch String:   'networking/host.c:200,2'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host.c:204,11'
          Dst:             ntohs
        - Src:             'networking/host.c:208,11'
          Dst:             ntohs
    - functionName:    get_address
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          45
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'networking/host.c:169,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_family
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_sockaddr_len
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_sockaddr
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clone_
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host.c:245,2'
          Dst:             memcpy_noop
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          74
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - ip_equals
      functionUses:    1
      BranchProfiles:
        - Branch String:   'networking/host.c:289,2'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host.c:284,7'
          Dst:             ip_equals
    - functionName:    ip_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - is_anyaddr
        - memeq
      functionUses:    2
      BranchProfiles:
        - Branch String:   'networking/host.c:261,2'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host.c:258,11'
          Dst:             is_anyaddr
        - Src:             'networking/host.c:258,31'
          Dst:             is_anyaddr
        - Src:             'networking/host.c:265,11'
          Dst:             memeq
        - Src:             'networking/host.c:270,11'
          Dst:             memeq
    - functionName:    is_anyaddr
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - memeq
      functionUses:    3
      BranchProfiles:
        - Branch String:   'networking/host.c:87,2'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host.c:91,11'
          Dst:             memeq
        - Src:             'networking/host.c:95,11'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    host_create_any
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 703
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - host_create_empty
        - memset_noop
        - update_sa_len
      functionUses:    16
      BranchProfiles:
        - Branch String:   'networking/host.c:684,2'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host.c:679,25'
          Dst:             host_create_empty
        - Src:             'networking/host.c:681,2'
          Dst:             memset_noop
        - Src:             'networking/host.c:689,4'
          Dst:             update_sa_len
        - Src:             'networking/host.c:695,4'
          Dst:             update_sa_len
    - functionName:    host_create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update_sa_len
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    host_create_netmask
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 627
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          152
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - host_create_empty
        - memset_noop
        - update_sa_len
      functionUses:    0
      BranchProfiles:
        - Branch String:   'networking/host.c:632,2'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host.c:639,11'
          Dst:             host_create_empty
        - Src:             'networking/host.c:649,11'
          Dst:             host_create_empty
        - Src:             'networking/host.c:658,2'
          Dst:             memset_noop
        - Src:             'networking/host.c:660,2'
          Dst:             update_sa_len
        - Src:             'networking/host.c:665,2'
          Dst:             memset_noop
        - Src:             'networking/host.c:668,3'
          Dst:             memset_noop
    - functionName:    host_create_from_subnet
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 621
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          196
      EdgeCount:       44
      CyclomaticComplexity: 14
      functionsReached:
        - __errno_location
        - host_create_from_string
        - strchr
        - strncpy
        - strtol
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host.c:580,8'
          Dst:             strchr
        - Src:             'networking/host.c:587,3'
          Dst:             strncpy
        - Src:             'networking/host.c:589,3'
          Dst:             __errno_location
        - Src:             'networking/host.c:590,13'
          Dst:             strtol
        - Src:             'networking/host.c:591,7'
          Dst:             __errno_location
        - Src:             'networking/host.c:595,9'
          Dst:             host_create_from_string
        - Src:             'networking/host.c:608,8'
          Dst:             host_create_from_string
    - functionName:    host_create_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - host_create_from_string_and_family
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host.c:423,9'
          Dst:             host_create_from_string_and_family
    - functionName:    host_create_from_string_and_family
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          219
      EdgeCount:       61
      CyclomaticComplexity: 16
      functionsReached:
        - host_create_any_port
        - host_create_from_sockaddr
        - htons
        - inet_pton
        - memset_noop
        - strchr
        - streq
      functionUses:    4
      BranchProfiles:
        - Branch String:   'networking/host.c:382,2'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host.c:364,6'
          Dst:             streq
        - Src:             'networking/host.c:366,10'
          Dst:             host_create_any_port
        - Src:             'networking/host.c:370,7'
          Dst:             streq
        - Src:             'networking/host.c:370,33'
          Dst:             streq
        - Src:             'networking/host.c:372,11'
          Dst:             host_create_any_port
        - Src:             'networking/host.c:377,7'
          Dst:             streq
        - Src:             'networking/host.c:377,33'
          Dst:             streq
        - Src:             'networking/host.c:379,11'
          Dst:             host_create_any_port
        - Src:             'networking/host.c:385,8'
          Dst:             strchr
        - Src:             'networking/host.c:391,4'
          Dst:             memset_noop
        - Src:             'networking/host.c:392,8'
          Dst:             inet_pton
        - Src:             'networking/host.c:396,24'
          Dst:             htons
        - Src:             'networking/host.c:398,11'
          Dst:             host_create_from_sockaddr
        - Src:             'networking/host.c:400,8'
          Dst:             strchr
        - Src:             'networking/host.c:405,4'
          Dst:             memset_noop
        - Src:             'networking/host.c:406,8'
          Dst:             inet_pton
        - Src:             'networking/host.c:410,23'
          Dst:             htons
        - Src:             'networking/host.c:412,11'
          Dst:             host_create_from_sockaddr
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    host_create_any_port
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - host_create_any
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host.c:344,9'
          Dst:             host_create_any
    - functionName:    inet_pton
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    host_create_from_sockaddr
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - host_create_empty
        - memcpy_noop
        - update_sa_len
      functionUses:    7
      BranchProfiles:
        - Branch String:   'networking/host.c:433,2'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host.c:431,25'
          Dst:             host_create_empty
        - Src:             'networking/host.c:437,4'
          Dst:             memcpy_noop
        - Src:             'networking/host.c:440,4'
          Dst:             update_sa_len
        - Src:             'networking/host.c:445,4'
          Dst:             memcpy_noop
        - Src:             'networking/host.c:448,4'
          Dst:             update_sa_len
    - functionName:    host_create_from_range
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          156
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - host_create_from_string
        - host_create_from_string_and_family
        - strchr
        - strndup
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host.c:542,8'
          Dst:             strchr
        - Src:             'networking/host.c:551,8'
          Dst:             host_create_from_string
        - Src:             'networking/host.c:560,8'
          Dst:             strndup
        - Src:             'networking/host.c:561,10'
          Dst:             host_create_from_string_and_family
    - functionName:    host_create_from_chunk
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          150
      EdgeCount:       41
      CyclomaticComplexity: 22
      functionsReached:
        - host_create_empty
        - htons
        - memcpy_noop
        - update_sa_len
      functionUses:    21
      BranchProfiles:
        - Branch String:   'networking/host.c:484,2'
          Branch Sides:    []
        - Branch String:   'networking/host.c:501,4'
          Branch Sides:    []
        - Branch String:   'networking/host.c:518,2'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host.c:516,9'
          Dst:             host_create_empty
        - Src:             'networking/host.c:521,4'
          Dst:             memcpy_noop
        - Src:             'networking/host.c:522,30'
          Dst:             htons
        - Src:             'networking/host.c:526,4'
          Dst:             memcpy_noop
        - Src:             'networking/host.c:527,31'
          Dst:             htons
        - Src:             'networking/host.c:531,2'
          Dst:             update_sa_len
    - functionName:    host_create_from_dns
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          86
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - host_create_from_string_and_family
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host.c:465,9'
          Dst:             host_create_from_string_and_family
    - functionName:    host_printf_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          208
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - inet_ntop
        - is_anyaddr
        - ntohs
        - print_in_hook
        - snprintf
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'networking/host.c:131,3'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host.c:115,3'
          Dst:             snprintf
        - Src:             'networking/host.c:117,11'
          Dst:             is_anyaddr
        - Src:             'networking/host.c:119,3'
          Dst:             snprintf
        - Src:             'networking/host.c:139,9'
          Dst:             inet_ntop
        - Src:             'networking/host.c:142,6'
          Dst:             snprintf
        - Src:             'networking/host.c:147,12'
          Dst:             strlen
        - Src:             'networking/host.c:149,17'
          Dst:             ntohs
        - Src:             'networking/host.c:148,6'
          Dst:             snprintf
        - Src:             'networking/host.c:153,5'
          Dst:             snprintf
        - Src:             'networking/host.c:159,10'
          Dst:             print_in_hook
        - Src:             'networking/host.c:161,9'
          Dst:             print_in_hook
    - functionName:    inet_ntop
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host_resolver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          112
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flush
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host_resolver.c:339,2'
          Dst:             flush
    - functionName:    flush
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host_resolver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          124
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - linked_list_create
        - query_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host_resolver.c:326,2'
          Dst:             query_destroy
        - Src:             'networking/host_resolver.c:327,16'
          Dst:             linked_list_create
    - functionName:    query_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host_resolver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    query_signal_and_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host_resolver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - query_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host_resolver.c:137,2'
          Dst:             query_destroy
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resolve_hosts
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host_resolver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          287
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - freeaddrinfo
        - getaddrinfo
        - host_create_from_sockaddr
        - memset_noop
        - query_destroy
        - query_signal_and_destroy
        - thread_cancelability
        - thread_cleanup_pop
        - thread_cleanup_push
        - thread_current
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host_resolver.c:168,2'
          Dst:             thread_cancelability
        - Src:             'networking/host_resolver.c:190,24'
          Dst:             thread_current
        - Src:             'networking/host_resolver.c:202,3'
          Dst:             memset_noop
        - Src:             'networking/host_resolver.c:206,3'
          Dst:             thread_cleanup_push
        - Src:             'networking/host_resolver.c:206,3'
          Dst:             query_signal_and_destroy
        - Src:             'networking/host_resolver.c:207,9'
          Dst:             thread_cancelability
        - Src:             'networking/host_resolver.c:208,11'
          Dst:             getaddrinfo
        - Src:             'networking/host_resolver.c:209,3'
          Dst:             thread_cancelability
        - Src:             'networking/host_resolver.c:210,3'
          Dst:             thread_cleanup_pop
        - Src:             'networking/host_resolver.c:221,20'
          Dst:             host_create_from_sockaddr
        - Src:             'networking/host_resolver.c:222,4'
          Dst:             freeaddrinfo
        - Src:             'networking/host_resolver.c:227,3'
          Dst:             query_destroy
    - functionName:    getaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    freeaddrinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resolve
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host_resolver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          365
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - condvar_create
        - inet_pton
        - query_destroy
        - resolve_hosts
        - strchr
        - strdup
        - thread_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'networking/host_resolver.c:242,2'
          Branch Sides:    []
      Callsites:
        - Src:             'networking/host_resolver.c:246,8'
          Dst:             strchr
        - Src:             'networking/host_resolver.c:253,8'
          Dst:             inet_pton
        - Src:             'networking/host_resolver.c:268,3'
          Dst:             strdup
        - Src:             'networking/host_resolver.c:268,3'
          Dst:             condvar_create
        - Src:             'networking/host_resolver.c:284,12'
          Dst:             thread_create
        - Src:             'networking/host_resolver.c:284,12'
          Dst:             resolve_hosts
        - Src:             'networking/host_resolver.c:308,2'
          Dst:             query_destroy
    - functionName:    query_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host_resolver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host_resolver.c:154,42'
          Dst:             streq
    - functionName:    query_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host_resolver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
        - chunk_hash_inc
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host_resolver.c:145,49'
          Dst:             strlen
        - Src:             'networking/host_resolver.c:145,24'
          Dst:             chunk_create
        - Src:             'networking/host_resolver.c:146,20'
          Dst:             chunk_create
        - Src:             'networking/host_resolver.c:146,9'
          Dst:             chunk_hash
        - Src:             'networking/host_resolver.c:145,9'
          Dst:             chunk_hash_inc
    - functionName:    host_resolver_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/host_resolver.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          155
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - condvar_create
        - hashtable_create
        - linked_list_create
        - mutex_create
        - query_equals
        - query_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/host_resolver.c:360,2'
          Dst:             hashtable_create
        - Src:             'networking/host_resolver.c:360,2'
          Dst:             query_hash
        - Src:             'networking/host_resolver.c:360,2'
          Dst:             query_equals
        - Src:             'networking/host_resolver.c:360,2'
          Dst:             linked_list_create
        - Src:             'networking/host_resolver.c:360,2'
          Dst:             mutex_create
        - Src:             'networking/host_resolver.c:360,2'
          Dst:             condvar_create
        - Src:             'networking/host_resolver.c:360,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - metadata_set_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/packet.c:143,2'
          Dst:             metadata_set_destroy
    - functionName:    clone_
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clone_packet
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/packet.c:177,9'
          Dst:             clone_packet
    - functionName:    clone_packet
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          142
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create_clone
        - metadata_set_clone
        - packet_create
        - set_data
        - set_destination
        - set_dscp
        - set_source
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/packet.c:155,29'
          Dst:             packet_create
        - Src:             'networking/packet.c:158,3'
          Dst:             set_destination
        - Src:             'networking/packet.c:162,3'
          Dst:             set_source
        - Src:             'networking/packet.c:164,20'
          Dst:             metadata_set_clone
        - Src:             'networking/packet.c:165,2'
          Dst:             set_dscp
        - Src:             'networking/packet.c:169,19'
          Dst:             chunk_create_clone
        - Src:             'networking/packet.c:169,3'
          Dst:             set_data
    - functionName:    packet_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - packet_create_from_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/packet.c:225,9'
          Dst:             packet_create_from_data
    - functionName:    set_destination
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_source
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_dscp
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    packet_create_from_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          88
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    skip_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_skip
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/packet.c:119,24'
          Dst:             chunk_skip
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_metadata
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - metadata_set_create
        - metadata_set_put
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/packet.c:133,20'
          Dst:             metadata_set_create
        - Src:             'networking/packet.c:135,2'
          Dst:             metadata_set_put
    - functionName:    get_metadata
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - metadata_set_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/packet.c:125,9'
          Dst:             metadata_set_get
    - functionName:    get_dscp
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_destination
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_source
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    packet_clone_no_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clone_packet
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/packet.c:185,9'
          Dst:             clone_packet
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - remove_service
        - remove_stream
        - stream_create_tcp
        - stream_create_unix
        - stream_create_vsock
        - stream_service_create_tcp
        - stream_service_create_unix
        - stream_service_create_vsock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_manager.c:211,2'
          Dst:             remove_stream
        - Src:             'networking/streams/stream_manager.c:211,2'
          Dst:             stream_create_tcp
        - Src:             'networking/streams/stream_manager.c:212,2'
          Dst:             remove_service
        - Src:             'networking/streams/stream_manager.c:212,2'
          Dst:             stream_service_create_tcp
        - Src:             'networking/streams/stream_manager.c:214,2'
          Dst:             remove_stream
        - Src:             'networking/streams/stream_manager.c:214,2'
          Dst:             stream_create_unix
        - Src:             'networking/streams/stream_manager.c:215,2'
          Dst:             remove_service
        - Src:             'networking/streams/stream_manager.c:215,2'
          Dst:             stream_service_create_unix
        - Src:             'networking/streams/stream_manager.c:218,2'
          Dst:             remove_stream
        - Src:             'networking/streams/stream_manager.c:218,2'
          Dst:             stream_create_vsock
        - Src:             'networking/streams/stream_manager.c:219,2'
          Dst:             remove_service
        - Src:             'networking/streams/stream_manager.c:219,2'
          Dst:             stream_service_create_vsock
    - functionName:    remove_stream
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          103
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_service
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          103
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_service
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          107
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strpfx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_manager.c:120,7'
          Dst:             strpfx
    - functionName:    strpfx
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - strneq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:47,27'
          Dst:             strlen
        - Src:             './utils/utils/string.h:47,9'
          Dst:             strneq
    - functionName:    strneq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:39,32'
          Dst:             strncmp
    - functionName:    connect_
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          104
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strpfx
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_manager.c:94,7'
          Dst:             strpfx
    - functionName:    add_service
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          68
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_manager.c:177,2'
          Dst:             strdup
    - functionName:    add_stream
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          68
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_manager.c:140,2'
          Dst:             strdup
    - functionName:    stream_manager_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          66
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_service
        - add_stream
        - linked_list_create
        - rwlock_create
        - stream_create_tcp
        - stream_create_unix
        - stream_create_vsock
        - stream_service_create_tcp
        - stream_service_create_unix
        - stream_service_create_vsock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_manager.c:238,2'
          Dst:             linked_list_create
        - Src:             'networking/streams/stream_manager.c:238,2'
          Dst:             linked_list_create
        - Src:             'networking/streams/stream_manager.c:238,2'
          Dst:             rwlock_create
        - Src:             'networking/streams/stream_manager.c:253,2'
          Dst:             add_stream
        - Src:             'networking/streams/stream_manager.c:253,2'
          Dst:             stream_create_tcp
        - Src:             'networking/streams/stream_manager.c:254,2'
          Dst:             add_service
        - Src:             'networking/streams/stream_manager.c:254,2'
          Dst:             stream_service_create_tcp
        - Src:             'networking/streams/stream_manager.c:256,2'
          Dst:             add_stream
        - Src:             'networking/streams/stream_manager.c:256,2'
          Dst:             stream_create_unix
        - Src:             'networking/streams/stream_manager.c:257,2'
          Dst:             add_service
        - Src:             'networking/streams/stream_manager.c:257,2'
          Dst:             stream_service_create_unix
        - Src:             'networking/streams/stream_manager.c:260,2'
          Dst:             add_stream
        - Src:             'networking/streams/stream_manager.c:260,2'
          Dst:             stream_create_vsock
        - Src:             'networking/streams/stream_manager.c:261,2'
          Dst:             add_service
        - Src:             'networking/streams/stream_manager.c:261,2'
          Dst:             stream_service_create_vsock
    - functionName:    strneq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:39,32'
          Dst:             strncmp
    - functionName:    stream_create_tcp
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - close
        - connect
        - socket
        - stream_create_from_fd
        - stream_parse_uri_tcp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_tcp.c:81,8'
          Dst:             stream_parse_uri_tcp
        - Src:             'networking/streams/stream_tcp.c:87,7'
          Dst:             socket
        - Src:             'networking/streams/stream_tcp.c:93,6'
          Dst:             connect
        - Src:             'networking/streams/stream_tcp.c:96,3'
          Dst:             close
        - Src:             'networking/streams/stream_tcp.c:99,9'
          Dst:             stream_create_from_fd
    - functionName:    stream_parse_uri_tcp
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          176
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - host_create_from_dns
        - memcpy_noop
        - snprintf
        - strpfx
        - strrchr
        - strtoul
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_tcp.c:34,7'
          Dst:             strpfx
        - Src:             'networking/streams/stream_tcp.c:39,8'
          Dst:             strrchr
        - Src:             'networking/streams/stream_tcp.c:47,3'
          Dst:             snprintf
        - Src:             'networking/streams/stream_tcp.c:51,3'
          Dst:             snprintf
        - Src:             'networking/streams/stream_tcp.c:53,9'
          Dst:             strtoul
        - Src:             'networking/streams/stream_tcp.c:58,9'
          Dst:             host_create_from_dns
        - Src:             'networking/streams/stream_tcp.c:64,2'
          Dst:             memcpy_noop
    - functionName:    strpfx
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - strneq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:47,27'
          Dst:             strlen
        - Src:             './utils/utils/string.h:47,9'
          Dst:             strneq
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stream_service_create_tcp
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service_tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          94
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - bind
        - close
        - listen
        - setsockopt
        - socket
        - stream_parse_uri_tcp
        - stream_service_create_from_fd
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_service_tcp.c:36,8'
          Dst:             stream_parse_uri_tcp
        - Src:             'networking/streams/stream_service_tcp.c:42,7'
          Dst:             socket
        - Src:             'networking/streams/stream_service_tcp.c:48,6'
          Dst:             setsockopt
        - Src:             'networking/streams/stream_service_tcp.c:52,6'
          Dst:             bind
        - Src:             'networking/streams/stream_service_tcp.c:55,3'
          Dst:             close
        - Src:             'networking/streams/stream_service_tcp.c:58,6'
          Dst:             listen
        - Src:             'networking/streams/stream_service_tcp.c:61,3'
          Dst:             close
        - Src:             'networking/streams/stream_service_tcp.c:64,9'
          Dst:             stream_service_create_from_fd
    - functionName:    listen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1503
      functionLinenumberEnd: 1511
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - unload
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1504,2'
          Dst:             unload
    - functionName:    unload
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1402
      functionLinenumberEnd: 1421
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memset_noop
        - plugin_entry_destroy
        - unload_features
        - unregister_features
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1406,2'
          Dst:             unload_features
        - Src:             'plugins/plugin_loader.c:1415,3'
          Dst:             unregister_features
        - Src:             'plugins/plugin_loader.c:1416,3'
          Dst:             plugin_entry_destroy
        - Src:             'plugins/plugin_loader.c:1420,2'
          Dst:             memset_noop
    - functionName:    unload_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1383
      functionLinenumberEnd: 1398
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          92
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - plugin_feature_unload
        - unregister_feature
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1392,3'
          Dst:             plugin_feature_unload
        - Src:             'plugins/plugin_loader.c:1395,3'
          Dst:             unregister_feature
    - functionName:    unregister_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1065
      functionLinenumberEnd: 1076
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - unregister_feature
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1073,3'
          Dst:             unregister_feature
    - functionName:    plugin_entry_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dlclose
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:218,3'
          Dst:             dlclose
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dlclose
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unregister_feature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1058
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          137
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    status
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1487
      functionLinenumberEnd: 1499
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    loaded_plugins
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1481
      functionLinenumberEnd: 1482
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_feature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 622
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          92
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - create_plugin_enumerator
        - plugin_feature_matches
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:605,12'
          Dst:             create_plugin_enumerator
        - Src:             'plugins/plugin_loader.c:611,8'
          Dst:             plugin_feature_matches
    - functionName:    create_plugin_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 590
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:591,9'
          Dst:             enumerator_create_filter
    - functionName:    _cb_plugin_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          130
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - enumerator_create_filter
        - linked_list_create_from_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:578,15'
          Dst:             enumerator_create_filter
        - Src:             'plugins/plugin_loader.c:581,12'
          Dst:             linked_list_create_from_enumerator
    - functionName:    _cb_feature_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reload_by_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1437
      functionLinenumberEnd: 1456
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          97
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - create_plugin_enumerator
        - streq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1442,15'
          Dst:             create_plugin_enumerator
        - Src:             'plugins/plugin_loader.c:1445,23'
          Dst:             streq
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    reload
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1461
      functionLinenumberEnd: 1477
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - enumerator_create_token
        - reload_by_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1468,10'
          Dst:             reload_by_name
        - Src:             'plugins/plugin_loader.c:1470,15'
          Dst:             enumerator_create_token
        - Src:             'plugins/plugin_loader.c:1473,15'
          Dst:             reload_by_name
    - functionName:    strdupnull
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:79,13'
          Dst:             strdup
    - functionName:    add_path
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1425
      functionLinenumberEnd: 1431
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - linked_list_create
        - strdupnull
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1428,17'
          Dst:             linked_list_create
        - Src:             'plugins/plugin_loader.c:1430,40'
          Dst:             strdupnull
    - functionName:    _cb_is_feature_loaded
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 688
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    loaded_feature_matches
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 702
      functionLinenumberEnd: 708
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - plugin_feature_matches
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:703,6'
          Dst:             plugin_feature_matches
    - functionName:    _cb_is_feature_loadable
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 694
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_compatible_feature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 748
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - loaded_feature_matches
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:746,12'
          Dst:             loaded_feature_matches
    - functionName:    load_registered
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 757
      functionLinenumberEnd: 767
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - load_provided
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:764,3'
          Dst:             load_provided
    - functionName:    load_provided
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 907
      functionLinenumberEnd: 939
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          60
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - load_feature
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:937,2'
          Dst:             load_feature
    - functionName:    load_feature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 860
      functionLinenumberEnd: 899
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          92
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - load_dependencies
        - plugin_feature_load
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:861,6'
          Dst:             load_dependencies
        - Src:             'plugins/plugin_loader.c:863,7'
          Dst:             plugin_feature_load
    - functionName:    load_dependencies
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 775
      functionLinenumberEnd: 852
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          180
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - find_compatible_feature
        - load_registered
        - loadable_feature_equals
        - loadable_feature_matches
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:795,17'
          Dst:             loadable_feature_equals
        - Src:             'plugins/plugin_loader.c:800,18'
          Dst:             loadable_feature_matches
        - Src:             'plugins/plugin_loader.c:806,5'
          Dst:             load_registered
        - Src:             'plugins/plugin_loader.c:813,8'
          Dst:             find_compatible_feature
    - functionName:    loadable_feature_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 721
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - plugin_feature_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:716,6'
          Dst:             plugin_feature_equals
    - functionName:    loadable_feature_matches
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 734
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - plugin_feature_matches
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:729,6'
          Dst:             plugin_feature_matches
    - functionName:    verify_plugin_version
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dlsym
        - snprintf
        - strcmp
        - translate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:424,6'
          Dst:             snprintf
        - Src:             'plugins/plugin_loader.c:429,2'
          Dst:             translate
        - Src:             'plugins/plugin_loader.c:431,12'
          Dst:             dlsym
        - Src:             'plugins/plugin_loader.c:438,6'
          Dst:             strcmp
    - functionName:    create_plugin
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 413
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          159
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - dlsym
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:382,17'
          Dst:             dlsym
        - Src:             'plugins/plugin_loader.c:406,2'
          Dst:             linked_list_create
    - functionName:    _cb_find_plugin_cb
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1146
      functionLinenumberEnd: 1150
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          107
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - find_plugin
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1150,9'
          Dst:             find_plugin
    - functionName:    find_plugin
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1129
      functionLinenumberEnd: 1142
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - snprintf
        - stat
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1132,14'
          Dst:             snprintf
        - Src:             'plugins/plugin_loader.c:1135,7'
          Dst:             stat
    - functionName:    _cb_plugin_priority_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1202
      functionLinenumberEnd: 1214
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_priority_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1167
      functionLinenumberEnd: 1169
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_priority_cmp
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1185
      functionLinenumberEnd: 1198
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1194,11'
          Dst:             strcmp
    - functionName:    plugin_priority_cmp_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1176
      functionLinenumberEnd: 1177
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1177,9'
          Dst:             strcmp
    - functionName:    loaded_plugins_list
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          129
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - create_plugin_enumerator
        - realloc
        - snprintf
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:637,15'
          Dst:             create_plugin_enumerator
        - Src:             'plugins/plugin_loader.c:641,14'
          Dst:             strlen
        - Src:             'plugins/plugin_loader.c:644,10'
          Dst:             realloc
        - Src:             'plugins/plugin_loader.c:646,10'
          Dst:             snprintf
    - functionName:    purge_plugins
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1082
      functionLinenumberEnd: 1104
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          96
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - plugin_entry_destroy
        - unregister_features
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1099,4'
          Dst:             unregister_features
        - Src:             'plugins/plugin_loader.c:1100,4'
          Dst:             plugin_entry_destroy
    - functionName:    load_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 945
      functionLinenumberEnd: 963
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - load_provided
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:958,4'
          Dst:             load_provided
    - functionName:    load_plugin
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          212
      EdgeCount:       35
      CyclomaticComplexity: 7
      functionsReached:
        - create_plugin
        - dlclose
        - dlopen
        - snprintf
        - translate
        - verify_plugin_version
      functionUses:    1
      BranchProfiles:
        - Branch String:   'plugins/plugin_loader.c:469,2'
          Branch Sides:    []
        - Branch String:   'plugins/plugin_loader.c:524,2'
          Branch Sides:    []
      Callsites:
        - Src:             'plugins/plugin_loader.c:463,6'
          Dst:             snprintf
        - Src:             'plugins/plugin_loader.c:468,2'
          Dst:             translate
        - Src:             'plugins/plugin_loader.c:469,10'
          Dst:             create_plugin
        - Src:             'plugins/plugin_loader.c:513,11'
          Dst:             dlopen
        - Src:             'plugins/plugin_loader.c:519,7'
          Dst:             verify_plugin_version
        - Src:             'plugins/plugin_loader.c:521,3'
          Dst:             dlclose
        - Src:             'plugins/plugin_loader.c:524,10'
          Dst:             create_plugin
        - Src:             'plugins/plugin_loader.c:533,4'
          Dst:             dlclose
    - functionName:    dlopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_loaded
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 660
      functionLinenumberEnd: 675
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - create_plugin_enumerator
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:665,15'
          Dst:             create_plugin_enumerator
        - Src:             'plugins/plugin_loader.c:668,7'
          Dst:             streq
    - functionName:    modular_pluginlist
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1221
      functionLinenumberEnd: 1297
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          278
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - array_bsearch
        - array_create
        - array_create_enumerator
        - array_destroy
        - array_destroy_function
        - array_insert
        - array_sort
        - asprintf
        - enumerator_create_filter
        - enumerator_create_token
        - plugin_priority_cmp
        - plugin_priority_cmp_name
        - plugin_priority_free
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1229,10'
          Dst:             array_create
        - Src:             'plugins/plugin_loader.c:1230,10'
          Dst:             array_create
        - Src:             'plugins/plugin_loader.c:1232,15'
          Dst:             enumerator_create_token
        - Src:             'plugins/plugin_loader.c:1235,15'
          Dst:             strdup
        - Src:             'plugins/plugin_loader.c:1237,3'
          Dst:             array_insert
        - Src:             'plugins/plugin_loader.c:1240,2'
          Dst:             array_sort
        - Src:             'plugins/plugin_loader.c:1240,2'
          Dst:             plugin_priority_cmp_name
        - Src:             'plugins/plugin_loader.c:1252,41'
          Dst:             array_create_enumerator
        - Src:             'plugins/plugin_loader.c:1252,16'
          Dst:             enumerator_create_filter
        - Src:             'plugins/plugin_loader.c:1271,7'
          Dst:             array_bsearch
        - Src:             'plugins/plugin_loader.c:1271,7'
          Dst:             plugin_priority_cmp_name
        - Src:             'plugins/plugin_loader.c:1276,3'
          Dst:             array_insert
        - Src:             'plugins/plugin_loader.c:1280,2'
          Dst:             array_sort
        - Src:             'plugins/plugin_loader.c:1280,2'
          Dst:             plugin_priority_cmp
        - Src:             'plugins/plugin_loader.c:1282,12'
          Dst:             strdup
        - Src:             'plugins/plugin_loader.c:1283,15'
          Dst:             array_create_enumerator
        - Src:             'plugins/plugin_loader.c:1287,7'
          Dst:             asprintf
        - Src:             'plugins/plugin_loader.c:1295,2'
          Dst:             array_destroy_function
        - Src:             'plugins/plugin_loader.c:1295,2'
          Dst:             plugin_priority_free
        - Src:             'plugins/plugin_loader.c:1296,2'
          Dst:             array_destroy
    - functionName:    load_plugins
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1302
      functionLinenumberEnd: 1376
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          246
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - enumerator_create_token
        - find_plugin
        - load_features
        - load_plugin
        - loaded_plugins_list
        - modular_pluginlist
        - plugin_loaded
        - purge_plugins
        - register_features
        - strdup
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1311,12'
          Dst:             modular_pluginlist
        - Src:             'plugins/plugin_loader.c:1313,15'
          Dst:             enumerator_create_token
        - Src:             'plugins/plugin_loader.c:1321,11'
          Dst:             strdup
        - Src:             'plugins/plugin_loader.c:1322,9'
          Dst:             strlen
        - Src:             'plugins/plugin_loader.c:1328,7'
          Dst:             plugin_loaded
        - Src:             'plugins/plugin_loader.c:1340,4'
          Dst:             find_plugin
        - Src:             'plugins/plugin_loader.c:1342,11'
          Dst:             load_plugin
        - Src:             'plugins/plugin_loader.c:1345,4'
          Dst:             register_features
        - Src:             'plugins/plugin_loader.c:1357,3'
          Dst:             load_features
        - Src:             'plugins/plugin_loader.c:1365,3'
          Dst:             purge_plugins
        - Src:             'plugins/plugin_loader.c:1370,26'
          Dst:             loaded_plugins_list
    - functionName:    register_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 978
      functionLinenumberEnd: 1028
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          201
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'plugins/plugin_loader.c:994,3'
          Branch Sides:    []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1002,6'
          Dst:             linked_list_create
    - functionName:    static_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    static_reload
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_static_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_static_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    static_features_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          74
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - calloc
        - memcpy_noop
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:302,2'
          Dst:             strdup
        - Src:             'plugins/plugin_loader.c:302,2'
          Dst:             calloc
        - Src:             'plugins/plugin_loader.c:316,2'
          Dst:             memcpy_noop
    - functionName:    add_static_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1110
      functionLinenumberEnd: 1123
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          74
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - register_features
        - static_features_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1114,11'
          Dst:             static_features_create
        - Src:             'plugins/plugin_loader.c:1116,2'
          Dst:             linked_list_create
        - Src:             'plugins/plugin_loader.c:1122,2'
          Dst:             register_features
    - functionName:    plugin_loader_add_plugindirs
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1556
      functionLinenumberEnd: 1569
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - enumerator_create_token
        - snprintf
        - translate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1560,15'
          Dst:             enumerator_create_token
        - Src:             'plugins/plugin_loader.c:1563,3'
          Dst:             snprintf
        - Src:             'plugins/plugin_loader.c:1564,3'
          Dst:             translate
        - Src:             'plugins/plugin_loader.c:1565,3'
          Dst:             snprintf
    - functionName:    get_features_default
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 969
      functionLinenumberEnd: 970
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    registered_feature_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - plugin_feature_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:137,9'
          Dst:             plugin_feature_equals
    - functionName:    registered_feature_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - plugin_feature_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:128,9'
          Dst:             plugin_feature_hash
    - functionName:    plugin_loader_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1517
      functionLinenumberEnd: 1549
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          93
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dlsym
        - hashlist_create
        - linked_list_create
        - registered_feature_equals
        - registered_feature_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:1520,2'
          Dst:             linked_list_create
        - Src:             'plugins/plugin_loader.c:1520,2'
          Dst:             hashlist_create
        - Src:             'plugins/plugin_loader.c:1520,2'
          Dst:             registered_feature_hash
        - Src:             'plugins/plugin_loader.c:1520,2'
          Dst:             registered_feature_equals
        - Src:             'plugins/plugin_loader.c:1520,2'
          Dst:             linked_list_create
        - Src:             'plugins/plugin_loader.c:1541,23'
          Dst:             dlsym
    - functionName:    plugin_constructor_register
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_loader.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          148
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_hash_seed
        - hashtable_create
        - hashtable_equals_str
        - hashtable_hash_str
      functionUses:    70
      BranchProfiles:  []
      Callsites:
        - Src:             'plugins/plugin_loader.c:336,3'
          Dst:             chunk_hash_seed
        - Src:             'plugins/plugin_loader.c:337,25'
          Dst:             hashtable_create
        - Src:             'plugins/plugin_loader.c:337,25'
          Dst:             hashtable_hash_str
        - Src:             'plugins/plugin_loader.c:337,25'
          Dst:             hashtable_equals_str
    - functionName:    plugin_feature_unload
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_feature.c'
      linkageType:     InternalLinkage
      functionLinenumber: 587
      functionLinenumberEnd: 673
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          478
      EdgeCount:       53
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'plugins/plugin_feature.c:601,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    plugin_feature_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_feature.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 580
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          577
      EdgeCount:       53
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'plugins/plugin_feature.c:486,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    plugin_feature_get_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_feature.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         101
      ICount:          649
      EdgeCount:       126
      CyclomaticComplexity: 27
      functionsReached:
        - asprintf
        - strdup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'plugins/plugin_feature.c:288,2'
          Branch Sides:    []
      Callsites:
        - Src:             'plugins/plugin_feature.c:286,10'
          Dst:             strdup
        - Src:             'plugins/plugin_feature.c:291,11'
          Dst:             strdup
        - Src:             'plugins/plugin_feature.c:293,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:301,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:309,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:316,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:323,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:330,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:337,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:344,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:351,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:358,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:366,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:374,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:382,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:390,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:398,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:406,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:415,5'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:421,5'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:428,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:435,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:442,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:450,8'
          Dst:             asprintf
        - Src:             'plugins/plugin_feature.c:459,9'
          Dst:             strdup
    - functionName:    plugin_feature_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_feature.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          236
      EdgeCount:       51
      CyclomaticComplexity: 5
      functionsReached:
        - plugin_feature_matches
        - streq
      functionUses:    2
      BranchProfiles:
        - Branch String:   'plugins/plugin_feature.c:231,3'
          Branch Sides:    []
      Callsites:
        - Src:             'plugins/plugin_feature.c:261,12'
          Dst:             plugin_feature_matches
        - Src:             'plugins/plugin_feature.c:269,13'
          Dst:             streq
    - functionName:    plugin_feature_matches
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_feature.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         62
      ICount:          436
      EdgeCount:       67
      CyclomaticComplexity: 7
      functionsReached:
        - streq
      functionUses:    4
      BranchProfiles:
        - Branch String:   'plugins/plugin_feature.c:159,3'
          Branch Sides:    []
      Callsites:
        - Src:             'plugins/plugin_feature.c:213,9'
          Dst:             streq
        - Src:             'plugins/plugin_feature.c:215,12'
          Dst:             streq
        - Src:             'plugins/plugin_feature.c:218,12'
          Dst:             streq
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_feature_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/plugin_feature.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         41
      ICount:          416
      EdgeCount:       81
      CyclomaticComplexity: 42
      functionsReached:
        - chunk_create
        - chunk_hash
        - chunk_hash_inc
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'plugins/plugin_feature.c:67,2'
          Branch Sides:    []
      Callsites:
        - Src:             'plugins/plugin_feature.c:79,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:82,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:85,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:88,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:91,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:94,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:97,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:100,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:103,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:106,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:109,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:112,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:115,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:118,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:121,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:124,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:128,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:132,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:136,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:140,9'
          Dst:             strlen
        - Src:             'plugins/plugin_feature.c:139,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:145,9'
          Dst:             strlen
        - Src:             'plugins/plugin_feature.c:144,11'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:148,24'
          Dst:             chunk_create
        - Src:             'plugins/plugin_feature.c:149,9'
          Dst:             chunk_hash
        - Src:             'plugins/plugin_feature.c:148,9'
          Dst:             chunk_hash_inc
    - functionName:    cancel
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/jobs/callback_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/jobs/callback_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_priority
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/jobs/callback_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/jobs/callback_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    callback_job_cancel_thread
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/jobs/callback_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    callback_job_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/jobs/callback_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - callback_job_create_with_prio
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/jobs/callback_job.c:131,9'
          Dst:             callback_job_create_with_prio
    - functionName:    callback_job_create_with_prio
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/jobs/callback_job.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          84
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          96
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - cancel
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/processor.c:523,2'
          Dst:             cancel
    - functionName:    cancel
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          242
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    restart
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          183
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - thread_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/processor.c:230,24'
          Dst:             thread_create
    - functionName:    _cb_process_jobs
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          100
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_job
        - process_job
        - thread_cancelability
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/processor.c:176,2'
          Dst:             thread_cancelability
        - Src:             'processing/processor.c:183,7'
          Dst:             get_job
        - Src:             'processing/processor.c:185,4'
          Dst:             process_job
    - functionName:    get_job
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          135
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - get_idle_threads_nolock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/processor.c:144,9'
          Dst:             get_idle_threads_nolock
    - functionName:    process_job
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          308
      EdgeCount:       28
      CyclomaticComplexity: 4
      functionsReached:
        - restart
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    1
      BranchProfiles:
        - Branch String:   'processing/processor.c:283,3'
          Branch Sides:    []
        - Branch String:   'processing/processor.c:298,5'
          Branch Sides:    []
      Callsites:
        - Src:             'processing/processor.c:259,2'
          Dst:             thread_cleanup_push
        - Src:             'processing/processor.c:259,2'
          Dst:             restart
        - Src:             'processing/processor.c:273,2'
          Dst:             thread_cleanup_pop
    - functionName:    get_idle_threads_nolock
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          39
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_threads
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          194
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - thread_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/processor.c:451,21'
          Dst:             thread_create
    - functionName:    execute_job
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          131
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - get_idle_threads_nolock
        - sane_prio
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/processor.c:409,31'
          Dst:             get_idle_threads_nolock
        - Src:             'processing/processor.c:411,10'
          Dst:             sane_prio
    - functionName:    sane_prio
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          32
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    queue_job
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          79
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sane_prio
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/processor.c:393,9'
          Dst:             sane_prio
    - functionName:    get_job_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 385
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sane_prio
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/processor.c:381,9'
          Dst:             sane_prio
    - functionName:    get_working_threads
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sane_prio
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/processor.c:371,32'
          Dst:             sane_prio
    - functionName:    get_idle_threads
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_idle_threads_nolock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/processor.c:348,10'
          Dst:             get_idle_threads_nolock
    - functionName:    get_total_threads
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    processor_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/processor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 565
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          98
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - condvar_create
        - linked_list_create
        - mutex_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/processor.c:543,2'
          Dst:             linked_list_create
        - Src:             'processing/processor.c:543,2'
          Dst:             mutex_create
        - Src:             'processing/processor.c:543,2'
          Dst:             condvar_create
        - Src:             'processing/processor.c:543,2'
          Dst:             condvar_create
        - Src:             'processing/processor.c:563,19'
          Dst:             linked_list_create
    - functionName:    peek_event
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/scheduler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/scheduler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flush
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/scheduler.c:300,2'
          Dst:             flush
    - functionName:    flush
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/scheduler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - event_destroy
        - remove_event
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/scheduler.c:289,18'
          Dst:             remove_event
        - Src:             'processing/scheduler.c:291,3'
          Dst:             event_destroy
    - functionName:    remove_event
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/scheduler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          274
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    event_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/scheduler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_job_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/scheduler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    schedule_job_ms
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/scheduler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          78
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - schedule_job_tv
        - time_monotonic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/scheduler.c:274,2'
          Dst:             time_monotonic
        - Src:             'processing/scheduler.c:280,2'
          Dst:             schedule_job_tv
    - functionName:    schedule_job_tv
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/scheduler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          223
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - realloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/scheduler.c:238,27'
          Dst:             realloc
    - functionName:    schedule_job
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/scheduler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - schedule_job_tv
        - time_monotonic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/scheduler.c:263,2'
          Dst:             time_monotonic
        - Src:             'processing/scheduler.c:266,2'
          Dst:             schedule_job_tv
    - functionName:    schedule
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/scheduler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          240
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - peek_event
        - remove_event
        - thread_cancelability
        - thread_cleanup_pop
        - thread_cleanup_push
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/scheduler.c:167,2'
          Dst:             time_monotonic
        - Src:             'processing/scheduler.c:169,15'
          Dst:             peek_event
        - Src:             'processing/scheduler.c:173,4'
          Dst:             remove_event
        - Src:             'processing/scheduler.c:192,2'
          Dst:             thread_cleanup_push
        - Src:             'processing/scheduler.c:193,13'
          Dst:             thread_cancelability
        - Src:             'processing/scheduler.c:204,2'
          Dst:             thread_cancelability
        - Src:             'processing/scheduler.c:205,2'
          Dst:             thread_cleanup_pop
    - functionName:    scheduler_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/scheduler.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 336
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          79
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - callback_job_cancel_thread
        - callback_job_create_with_prio
        - calloc
        - condvar_create
        - mutex_create
        - schedule
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/scheduler.c:315,2'
          Dst:             mutex_create
        - Src:             'processing/scheduler.c:315,2'
          Dst:             condvar_create
        - Src:             'processing/scheduler.c:329,26'
          Dst:             calloc
        - Src:             'processing/scheduler.c:331,8'
          Dst:             callback_job_create_with_prio
        - Src:             'processing/scheduler.c:331,8'
          Dst:             schedule
        - Src:             'processing/scheduler.c:331,8'
          Dst:             callback_job_cancel_thread
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 623
      functionLinenumberEnd: 636
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          88
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - close
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/watcher.c:628,3'
          Dst:             close
        - Src:             'processing/watcher.c:632,3'
          Dst:             close
    - functionName:    get_state
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 611
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 607
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          146
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - remove_entry
        - update_and_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/watcher.c:583,13'
          Dst:             remove_entry
        - Src:             'processing/watcher.c:597,3'
          Dst:             update_and_unlock
    - functionName:    remove_entry
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update_and_unlock
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - write
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/watcher.c:177,7'
          Dst:             write
        - Src:             'processing/watcher.c:179,12'
          Dst:             __errno_location
    - functionName:    write
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unregister
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    notify_end
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          147
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - remove_entry
        - update_and_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/watcher.c:234,6'
          Dst:             remove_entry
        - Src:             'processing/watcher.c:244,2'
          Dst:             update_and_unlock
    - functionName:    notify_async
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - thread_cleanup_pop
        - thread_cleanup_push
        - unregister
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/watcher.c:206,2'
          Dst:             thread_cleanup_push
        - Src:             'processing/watcher.c:206,2'
          Dst:             unregister
        - Src:             'processing/watcher.c:208,2'
          Dst:             thread_cleanup_pop
    - functionName:    notify
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          73
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - callback_job_cancel_thread
        - callback_job_create_with_prio
        - notify_async
        - notify_end
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/watcher.c:287,6'
          Dst:             callback_job_create_with_prio
        - Src:             'processing/watcher.c:287,6'
          Dst:             notify_async
        - Src:             'processing/watcher.c:287,6'
          Dst:             notify_end
        - Src:             'processing/watcher.c:287,6'
          Dst:             callback_job_cancel_thread
    - functionName:    find_revents
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          55
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    activate_all
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          73
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    watch
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         75
      ICount:          518
      EdgeCount:       100
      CyclomaticComplexity: 27
      functionsReached:
        - __errno_location
        - activate_all
        - find_revents
        - notify
        - poll
        - read
        - thread_cancelability
        - thread_cancellation_point
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/watcher.c:427,3'
          Dst:             thread_cleanup_push
        - Src:             'processing/watcher.c:427,3'
          Dst:             activate_all
        - Src:             'processing/watcher.c:428,9'
          Dst:             thread_cancelability
        - Src:             'processing/watcher.c:430,9'
          Dst:             poll
        - Src:             'processing/watcher.c:431,20'
          Dst:             __errno_location
        - Src:             'processing/watcher.c:435,4'
          Dst:             thread_cancellation_point
        - Src:             'processing/watcher.c:438,3'
          Dst:             thread_cancelability
        - Src:             'processing/watcher.c:439,3'
          Dst:             thread_cleanup_pop
        - Src:             'processing/watcher.c:447,12'
          Dst:             read
        - Src:             'processing/watcher.c:450,11'
          Dst:             __errno_location
        - Src:             'processing/watcher.c:450,30'
          Dst:             __errno_location
        - Src:             'processing/watcher.c:471,15'
          Dst:             find_revents
        - Src:             'processing/watcher.c:487,6'
          Dst:             notify
        - Src:             'processing/watcher.c:492,6'
          Dst:             notify
        - Src:             'processing/watcher.c:517,12'
          Dst:             __errno_location
    - functionName:    read
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_entry
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          43
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          106
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add_entry
        - callback_job_cancel_thread
        - callback_job_create_with_prio
        - update_and_unlock
        - watch
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/watcher.c:545,2'
          Dst:             add_entry
        - Src:             'processing/watcher.c:552,12'
          Dst:             callback_job_create_with_prio
        - Src:             'processing/watcher.c:552,12'
          Dst:             watch
        - Src:             'processing/watcher.c:552,12'
          Dst:             callback_job_cancel_thread
        - Src:             'processing/watcher.c:557,3'
          Dst:             update_and_unlock
    - functionName:    create_notify
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 666
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          63
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - fcntl
        - pipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/watcher.c:669,6'
          Dst:             pipe
        - Src:             'processing/watcher.c:672,11'
          Dst:             fcntl
        - Src:             'processing/watcher.c:674,4'
          Dst:             fcntl
    - functionName:    pipe
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fcntl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    watcher_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/processing/watcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 690
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - condvar_create
        - create_notify
        - linked_list_create
        - mutex_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'processing/watcher.c:693,2'
          Dst:             mutex_create
        - Src:             'processing/watcher.c:693,2'
          Dst:             condvar_create
        - Src:             'processing/watcher.c:693,2'
          Dst:             linked_list_create
        - Src:             'processing/watcher.c:707,7'
          Dst:             create_notify
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/resolver/resolver_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create
      functionSourceFile: '/src/strongswan/src/libstrongswan/resolver/resolver_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    remove_resolver
      functionSourceFile: '/src/strongswan/src/libstrongswan/resolver/resolver_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_resolver
      functionSourceFile: '/src/strongswan/src/libstrongswan/resolver/resolver_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resolver_manager_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/resolver/resolver_manager.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/sec_label.c:113,2'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_hash_inc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/sec_label.c:107,9'
          Dst:             chunk_hash_inc
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_equals_const
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/sec_label.c:83,9'
          Dst:             chunk_equals_const
    - functionName:    matches
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/sec_label.c:101,9'
          Dst:             equals
    - functionName:    clone_
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
        - create_sec_label
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/sec_label.c:71,26'
          Dst:             chunk_create_clone
        - Src:             'selectors/sec_label.c:71,55'
          Dst:             strdup
        - Src:             'selectors/sec_label.c:71,9'
          Dst:             create_sec_label
    - functionName:    create_sec_label
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sec_label_mode_default
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sec_label_mode_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - enum_from_name_as_int
        - sec_label_mode_default
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/sec_label.c:204,25'
          Dst:             sec_label_mode_default
        - Src:             'selectors/sec_label.c:206,9'
          Dst:             enum_from_name_as_int
    - functionName:    sec_label_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - sec_label_from_encoding
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/sec_label.c:196,60'
          Dst:             strlen
        - Src:             'selectors/sec_label.c:196,33'
          Dst:             chunk_create
        - Src:             'selectors/sec_label.c:196,9'
          Dst:             sec_label_from_encoding
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sec_label_from_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/sec_label.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          203
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - asprintf
        - chunk_create
        - chunk_create_cat
        - chunk_create_clone
        - chunk_free
        - chunk_length
        - chunk_printable
        - create_sec_label
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/sec_label.c:157,12'
          Dst:             chunk_length
        - Src:             'selectors/sec_label.c:157,12'
          Dst:             chunk_create_cat
        - Src:             'selectors/sec_label.c:161,12'
          Dst:             chunk_create_clone
        - Src:             'selectors/sec_label.c:165,23'
          Dst:             chunk_create
        - Src:             'selectors/sec_label.c:165,7'
          Dst:             chunk_printable
        - Src:             'selectors/sec_label.c:176,6'
          Dst:             asprintf
        - Src:             'selectors/sec_label.c:178,3'
          Dst:             chunk_free
        - Src:             'selectors/sec_label.c:179,3'
          Dst:             chunk_free
        - Src:             'selectors/sec_label.c:182,2'
          Dst:             chunk_free
        - Src:             'selectors/sec_label.c:184,9'
          Dst:             create_sec_label
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 661
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 648
      functionLinenumberEnd: 654
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          89
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash_inc
        - get_from_address
        - get_to_address
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:649,24'
          Dst:             get_from_address
        - Src:             'selectors/traffic_selector.c:650,19'
          Dst:             get_to_address
        - Src:             'selectors/traffic_selector.c:651,20'
          Dst:             chunk_create
        - Src:             'selectors/traffic_selector.c:652,21'
          Dst:             chunk_create
        - Src:             'selectors/traffic_selector.c:653,22'
          Dst:             chunk_create
        - Src:             'selectors/traffic_selector.c:653,7'
          Dst:             chunk_hash_inc
        - Src:             'selectors/traffic_selector.c:652,6'
          Dst:             chunk_hash_inc
        - Src:             'selectors/traffic_selector.c:651,5'
          Dst:             chunk_hash_inc
        - Src:             'selectors/traffic_selector.c:650,4'
          Dst:             chunk_hash_inc
        - Src:             'selectors/traffic_selector.c:649,9'
          Dst:             chunk_hash_inc
    - functionName:    get_from_address
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:447,9'
          Dst:             chunk_create
    - functionName:    get_to_address
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 453
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:453,9'
          Dst:             chunk_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    to_subnet
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          171
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - calc_netbits
        - chunk_free
        - host_create_from_chunk
        - memcpy_noop
        - memset_noop
      functionUses:    0
      BranchProfiles:
        - Branch String:   'selectors/traffic_selector.c:595,2'
          Branch Sides:    []
      Callsites:
        - Src:             'selectors/traffic_selector.c:592,56'
          Dst:             calc_netbits
        - Src:             'selectors/traffic_selector.c:611,2'
          Dst:             memset_noop
        - Src:             'selectors/traffic_selector.c:615,3'
          Dst:             memcpy_noop
        - Src:             'selectors/traffic_selector.c:624,9'
          Dst:             host_create_from_chunk
        - Src:             'selectors/traffic_selector.c:625,2'
          Dst:             chunk_free
    - functionName:    calc_netbits
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          166
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    includes
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 565
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          120
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:574,10'
          Dst:             memcmp
        - Src:             'selectors/traffic_selector.c:575,5'
          Dst:             memcmp
    - functionName:    is_contained_in
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 560
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - equals
        - get_subset
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:550,40'
          Dst:             get_subset
        - Src:             'selectors/traffic_selector.c:554,7'
          Dst:             equals
    - functionName:    get_subset
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         54
      ICount:          386
      EdgeCount:       73
      CyclomaticComplexity: 21
      functionsReached:
        - calc_netbits
        - is_any
        - is_opaque
        - memcmp
        - memcpy_noop
        - traffic_selector_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:387,7'
          Dst:             is_opaque
        - Src:             'selectors/traffic_selector.c:387,26'
          Dst:             is_opaque
        - Src:             'selectors/traffic_selector.c:388,4'
          Dst:             is_opaque
        - Src:             'selectors/traffic_selector.c:388,23'
          Dst:             is_any
        - Src:             'selectors/traffic_selector.c:389,4'
          Dst:             is_opaque
        - Src:             'selectors/traffic_selector.c:389,24'
          Dst:             is_any
        - Src:             'selectors/traffic_selector.c:406,6'
          Dst:             memcmp
        - Src:             'selectors/traffic_selector.c:415,6'
          Dst:             memcmp
        - Src:             'selectors/traffic_selector.c:424,6'
          Dst:             memcmp
        - Src:             'selectors/traffic_selector.c:430,11'
          Dst:             traffic_selector_create
        - Src:             'selectors/traffic_selector.c:431,2'
          Dst:             memcpy_noop
        - Src:             'selectors/traffic_selector.c:432,2'
          Dst:             memcpy_noop
        - Src:             'selectors/traffic_selector.c:433,2'
          Dst:             calc_netbits
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - traffic_selector_cmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:441,9'
          Dst:             traffic_selector_cmp
    - functionName:    traffic_selector_cmp
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 676
      functionLinenumberEnd: 717
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          149
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - compare_int
        - memcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:685,8'
          Dst:             compare_int
        - Src:             'selectors/traffic_selector.c:692,8'
          Dst:             memcmp
        - Src:             'selectors/traffic_selector.c:698,8'
          Dst:             memcmp
        - Src:             'selectors/traffic_selector.c:704,8'
          Dst:             compare_int
        - Src:             'selectors/traffic_selector.c:710,8'
          Dst:             compare_int
        - Src:             'selectors/traffic_selector.c:716,9'
          Dst:             compare_int
    - functionName:    compare_int
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 667
      functionLinenumberEnd: 668
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_opaque
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_any
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    traffic_selector_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 888
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - char
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          200
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_address
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          96
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcpy_noop
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:530,3'
          Dst:             memset_noop
        - Src:             'selectors/traffic_selector.c:531,3'
          Dst:             memset_noop
        - Src:             'selectors/traffic_selector.c:537,3'
          Dst:             memcpy_noop
        - Src:             'selectors/traffic_selector.c:538,3'
          Dst:             memcpy_noop
    - functionName:    is_dynamic
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_host
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          165
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - memeq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:492,8'
          Dst:             memeq
        - Src:             'selectors/traffic_selector.c:493,5'
          Dst:             memeq
        - Src:             'selectors/traffic_selector.c:508,7'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    get_protocol
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_to_port
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 464
      functionLinenumberEnd: 465
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_from_port
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clone_
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 643
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          73
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
        - traffic_selector_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:636,10'
          Dst:             traffic_selector_create
        - Src:             'selectors/traffic_selector.c:641,2'
          Dst:             memcpy_noop
        - Src:             'selectors/traffic_selector.c:642,2'
          Dst:             memcpy_noop
    - functionName:    traffic_selector_icmp_code
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    traffic_selector_icmp_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    traffic_selector_create_dynamic
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 871
      functionLinenumberEnd: 880
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - char
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memset_noop
        - traffic_selector_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:872,37'
          Dst:             traffic_selector_create
        - Src:             'selectors/traffic_selector.c:875,2'
          Dst:             memset_noop
        - Src:             'selectors/traffic_selector.c:876,2'
          Dst:             memset_noop
    - functionName:    traffic_selector_create_from_cidr
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 864
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - host_create_from_subnet
        - traffic_selector_create_from_subnet
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:857,8'
          Dst:             host_create_from_subnet
        - Src:             'selectors/traffic_selector.c:860,10'
          Dst:             traffic_selector_create_from_subnet
    - functionName:    traffic_selector_create_from_subnet
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 784
      functionLinenumberEnd: 810
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - char
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          140
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - calc_range
        - memcpy_noop
        - traffic_selector_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'selectors/traffic_selector.c:789,2'
          Branch Sides:    []
      Callsites:
        - Src:             'selectors/traffic_selector.c:802,9'
          Dst:             traffic_selector_create
        - Src:             'selectors/traffic_selector.c:805,2'
          Dst:             memcpy_noop
        - Src:             'selectors/traffic_selector.c:807,2'
          Dst:             calc_range
    - functionName:    calc_range
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          134
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcpy_noop
        - memset_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:112,2'
          Dst:             memcpy_noop
        - Src:             'selectors/traffic_selector.c:113,2'
          Dst:             memset_noop
        - Src:             'selectors/traffic_selector.c:114,2'
          Dst:             memset_noop
    - functionName:    traffic_selector_create_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 845
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - char
        - int
        - 'N/A'
        - short
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - calc_netbits
        - inet_pton
        - traffic_selector_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'selectors/traffic_selector.c:823,2'
          Branch Sides:    []
      Callsites:
        - Src:             'selectors/traffic_selector.c:835,9'
          Dst:             traffic_selector_create
        - Src:             'selectors/traffic_selector.c:837,6'
          Dst:             inet_pton
        - Src:             'selectors/traffic_selector.c:838,3'
          Dst:             inet_pton
        - Src:             'selectors/traffic_selector.c:843,2'
          Dst:             calc_netbits
    - functionName:    traffic_selector_create_from_rfc3779_format
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 776
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          149
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - calc_netbits
        - memcpy_noop
        - memset_noop
        - traffic_selector_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:751,37'
          Dst:             traffic_selector_create
        - Src:             'selectors/traffic_selector.c:760,2'
          Dst:             memset_noop
        - Src:             'selectors/traffic_selector.c:761,2'
          Dst:             memset_noop
        - Src:             'selectors/traffic_selector.c:765,3'
          Dst:             memcpy_noop
        - Src:             'selectors/traffic_selector.c:771,3'
          Dst:             memcpy_noop
        - Src:             'selectors/traffic_selector.c:774,2'
          Dst:             calc_netbits
    - functionName:    traffic_selector_create_from_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 726
      functionLinenumberEnd: 743
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - char
        - int
        - 'N/A'
        - size_t
        - short
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          101
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - calc_netbits
        - memcpy_noop
        - traffic_selector_create
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:727,37'
          Dst:             traffic_selector_create
        - Src:             'selectors/traffic_selector.c:739,2'
          Dst:             memcpy_noop
        - Src:             'selectors/traffic_selector.c:740,2'
          Dst:             memcpy_noop
        - Src:             'selectors/traffic_selector.c:741,2'
          Dst:             calc_netbits
    - functionName:    print_icmp
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - print_in_hook
        - traffic_selector_icmp_code
        - traffic_selector_icmp_type
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:199,9'
          Dst:             traffic_selector_icmp_type
        - Src:             'selectors/traffic_selector.c:200,9'
          Dst:             traffic_selector_icmp_code
        - Src:             'selectors/traffic_selector.c:203,10'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:205,9'
          Dst:             print_in_hook
    - functionName:    traffic_selector_printf_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          511
      EdgeCount:       84
      CyclomaticComplexity: 23
      functionsReached:
        - getprotobynumber
        - getservbyport
        - htons
        - inet_ntop
        - is_any
        - is_opaque
        - memeq
        - memset_noop
        - print_icmp
        - print_in_hook
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector.c:226,10'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:234,15'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:242,2'
          Dst:             memset_noop
        - Src:             'selectors/traffic_selector.c:243,2'
          Dst:             memset_noop
        - Src:             'selectors/traffic_selector.c:245,3'
          Dst:             memeq
        - Src:             'selectors/traffic_selector.c:245,35'
          Dst:             memeq
        - Src:             'selectors/traffic_selector.c:247,14'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:253,4'
          Dst:             inet_ntop
        - Src:             'selectors/traffic_selector.c:257,4'
          Dst:             inet_ntop
        - Src:             'selectors/traffic_selector.c:263,5'
          Dst:             inet_ntop
        - Src:             'selectors/traffic_selector.c:267,5'
          Dst:             inet_ntop
        - Src:             'selectors/traffic_selector.c:269,15'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:273,15'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:279,15'
          Dst:             is_any
        - Src:             'selectors/traffic_selector.c:286,13'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:291,28'
          Dst:             getprotobynumber
        - Src:             'selectors/traffic_selector.c:295,15'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:300,15'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:305,14'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:311,14'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:320,16'
          Dst:             print_icmp
        - Src:             'selectors/traffic_selector.c:324,26'
          Dst:             htons
        - Src:             'selectors/traffic_selector.c:324,12'
          Dst:             getservbyport
        - Src:             'selectors/traffic_selector.c:327,17'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:331,17'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:335,12'
          Dst:             is_opaque
        - Src:             'selectors/traffic_selector.c:337,15'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:342,15'
          Dst:             print_icmp
        - Src:             'selectors/traffic_selector.c:343,15'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:344,15'
          Dst:             print_icmp
        - Src:             'selectors/traffic_selector.c:348,15'
          Dst:             print_in_hook
        - Src:             'selectors/traffic_selector.c:353,13'
          Dst:             print_in_hook
    - functionName:    getprotobynumber
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getservbyport
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clone_
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - traffic_selector_list_create_from_list
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector_list.c:242,9'
          Dst:             traffic_selector_list_create_from_list
    - functionName:    traffic_selector_list_create_from_list
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    select_
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          253
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - linked_list_create
        - remove_duplicate_ts
        - resolve_dynamic_ts
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector_list.c:162,11'
          Dst:             linked_list_create
        - Src:             'selectors/traffic_selector_list.c:163,13'
          Dst:             resolve_dynamic_ts
        - Src:             'selectors/traffic_selector_list.c:220,2'
          Dst:             remove_duplicate_ts
    - functionName:    resolve_dynamic_ts
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          254
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector_list.c:72,11'
          Dst:             linked_list_create
    - functionName:    remove_duplicate_ts
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          158
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - remove_duplicate_ts
        - resolve_dynamic_ts
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector_list.c:149,11'
          Dst:             resolve_dynamic_ts
        - Src:             'selectors/traffic_selector_list.c:150,2'
          Dst:             remove_duplicate_ts
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    traffic_selector_list_create_from_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add
        - traffic_selector_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector_list.c:282,34'
          Dst:             traffic_selector_list_create
        - Src:             'selectors/traffic_selector_list.c:287,3'
          Dst:             add
    - functionName:    traffic_selector_list_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/selectors/traffic_selector_list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - traffic_selector_list_create_from_list
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'selectors/traffic_selector_list.c:273,48'
          Dst:             linked_list_create
        - Src:             'selectors/traffic_selector_list.c:273,9'
          Dst:             traffic_selector_list_create_from_list
    - functionName:    destroy_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1115
      functionLinenumberEnd: 1117
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_settings
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1116,2'
          Dst:             destroy_settings
    - functionName:    destroy_settings
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1100
      functionLinenumberEnd: 1105
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_destroy_function
        - settings_section_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1101,2'
          Dst:             settings_section_destroy
        - Src:             'settings/settings.c:1102,2'
          Dst:             array_destroy_function
    - functionName:    _cb_clear_content
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1088
      functionLinenumberEnd: 1094
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memwipe
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1091,16'
          Dst:             strlen
        - Src:             'settings/settings.c:1091,3'
          Dst:             memwipe
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1109
      functionLinenumberEnd: 1111
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - destroy_settings
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1110,2'
          Dst:             destroy_settings
    - functionName:    load_string_section
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1067
      functionLinenumberEnd: 1084
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ensure_section
        - extend_section
        - load_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1071,12'
          Dst:             load_internal
        - Src:             'settings/settings.c:1080,11'
          Dst:             ensure_section
        - Src:             'settings/settings.c:1083,9'
          Dst:             extend_section
    - functionName:    load_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 974
      functionLinenumberEnd: 992
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - settings_parser_parse_file
        - settings_parser_parse_string
        - settings_section_create
        - settings_section_destroy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:980,10'
          Dst:             settings_section_create
        - Src:             'settings/settings.c:983,12'
          Dst:             settings_section_create
        - Src:             'settings/settings.c:984,20'
          Dst:             settings_parser_parse_string
        - Src:             'settings/settings.c:985,8'
          Dst:             settings_parser_parse_file
        - Src:             'settings/settings.c:988,3'
          Dst:             settings_section_destroy
    - functionName:    ensure_section
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_section_buffered
        - snprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:303,6'
          Dst:             snprintf
        - Src:             'settings/settings.c:307,9'
          Dst:             find_section_buffered
    - functionName:    extend_section
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1004
      functionLinenumberEnd: 1011
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - settings_section_destroy
        - settings_section_extend
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1007,3'
          Dst:             settings_section_extend
        - Src:             'settings/settings.c:1010,2'
          Dst:             settings_section_destroy
    - functionName:    find_section_buffered
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          144
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - array_bsearch
        - find_section_buffered
        - print_key
        - settings_section_add
        - settings_section_create
        - settings_section_find
        - strchr
        - strdup
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:164,8'
          Dst:             strchr
        - Src:             'settings/settings.c:170,7'
          Dst:             print_key
        - Src:             'settings/settings.c:174,7'
          Dst:             strlen
        - Src:             'settings/settings.c:178,11'
          Dst:             array_bsearch
        - Src:             'settings/settings.c:178,11'
          Dst:             settings_section_find
        - Src:             'settings/settings.c:183,36'
          Dst:             strdup
        - Src:             'settings/settings.c:183,12'
          Dst:             settings_section_create
        - Src:             'settings/settings.c:184,4'
          Dst:             settings_section_add
        - Src:             'settings/settings.c:189,10'
          Dst:             find_section_buffered
    - functionName:    print_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          184
      EdgeCount:       29
      CyclomaticComplexity: 6
      functionsReached:
        - memchr
        - vsnprintf
      functionUses:    5
      BranchProfiles:
        - Branch String:   'settings/settings.c:105,3'
          Branch Sides:    []
      Callsites:
        - Src:             'settings/settings.c:99,9'
          Dst:             memchr
        - Src:             'settings/settings.c:125,8'
          Dst:             vsnprintf
    - functionName:    memchr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    load_files_section
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1031
      functionLinenumberEnd: 1048
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ensure_section
        - extend_section
        - load_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1035,12'
          Dst:             load_internal
        - Src:             'settings/settings.c:1044,11'
          Dst:             ensure_section
        - Src:             'settings/settings.c:1047,9'
          Dst:             extend_section
    - functionName:    add_fallback
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 950
      functionLinenumberEnd: 967
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          85
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ensure_section
        - settings_reference_add
        - strdup
        - vsnprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:957,12'
          Dst:             ensure_section
        - Src:             'settings/settings.c:961,17'
          Dst:             vsnprintf
        - Src:             'settings/settings.c:963,35'
          Dst:             strdup
        - Src:             'settings/settings.c:963,3'
          Dst:             settings_reference_add
    - functionName:    _cb_kv_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          147
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kv_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 917
      functionLinenumberEnd: 919
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_enumerator
        - enumerator_create_filter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:918,34'
          Dst:             array_create_enumerator
        - Src:             'settings/settings.c:918,9'
          Dst:             enumerator_create_filter
    - functionName:    create_key_value_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 924
      functionLinenumberEnd: 946
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          92
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
        - enumerator_create_empty
        - enumerator_create_nested
        - find_sections
        - hashtable_create
        - hashtable_equals_str
        - hashtable_hash_str
        - kv_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:931,13'
          Dst:             find_sections
        - Src:             'settings/settings.c:937,10'
          Dst:             enumerator_create_empty
        - Src:             'settings/settings.c:939,2'
          Dst:             hashtable_create
        - Src:             'settings/settings.c:939,2'
          Dst:             hashtable_hash_str
        - Src:             'settings/settings.c:939,2'
          Dst:             hashtable_equals_str
        - Src:             'settings/settings.c:944,34'
          Dst:             array_create_enumerator
        - Src:             'settings/settings.c:944,9'
          Dst:             enumerator_create_nested
        - Src:             'settings/settings.c:944,9'
          Dst:             kv_enumerator
    - functionName:    find_sections
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_sections_buffered
        - snprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:320,6'
          Dst:             snprintf
        - Src:             'settings/settings.c:324,2'
          Dst:             find_sections_buffered
    - functionName:    _cb_enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 827
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:825,2'
          Dst:             array_destroy
    - functionName:    find_sections_buffered
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          259
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached:
        - array_bsearch
        - array_count
        - array_destroy
        - array_get
        - array_insert_create
        - find_sections_buffered
        - has_section
        - print_key
        - resolve_reference
        - settings_section_find
        - strchr
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:233,8'
          Dst:             strchr
        - Src:             'settings/settings.c:238,7'
          Dst:             print_key
        - Src:             'settings/settings.c:246,7'
          Dst:             strlen
        - Src:             'settings/settings.c:252,3'
          Dst:             array_bsearch
        - Src:             'settings/settings.c:252,3'
          Dst:             settings_section_find
        - Src:             'settings/settings.c:258,4'
          Dst:             find_sections_buffered
        - Src:             'settings/settings.c:261,13'
          Dst:             has_section
        - Src:             'settings/settings.c:264,4'
          Dst:             array_insert_create
        - Src:             'settings/settings.c:267,20'
          Dst:             array_count
        - Src:             'settings/settings.c:269,5'
          Dst:             array_get
        - Src:             'settings/settings.c:270,5'
          Dst:             resolve_reference
        - Src:             'settings/settings.c:277,19'
          Dst:             array_count
        - Src:             'settings/settings.c:279,4'
          Dst:             array_get
        - Src:             'settings/settings.c:281,4'
          Dst:             resolve_reference
        - Src:             'settings/settings.c:282,20'
          Dst:             array_count
        - Src:             'settings/settings.c:284,5'
          Dst:             array_get
        - Src:             'settings/settings.c:287,5'
          Dst:             find_sections_buffered
        - Src:             'settings/settings.c:290,4'
          Dst:             array_destroy
    - functionName:    has_section
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_count
        - array_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:138,18'
          Dst:             array_count
        - Src:             'settings/settings.c:140,3'
          Dst:             array_get
    - functionName:    resolve_reference
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_sections
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:210,2'
          Dst:             find_sections
    - functionName:    _cb_section_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 831
      functionLinenumberEnd: 848
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          106
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    section_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 855
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create_enumerator
        - enumerator_create_filter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:857,8'
          Dst:             array_create_enumerator
        - Src:             'settings/settings.c:856,9'
          Dst:             enumerator_create_filter
    - functionName:    create_section_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 863
      functionLinenumberEnd: 885
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          92
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
        - enumerator_create_empty
        - enumerator_create_nested
        - find_sections
        - hashtable_create
        - hashtable_equals_str
        - hashtable_hash_str
        - section_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:870,13'
          Dst:             find_sections
        - Src:             'settings/settings.c:876,10'
          Dst:             enumerator_create_empty
        - Src:             'settings/settings.c:878,2'
          Dst:             hashtable_create
        - Src:             'settings/settings.c:878,2'
          Dst:             hashtable_hash_str
        - Src:             'settings/settings.c:878,2'
          Dst:             hashtable_equals_str
        - Src:             'settings/settings.c:883,34'
          Dst:             array_create_enumerator
        - Src:             'settings/settings.c:883,9'
          Dst:             enumerator_create_nested
        - Src:             'settings/settings.c:883,9'
          Dst:             section_enumerator
    - functionName:    set_default_str
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 806
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_value
        - set_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:795,8'
          Dst:             find_value
        - Src:             'settings/settings.c:801,3'
          Dst:             set_value
    - functionName:    find_value
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_destroy
        - find_value_buffered
        - snprintf
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:517,6'
          Dst:             snprintf
        - Src:             'settings/settings.c:522,7'
          Dst:             find_value_buffered
        - Src:             'settings/settings.c:529,2'
          Dst:             array_destroy
    - functionName:    set_value
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 554
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - find_value_buffered
        - settings_kv_set
        - snprintf
        - strdupnull
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:542,6'
          Dst:             snprintf
        - Src:             'settings/settings.c:547,7'
          Dst:             find_value_buffered
        - Src:             'settings/settings.c:551,23'
          Dst:             strdupnull
        - Src:             'settings/settings.c:551,3'
          Dst:             settings_kv_set
    - functionName:    find_value_buffered
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      'N/A'
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          327
      EdgeCount:       80
      CyclomaticComplexity: 22
      functionsReached:
        - array_bsearch
        - array_count
        - array_destroy
        - array_get
        - array_insert_create
        - find_value_buffered
        - has_section
        - print_key
        - resolve_reference
        - settings_kv_add
        - settings_kv_create
        - settings_kv_find
        - settings_section_add
        - settings_section_create
        - settings_section_find
        - strchr
        - strdup
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:352,8'
          Dst:             strchr
        - Src:             'settings/settings.c:356,8'
          Dst:             print_key
        - Src:             'settings/settings.c:362,8'
          Dst:             strlen
        - Src:             'settings/settings.c:366,12'
          Dst:             array_bsearch
        - Src:             'settings/settings.c:366,12'
          Dst:             settings_section_find
        - Src:             'settings/settings.c:371,37'
          Dst:             strdup
        - Src:             'settings/settings.c:371,13'
          Dst:             settings_section_create
        - Src:             'settings/settings.c:372,5'
          Dst:             settings_section_add
        - Src:             'settings/settings.c:377,9'
          Dst:             find_value_buffered
        - Src:             'settings/settings.c:385,4'
          Dst:             array_insert_create
        - Src:             'settings/settings.c:387,8'
          Dst:             print_key
        - Src:             'settings/settings.c:391,7'
          Dst:             array_bsearch
        - Src:             'settings/settings.c:391,7'
          Dst:             settings_kv_find
        - Src:             'settings/settings.c:395,29'
          Dst:             strdup
        - Src:             'settings/settings.c:395,10'
          Dst:             settings_kv_create
        - Src:             'settings/settings.c:396,5'
          Dst:             settings_kv_add
        - Src:             'settings/settings.c:403,26'
          Dst:             array_count
        - Src:             'settings/settings.c:405,4'
          Dst:             array_get
        - Src:             'settings/settings.c:407,4'
          Dst:             resolve_reference
        - Src:             'settings/settings.c:408,27'
          Dst:             array_count
        - Src:             'settings/settings.c:410,5'
          Dst:             array_get
        - Src:             'settings/settings.c:412,10'
          Dst:             has_section
        - Src:             'settings/settings.c:416,11'
          Dst:             find_value_buffered
        - Src:             'settings/settings.c:420,4'
          Dst:             array_destroy
    - functionName:    strdupnull
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:79,13'
          Dst:             strdup
    - functionName:    set_time
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 777
      functionLinenumberEnd: 786
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - set_value
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:781,6'
          Dst:             snprintf
        - Src:             'settings/settings.c:783,3'
          Dst:             set_value
    - functionName:    set_double
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 764
      functionLinenumberEnd: 773
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - set_value
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:768,6'
          Dst:             snprintf
        - Src:             'settings/settings.c:770,3'
          Dst:             set_value
    - functionName:    set_int
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 751
      functionLinenumberEnd: 760
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - set_value
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:755,6'
          Dst:             snprintf
        - Src:             'settings/settings.c:757,3'
          Dst:             set_value
    - functionName:    set_bool
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 747
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:745,2'
          Dst:             set_value
    - functionName:    set_str
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 732
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:735,2'
          Dst:             set_value
    - functionName:    get_time
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 720
      functionLinenumberEnd: 727
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_value
        - settings_value_as_time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:725,10'
          Dst:             find_value
        - Src:             'settings/settings.c:727,9'
          Dst:             settings_value_as_time
    - functionName:    settings_value_as_time
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 716
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - timespan_from_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:711,6'
          Dst:             timespan_from_string
    - functionName:    get_double
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 694
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      double
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_value
        - settings_value_as_double
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:699,10'
          Dst:             find_value
        - Src:             'settings/settings.c:701,9'
          Dst:             settings_value_as_double
    - functionName:    settings_value_as_double
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 676
      functionLinenumberEnd: 690
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - 'N/A'
        - double
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          68
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - strtod
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:682,3'
          Dst:             __errno_location
        - Src:             'settings/settings.c:683,10'
          Dst:             strtod
        - Src:             'settings/settings.c:684,7'
          Dst:             __errno_location
    - functionName:    strtod
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_int
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_value
        - settings_value_as_int
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:642,10'
          Dst:             find_value
        - Src:             'settings/settings.c:644,9'
          Dst:             settings_value_as_int
    - functionName:    settings_value_as_int
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 633
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          99
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - strtoul
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:621,3'
          Dst:             __errno_location
        - Src:             'settings/settings.c:626,12'
          Dst:             strtoul
        - Src:             'settings/settings.c:627,7'
          Dst:             __errno_location
    - functionName:    get_bool
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 607
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_value
        - settings_value_as_bool
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:605,10'
          Dst:             find_value
        - Src:             'settings/settings.c:607,9'
          Dst:             settings_value_as_bool
    - functionName:    settings_value_as_bool
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          94
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - strcaseeq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:579,7'
          Dst:             strcaseeq
        - Src:             'settings/settings.c:580,4'
          Dst:             strcaseeq
        - Src:             'settings/settings.c:581,4'
          Dst:             strcaseeq
        - Src:             'settings/settings.c:582,4'
          Dst:             strcaseeq
        - Src:             'settings/settings.c:586,12'
          Dst:             strcaseeq
        - Src:             'settings/settings.c:587,6'
          Dst:             strcaseeq
        - Src:             'settings/settings.c:588,6'
          Dst:             strcaseeq
        - Src:             'settings/settings.c:589,6'
          Dst:             strcaseeq
    - functionName:    strcaseeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:55,32'
          Dst:             strcasecmp
    - functionName:    get_str
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 570
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:563,10'
          Dst:             find_value
    - functionName:    settings_create_base
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1120
      functionLinenumberEnd: 1150
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          92
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create
        - rwlock_create
        - settings_section_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1123,2'
          Dst:             settings_section_create
        - Src:             'settings/settings.c:1123,2'
          Dst:             array_create
        - Src:             'settings/settings.c:1123,2'
          Dst:             rwlock_create
    - functionName:    load_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1052
      functionLinenumberEnd: 1063
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - extend_section
        - load_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1055,12'
          Dst:             load_internal
        - Src:             'settings/settings.c:1062,9'
          Dst:             extend_section
    - functionName:    load_files
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1016
      functionLinenumberEnd: 1027
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - extend_section
        - load_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1019,12'
          Dst:             load_internal
        - Src:             'settings/settings.c:1026,9'
          Dst:             extend_section
    - functionName:    settings_create_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1169
      functionLinenumberEnd: 1174
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - load_string
        - settings_create_base
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1170,29'
          Dst:             settings_create_base
        - Src:             'settings/settings.c:1172,2'
          Dst:             load_string
    - functionName:    settings_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1157
      functionLinenumberEnd: 1162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - load_files
        - settings_create_base
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:1158,29'
          Dst:             settings_create_base
        - Src:             'settings/settings.c:1160,2'
          Dst:             load_files
    - functionName:    settings_value_as_uint64
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          98
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - strtoull
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:658,3'
          Dst:             __errno_location
        - Src:             'settings/settings.c:663,12'
          Dst:             strtoull
        - Src:             'settings/settings.c:664,7'
          Dst:             __errno_location
    - functionName:    remove_value_buffered
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          180
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - array_bsearch
        - array_count
        - array_get
        - array_remove
        - print_key
        - remove_value_buffered
        - settings_kv_destroy
        - settings_kv_find
        - settings_section_find
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:442,8'
          Dst:             strchr
        - Src:             'settings/settings.c:448,7'
          Dst:             print_key
        - Src:             'settings/settings.c:452,7'
          Dst:             strlen
        - Src:             'settings/settings.c:458,7'
          Dst:             array_bsearch
        - Src:             'settings/settings.c:458,7'
          Dst:             settings_section_find
        - Src:             'settings/settings.c:461,4'
          Dst:             remove_value_buffered
        - Src:             'settings/settings.c:466,9'
          Dst:             array_bsearch
        - Src:             'settings/settings.c:466,9'
          Dst:             settings_kv_find
        - Src:             'settings/settings.c:469,4'
          Dst:             array_remove
        - Src:             'settings/settings.c:470,20'
          Dst:             array_count
        - Src:             'settings/settings.c:472,5'
          Dst:             array_get
        - Src:             'settings/settings.c:475,6'
          Dst:             array_remove
        - Src:             'settings/settings.c:476,6'
          Dst:             settings_kv_destroy
    - functionName:    settings_remove_value
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - remove_value_buffered
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings.c:493,6'
          Dst:             snprintf
        - Src:             'settings/settings.c:500,2'
          Dst:             remove_value_buffered
    - functionName:    settings_section_sort
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:376,9'
          Dst:             strcmp
    - functionName:    section_purge
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          178
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - array_bsearch
        - array_count
        - array_destroy
        - array_destroy_function
        - array_get
        - array_remove
        - kv_destroy
        - ref_destroy
        - section_purge
        - settings_section_destroy
        - settings_section_find
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:209,2'
          Dst:             array_destroy_function
        - Src:             'settings/settings_types.c:209,2'
          Dst:             kv_destroy
        - Src:             'settings/settings_types.c:211,2'
          Dst:             array_destroy
        - Src:             'settings/settings_types.c:214,11'
          Dst:             array_count
        - Src:             'settings/settings_types.c:216,3'
          Dst:             array_get
        - Src:             'settings/settings_types.c:219,4'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:220,4'
          Dst:             ref_destroy
        - Src:             'settings/settings_types.c:223,7'
          Dst:             array_count
        - Src:             'settings/settings_types.c:225,3'
          Dst:             array_destroy
        - Src:             'settings/settings_types.c:228,11'
          Dst:             array_count
        - Src:             'settings/settings_types.c:230,3'
          Dst:             array_get
        - Src:             'settings/settings_types.c:231,7'
          Dst:             section_purge
        - Src:             'settings/settings_types.c:233,4'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:234,10'
          Dst:             array_bsearch
        - Src:             'settings/settings_types.c:234,10'
          Dst:             settings_section_find
        - Src:             'settings/settings_types.c:236,4'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:237,4'
          Dst:             settings_section_destroy
        - Src:             'settings/settings_types.c:242,31'
          Dst:             array_count
    - functionName:    kv_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_kv_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:70,2'
          Dst:             settings_kv_destroy
    - functionName:    ref_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_section_find
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:367,9'
          Dst:             strcmp
    - functionName:    settings_section_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy
        - array_destroy_function
        - kv_destroy
        - ref_destroy
        - section_destroy
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:84,2'
          Dst:             array_destroy_function
        - Src:             'settings/settings_types.c:84,2'
          Dst:             section_destroy
        - Src:             'settings/settings_types.c:85,2'
          Dst:             array_destroy
        - Src:             'settings/settings_types.c:86,2'
          Dst:             array_destroy_function
        - Src:             'settings/settings_types.c:86,2'
          Dst:             kv_destroy
        - Src:             'settings/settings_types.c:87,2'
          Dst:             array_destroy
        - Src:             'settings/settings_types.c:88,2'
          Dst:             array_destroy_function
        - Src:             'settings/settings_types.c:88,2'
          Dst:             ref_destroy
    - functionName:    section_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_section_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:65,2'
          Dst:             settings_section_destroy
    - functionName:    settings_kv_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_insert
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:41,3'
          Dst:             array_insert
    - functionName:    settings_section_extend
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          343
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - add_section
        - array_bsearch
        - array_create_enumerator
        - array_destroy
        - array_insert
        - array_insert_create
        - array_remove
        - array_remove_at
        - array_sort
        - ref_destroy
        - section_purge
        - settings_kv_add
        - settings_kv_destroy
        - settings_kv_find
        - settings_kv_sort
        - settings_reference_add
        - settings_section_destroy
        - settings_section_find
        - settings_section_sort
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:262,16'
          Dst:             array_create_enumerator
        - Src:             'settings/settings_types.c:265,8'
          Dst:             array_bsearch
        - Src:             'settings/settings_types.c:265,8'
          Dst:             settings_section_find
        - Src:             'settings/settings_types.c:268,11'
          Dst:             array_bsearch
        - Src:             'settings/settings_types.c:268,11'
          Dst:             settings_section_find
        - Src:             'settings/settings_types.c:270,9'
          Dst:             section_purge
        - Src:             'settings/settings_types.c:272,6'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:273,6'
          Dst:             array_remove_at
        - Src:             'settings/settings_types.c:274,6'
          Dst:             settings_section_destroy
        - Src:             'settings/settings_types.c:279,5'
          Dst:             array_remove_at
        - Src:             'settings/settings_types.c:280,5'
          Dst:             array_insert_create
        - Src:             'settings/settings_types.c:281,5'
          Dst:             array_sort
        - Src:             'settings/settings_types.c:281,5'
          Dst:             settings_section_sort
        - Src:             'settings/settings_types.c:286,10'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:288,8'
          Dst:             array_bsearch
        - Src:             'settings/settings_types.c:288,8'
          Dst:             settings_kv_find
        - Src:             'settings/settings_types.c:291,11'
          Dst:             array_bsearch
        - Src:             'settings/settings_types.c:291,11'
          Dst:             settings_kv_find
        - Src:             'settings/settings_types.c:292,5'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:293,5'
          Dst:             settings_kv_destroy
        - Src:             'settings/settings_types.c:297,5'
          Dst:             array_insert_create
        - Src:             'settings/settings_types.c:298,5'
          Dst:             array_sort
        - Src:             'settings/settings_types.c:298,5'
          Dst:             settings_kv_sort
        - Src:             'settings/settings_types.c:302,16'
          Dst:             array_create_enumerator
        - Src:             'settings/settings_types.c:309,4'
          Dst:             array_remove_at
        - Src:             'settings/settings_types.c:310,4'
          Dst:             ref_destroy
        - Src:             'settings/settings_types.c:315,9'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:317,9'
          Dst:             array_bsearch
        - Src:             'settings/settings_types.c:317,9'
          Dst:             settings_section_find
        - Src:             'settings/settings_types.c:323,4'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:324,4'
          Dst:             array_insert
        - Src:             'settings/settings_types.c:326,9'
          Dst:             array_bsearch
        - Src:             'settings/settings_types.c:326,9'
          Dst:             settings_section_find
        - Src:             'settings/settings_types.c:328,3'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:329,3'
          Dst:             add_section
        - Src:             'settings/settings_types.c:332,9'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:334,9'
          Dst:             array_bsearch
        - Src:             'settings/settings_types.c:334,9'
          Dst:             settings_kv_find
        - Src:             'settings/settings_types.c:339,4'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:340,4'
          Dst:             array_insert
        - Src:             'settings/settings_types.c:342,9'
          Dst:             array_bsearch
        - Src:             'settings/settings_types.c:342,9'
          Dst:             settings_kv_find
        - Src:             'settings/settings_types.c:343,3'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:344,3'
          Dst:             settings_kv_add
        - Src:             'settings/settings_types.c:347,9'
          Dst:             array_remove
        - Src:             'settings/settings_types.c:353,32'
          Dst:             strdup
        - Src:             'settings/settings_types.c:353,3'
          Dst:             settings_reference_add
        - Src:             'settings/settings_types.c:354,3'
          Dst:             ref_destroy
        - Src:             'settings/settings_types.c:356,2'
          Dst:             array_destroy
        - Src:             'settings/settings_types.c:357,2'
          Dst:             array_destroy
    - functionName:    settings_kv_find
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:386,9'
          Dst:             strcmp
    - functionName:    settings_kv_sort
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:395,9'
          Dst:             strcmp
    - functionName:    add_section
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_bsearch
        - array_insert_create
        - array_sort
        - settings_section_destroy
        - settings_section_extend
        - settings_section_find
        - settings_section_sort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:177,6'
          Dst:             array_bsearch
        - Src:             'settings/settings_types.c:177,6'
          Dst:             settings_section_find
        - Src:             'settings/settings_types.c:180,3'
          Dst:             array_insert_create
        - Src:             'settings/settings_types.c:181,3'
          Dst:             array_sort
        - Src:             'settings/settings_types.c:181,3'
          Dst:             settings_section_sort
        - Src:             'settings/settings_types.c:182,3'
          Dst:             array_insert_create
        - Src:             'settings/settings_types.c:186,3'
          Dst:             settings_section_extend
        - Src:             'settings/settings_types.c:187,3'
          Dst:             settings_section_destroy
    - functionName:    settings_kv_add
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_bsearch
        - array_insert_create
        - array_sort
        - settings_kv_destroy
        - settings_kv_find
        - settings_kv_set
        - settings_kv_sort
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:125,6'
          Dst:             array_bsearch
        - Src:             'settings/settings_types.c:125,6'
          Dst:             settings_kv_find
        - Src:             'settings/settings_types.c:127,3'
          Dst:             array_insert_create
        - Src:             'settings/settings_types.c:128,3'
          Dst:             array_sort
        - Src:             'settings/settings_types.c:128,3'
          Dst:             settings_kv_sort
        - Src:             'settings/settings_types.c:129,3'
          Dst:             array_insert_create
        - Src:             'settings/settings_types.c:133,3'
          Dst:             settings_kv_set
        - Src:             'settings/settings_types.c:135,3'
          Dst:             settings_kv_destroy
    - functionName:    settings_reference_add
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          123
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - array_count
        - array_get
        - array_insert_create
        - streq
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:147,18'
          Dst:             array_count
        - Src:             'settings/settings_types.c:149,3'
          Dst:             array_get
        - Src:             'settings/settings_types.c:154,38'
          Dst:             streq
        - Src:             'settings/settings_types.c:165,2'
          Dst:             array_insert_create
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    settings_kv_set
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          84
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - array_insert
        - streq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:98,28'
          Dst:             streq
        - Src:             'settings/settings_types.c:109,3'
          Dst:             array_insert
    - functionName:    settings_section_add
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_section
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_types.c:197,2'
          Dst:             add_section
    - functionName:    settings_section_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_kv_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    yytnamerr
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 986
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          137
      EdgeCount:       32
      CyclomaticComplexity: 6
      functionsReached:
        - stpcpy
        - strlen
      functionUses:    3
      BranchProfiles:
        - Branch String:   'settings/settings_parser.c:955,9'
          Branch Sides:    []
      Callsites:
        - Src:             'settings/settings_parser.c:983,12'
          Dst:             stpcpy
        - Src:             'settings/settings_parser.c:985,12'
          Dst:             strlen
    - functionName:    stpcpy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    yy_symbol_value_print
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 801
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_parse_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          104
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - array_destroy
        - array_insert_create
        - getenv
        - parser_helper_create
        - settings_parser_lex_destroy
        - settings_parser_lex_init_extra
        - settings_parser_load_string
        - settings_parser_parse
        - settings_parser_set_debug
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_parser.y:347,2'
          Dst:             array_insert_create
        - Src:             'settings/settings_parser.y:348,11'
          Dst:             parser_helper_create
        - Src:             'settings/settings_parser.y:350,6'
          Dst:             settings_parser_lex_init_extra
        - Src:             'settings/settings_parser.y:353,3'
          Dst:             array_destroy
        - Src:             'settings/settings_parser.y:356,2'
          Dst:             settings_parser_load_string
        - Src:             'settings/settings_parser.y:357,6'
          Dst:             getenv
        - Src:             'settings/settings_parser.y:360,3'
          Dst:             settings_parser_set_debug
        - Src:             'settings/settings_parser.y:362,12'
          Dst:             settings_parser_parse
        - Src:             'settings/settings_parser.y:367,2'
          Dst:             array_destroy
        - Src:             'settings/settings_parser.y:368,2'
          Dst:             settings_parser_lex_destroy
    - functionName:    settings_parser_parse
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1211
      functionLinenumberEnd: 1789
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         224
      ICount:          1275
      EdgeCount:       283
      CyclomaticComplexity: 61
      functionsReached:
        - add_references
        - add_section
        - add_setting
        - array_create
        - array_destroy
        - array_insert
        - asprintf
        - fprintf
        - pop_section
        - push_section
        - settings_kv_create
        - settings_parser_error
        - yy_reduce_print
        - yy_stack_print
        - yy_symbol_print
        - yydestruct
        - yylex
        - yysyntax_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings/settings_parser.c:1462,3'
          Branch Sides:    []
      Callsites:
        - Src:             'settings/settings_parser.c:1273,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1295,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1355,7'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1387,7'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1388,16'
          Dst:             yylex
        - Src:             'settings/settings_parser.c:1394,7'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1399,7'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1399,7'
          Dst:             yy_symbol_print
        - Src:             'settings/settings_parser.c:1399,7'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1422,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1422,3'
          Dst:             yy_symbol_print
        - Src:             'settings/settings_parser.c:1422,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1461,3'
          Dst:             yy_reduce_print
        - Src:             'settings/settings_parser.y:129,3'
          Dst:             add_section
        - Src:             'settings/settings_parser.y:133,3'
          Dst:             add_setting
        - Src:             'settings/settings_parser.y:140,3'
          Dst:             pop_section
        - Src:             'settings/settings_parser.y:148,17'
          Dst:             push_section
        - Src:             'settings/settings_parser.y:153,17'
          Dst:             push_section
        - Src:             'settings/settings_parser.y:154,3'
          Dst:             add_references
        - Src:             'settings/settings_parser.y:155,3'
          Dst:             array_destroy
        - Src:             'settings/settings_parser.y:162,18'
          Dst:             array_create
        - Src:             'settings/settings_parser.y:163,3'
          Dst:             array_insert
        - Src:             'settings/settings_parser.y:167,3'
          Dst:             array_insert
        - Src:             'settings/settings_parser.y:175,16'
          Dst:             settings_kv_create
        - Src:             'settings/settings_parser.y:180,16'
          Dst:             settings_kv_create
        - Src:             'settings/settings_parser.y:188,7'
          Dst:             asprintf
        - Src:             'settings/settings_parser.c:1574,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1574,3'
          Dst:             yy_symbol_print
        - Src:             'settings/settings_parser.c:1574,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1578,3'
          Dst:             yy_stack_print
        - Src:             'settings/settings_parser.c:1616,33'
          Dst:             yysyntax_error
        - Src:             'settings/settings_parser.c:1632,41'
          Dst:             yysyntax_error
        - Src:             'settings/settings_parser.c:1636,9'
          Dst:             settings_parser_error
        - Src:             'settings/settings_parser.c:1659,11'
          Dst:             yydestruct
        - Src:             'settings/settings_parser.c:1683,3'
          Dst:             yy_stack_print
        - Src:             'settings/settings_parser.c:1713,7'
          Dst:             yydestruct
        - Src:             'settings/settings_parser.c:1717,7'
          Dst:             yy_stack_print
        - Src:             'settings/settings_parser.c:1726,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1726,3'
          Dst:             yy_symbol_print
        - Src:             'settings/settings_parser.c:1726,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1753,3'
          Dst:             settings_parser_error
        - Src:             'settings/settings_parser.c:1768,7'
          Dst:             yydestruct
        - Src:             'settings/settings_parser.c:1774,3'
          Dst:             yy_stack_print
        - Src:             'settings/settings_parser.c:1777,7'
          Dst:             yydestruct
    - functionName:    yylex
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_parser_lex
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_parser.y:61,9'
          Dst:             settings_parser_lex
    - functionName:    yy_symbol_print
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 810
      functionLinenumberEnd: 816
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fprintf
        - yy_symbol_value_print
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_parser.c:811,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:814,3'
          Dst:             yy_symbol_value_print
        - Src:             'settings/settings_parser.c:815,3'
          Dst:             fprintf
    - functionName:    yy_reduce_print
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 848
      functionLinenumberEnd: 864
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          86
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - fprintf
        - yy_symbol_print
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_parser.c:852,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:857,7'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:858,7'
          Dst:             yy_symbol_print
        - Src:             'settings/settings_parser.c:862,7'
          Dst:             fprintf
    - functionName:    add_section
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_get
        - settings_section_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_parser.y:250,2'
          Dst:             array_get
        - Src:             'settings/settings_parser.y:251,2'
          Dst:             settings_section_add
    - functionName:    add_setting
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_get
        - settings_kv_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_parser.y:262,2'
          Dst:             array_get
        - Src:             'settings/settings_parser.y:263,2'
          Dst:             settings_kv_add
    - functionName:    pop_section
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_remove
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_parser.y:238,2'
          Dst:             array_remove
    - functionName:    push_section
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_insert
        - settings_section_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_parser.y:225,12'
          Dst:             settings_section_create
        - Src:             'settings/settings_parser.y:226,2'
          Dst:             array_insert
    - functionName:    add_references
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_create_enumerator
        - array_get
        - array_remove_at
        - settings_reference_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_parser.y:276,2'
          Dst:             array_get
        - Src:             'settings/settings_parser.y:278,9'
          Dst:             array_create_enumerator
        - Src:             'settings/settings_parser.y:281,3'
          Dst:             settings_reference_add
        - Src:             'settings/settings_parser.y:282,3'
          Dst:             array_remove_at
    - functionName:    yy_stack_print
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 825
      functionLinenumberEnd: 833
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          43
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - fprintf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_parser.c:826,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:830,7'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:832,3'
          Dst:             fprintf
    - functionName:    yysyntax_error
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1129
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          398
      EdgeCount:       86
      CyclomaticComplexity: 20
      functionsReached:
        - strlen
        - yytnamerr
      functionUses:    2
      BranchProfiles:
        - Branch String:   'settings/settings_parser.c:1075,3'
          Branch Sides:    []
      Callsites:
        - Src:             'settings/settings_parser.c:1038,29'
          Dst:             yytnamerr
        - Src:             'settings/settings_parser.c:1065,32'
          Dst:             yytnamerr
        - Src:             'settings/settings_parser.c:1094,37'
          Dst:             strlen
        - Src:             'settings/settings_parser.c:1119,18'
          Dst:             yytnamerr
    - functionName:    settings_parser_error
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    yydestruct
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1138
      functionLinenumberEnd: 1200
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          125
      EdgeCount:       22
      CyclomaticComplexity: 3
      functionsReached:
        - array_destroy_function
        - fprintf
        - pop_section
        - settings_kv_destroy
        - settings_section_destroy
        - yy_symbol_print
      functionUses:    4
      BranchProfiles:
        - Branch String:   'settings/settings_parser.c:1146,3'
          Branch Sides:    []
      Callsites:
        - Src:             'settings/settings_parser.c:1143,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.c:1143,3'
          Dst:             yy_symbol_print
        - Src:             'settings/settings_parser.c:1143,3'
          Dst:             fprintf
        - Src:             'settings/settings_parser.y:107,15'
          Dst:             pop_section
        - Src:             'settings/settings_parser.y:107,33'
          Dst:             settings_section_destroy
        - Src:             'settings/settings_parser.y:107,15'
          Dst:             pop_section
        - Src:             'settings/settings_parser.y:107,33'
          Dst:             settings_section_destroy
        - Src:             'settings/settings_parser.y:109,15'
          Dst:             array_destroy_function
        - Src:             'settings/settings_parser.y:108,15'
          Dst:             settings_kv_destroy
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    settings_parser_parse_file
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_parser.y'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          138
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - array_destroy
        - array_insert_create
        - getenv
        - parser_helper_create
        - settings_parser_lex_destroy
        - settings_parser_lex_init_extra
        - settings_parser_open_next_file
        - settings_parser_parse
        - settings_parser_set_debug
        - streq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_parser.y:297,2'
          Dst:             array_insert_create
        - Src:             'settings/settings_parser.y:298,11'
          Dst:             parser_helper_create
        - Src:             'settings/settings_parser.y:300,6'
          Dst:             settings_parser_lex_init_extra
        - Src:             'settings/settings_parser.y:303,3'
          Dst:             array_destroy
        - Src:             'settings/settings_parser.y:307,7'
          Dst:             settings_parser_open_next_file
        - Src:             'settings/settings_parser.y:309,20'
          Dst:             streq
        - Src:             'settings/settings_parser.y:320,7'
          Dst:             getenv
        - Src:             'settings/settings_parser.y:323,4'
          Dst:             settings_parser_set_debug
        - Src:             'settings/settings_parser.y:325,13'
          Dst:             settings_parser_parse
        - Src:             'settings/settings_parser.y:331,2'
          Dst:             array_destroy
        - Src:             'settings/settings_parser.y:332,2'
          Dst:             settings_parser_lex_destroy
    - functionName:    settings_parser_load_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.l'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_parser__scan_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.l:283,2'
          Dst:             settings_parser__scan_string
    - functionName:    settings_parser__scan_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2539
      functionLinenumberEnd: 2541
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_parser__scan_bytes
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2541,37'
          Dst:             strlen
        - Src:             'settings/settings_lexer.c:2541,9'
          Dst:             settings_parser__scan_bytes
    - functionName:    settings_parser__scan_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2554
      functionLinenumberEnd: 2580
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          95
      EdgeCount:       12
      CyclomaticComplexity: 3
      functionsReached:
        - settings_parser__scan_buffer
        - settings_parser_alloc
        - yy_fatal_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2562,17'
          Dst:             settings_parser_alloc
        - Src:             'settings/settings_lexer.c:2564,3'
          Dst:             yy_fatal_error
        - Src:             'settings/settings_lexer.c:2571,6'
          Dst:             settings_parser__scan_buffer
        - Src:             'settings/settings_lexer.c:2573,3'
          Dst:             yy_fatal_error
    - functionName:    settings_parser_alloc
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2990
      functionLinenumberEnd: 2993
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    yy_fatal_error
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2644
      functionLinenumberEnd: 2647
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - exit
        - fprintf
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2646,2'
          Dst:             fprintf
        - Src:             'settings/settings_lexer.c:2647,2'
          Dst:             exit
    - functionName:    settings_parser__scan_buffer
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2500
      functionLinenumberEnd: 2526
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          114
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - settings_parser__switch_to_buffer
        - settings_parser_alloc
        - yy_fatal_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2509,24'
          Dst:             settings_parser_alloc
        - Src:             'settings/settings_lexer.c:2511,3'
          Dst:             yy_fatal_error
        - Src:             'settings/settings_lexer.c:2523,2'
          Dst:             settings_parser__switch_to_buffer
    - functionName:    settings_parser__switch_to_buffer
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2190
      functionLinenumberEnd: 2219
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          130
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - settings_parser__load_buffer_state
        - settings_parser_ensure_buffer_stack
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2198,2'
          Dst:             settings_parser_ensure_buffer_stack
        - Src:             'settings/settings_lexer.c:2211,2'
          Dst:             settings_parser__load_buffer_state
    - functionName:    settings_parser_ensure_buffer_stack
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2448
      functionLinenumberEnd: 2489
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          119
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - memset_noop
        - settings_parser_alloc
        - settings_parser_realloc
        - yy_fatal_error
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2459,52'
          Dst:             settings_parser_alloc
        - Src:             'settings/settings_lexer.c:2463,4'
          Dst:             yy_fatal_error
        - Src:             'settings/settings_lexer.c:2465,3'
          Dst:             memset_noop
        - Src:             'settings/settings_lexer.c:2478,52'
          Dst:             settings_parser_realloc
        - Src:             'settings/settings_lexer.c:2483,4'
          Dst:             yy_fatal_error
        - Src:             'settings/settings_lexer.c:2486,3'
          Dst:             memset_noop
    - functionName:    settings_parser__load_buffer_state
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2226
      functionLinenumberEnd: 2236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          58
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_realloc
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2997
      functionLinenumberEnd: 3008
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - realloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:3008,9'
          Dst:             realloc
    - functionName:    exit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_lex_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2931
      functionLinenumberEnd: 2958
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          101
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - settings_parser__delete_buffer
        - settings_parser_free
        - settings_parser_pop_buffer_state
        - yy_init_globals
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2936,3'
          Dst:             settings_parser__delete_buffer
        - Src:             'settings/settings_lexer.c:2938,3'
          Dst:             settings_parser_pop_buffer_state
        - Src:             'settings/settings_lexer.c:2942,2'
          Dst:             settings_parser_free
        - Src:             'settings/settings_lexer.c:2946,9'
          Dst:             settings_parser_free
        - Src:             'settings/settings_lexer.c:2951,5'
          Dst:             yy_init_globals
        - Src:             'settings/settings_lexer.c:2955,5'
          Dst:             settings_parser_free
    - functionName:    settings_parser__delete_buffer
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2284
      functionLinenumberEnd: 2297
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          89
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - settings_parser_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2294,3'
          Dst:             settings_parser_free
        - Src:             'settings/settings_lexer.c:2296,2'
          Dst:             settings_parser_free
    - functionName:    settings_parser_pop_buffer_state
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2422
      functionLinenumberEnd: 2436
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          138
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - settings_parser__delete_buffer
        - settings_parser__load_buffer_state
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2427,2'
          Dst:             settings_parser__delete_buffer
        - Src:             'settings/settings_lexer.c:2433,3'
          Dst:             settings_parser__load_buffer_state
    - functionName:    settings_parser_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3012
      functionLinenumberEnd: 3016
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    yy_init_globals
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2895
      functionLinenumberEnd: 2924
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          42
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_lex_init_extra
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2865
      functionLinenumberEnd: 2889
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - memset_noop
        - settings_parser_alloc
        - settings_parser_set_extra
        - yy_init_globals
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2868,5'
          Dst:             settings_parser_set_extra
        - Src:             'settings/settings_lexer.c:2871,9'
          Dst:             __errno_location
        - Src:             'settings/settings_lexer.c:2875,34'
          Dst:             settings_parser_alloc
        - Src:             'settings/settings_lexer.c:2878,9'
          Dst:             __errno_location
        - Src:             'settings/settings_lexer.c:2884,5'
          Dst:             memset_noop
        - Src:             'settings/settings_lexer.c:2886,5'
          Dst:             settings_parser_set_extra
        - Src:             'settings/settings_lexer.c:2888,12'
          Dst:             yy_init_globals
    - functionName:    settings_parser_set_extra
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2756
      functionLinenumberEnd: 2759
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_lex_init
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2838
      functionLinenumberEnd: 2855
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - memset_noop
        - settings_parser_alloc
        - yy_init_globals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2840,9'
          Dst:             __errno_location
        - Src:             'settings/settings_lexer.c:2844,34'
          Dst:             settings_parser_alloc
        - Src:             'settings/settings_lexer.c:2847,9'
          Dst:             __errno_location
        - Src:             'settings/settings_lexer.c:2852,5'
          Dst:             memset_noop
        - Src:             'settings/settings_lexer.c:2854,12'
          Dst:             yy_init_globals
    - functionName:    settings_parser_set_debug
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2818
      functionLinenumberEnd: 2821
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_get_debug
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2812
      functionLinenumberEnd: 2814
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_set_out
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2806
      functionLinenumberEnd: 2809
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_set_in
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2800
      functionLinenumberEnd: 2803
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_set_column
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2783
      functionLinenumberEnd: 2791
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - yy_fatal_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2788,12'
          Dst:             yy_fatal_error
    - functionName:    settings_parser_set_lineno
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2768
      functionLinenumberEnd: 2776
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - yy_fatal_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2773,12'
          Dst:             yy_fatal_error
    - functionName:    settings_parser_get_text
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2744
      functionLinenumberEnd: 2746
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_get_leng
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2734
      functionLinenumberEnd: 2736
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_get_out
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2725
      functionLinenumberEnd: 2727
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_get_in
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2716
      functionLinenumberEnd: 2718
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_get_column
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2703
      functionLinenumberEnd: 2710
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_get_lineno
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2690
      functionLinenumberEnd: 2697
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_get_extra
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2679
      functionLinenumberEnd: 2681
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_push_buffer_state
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2385
      functionLinenumberEnd: 2409
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          146
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - settings_parser__load_buffer_state
        - settings_parser_ensure_buffer_stack
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2390,2'
          Dst:             settings_parser_ensure_buffer_stack
        - Src:             'settings/settings_lexer.c:2407,2'
          Dst:             settings_parser__load_buffer_state
    - functionName:    settings_parser__flush_buffer
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2350
      functionLinenumberEnd: 2371
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - settings_parser__load_buffer_state
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2370,3'
          Dst:             settings_parser__load_buffer_state
    - functionName:    settings_parser__init_buffer
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2309
      functionLinenumberEnd: 2339
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - settings_parser__flush_buffer
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2310,15'
          Dst:             __errno_location
        - Src:             'settings/settings_lexer.c:2313,2'
          Dst:             settings_parser__flush_buffer
        - Src:             'settings/settings_lexer.c:2338,2'
          Dst:             __errno_location
    - functionName:    settings_parser_restart
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2165
      functionLinenumberEnd: 2176
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          93
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - settings_parser__create_buffer
        - settings_parser__init_buffer
        - settings_parser__load_buffer_state
        - settings_parser_ensure_buffer_stack
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2169,9'
          Dst:             settings_parser_ensure_buffer_stack
        - Src:             'settings/settings_lexer.c:2171,13'
          Dst:             settings_parser__create_buffer
        - Src:             'settings/settings_lexer.c:2174,2'
          Dst:             settings_parser__init_buffer
        - Src:             'settings/settings_lexer.c:2175,2'
          Dst:             settings_parser__load_buffer_state
    - functionName:    settings_parser__create_buffer
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2249
      functionLinenumberEnd: 2269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - settings_parser__init_buffer
        - settings_parser_alloc
        - yy_fatal_error
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2252,24'
          Dst:             settings_parser_alloc
        - Src:             'settings/settings_lexer.c:2254,3'
          Dst:             yy_fatal_error
        - Src:             'settings/settings_lexer.c:2261,26'
          Dst:             settings_parser_alloc
        - Src:             'settings/settings_lexer.c:2263,3'
          Dst:             yy_fatal_error
        - Src:             'settings/settings_lexer.c:2267,2'
          Dst:             settings_parser__init_buffer
    - functionName:    yy_get_next_buffer
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1804
      functionLinenumberEnd: 1938
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         70
      ICount:          728
      EdgeCount:       89
      CyclomaticComplexity: 21
      functionsReached:
        - __errno_location
        - clearerr
        - ferror
        - fread
        - getc
        - settings_parser_realloc
        - settings_parser_restart
        - yy_fatal_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:1812,3'
          Dst:             yy_fatal_error
        - Src:             'settings/settings_lexer.c:1873,6'
          Dst:             settings_parser_realloc
        - Src:             'settings/settings_lexer.c:1881,5'
          Dst:             yy_fatal_error
        - Src:             'settings/settings_lexer.c:1895,3'
          Dst:             getc
        - Src:             'settings/settings_lexer.c:1895,3'
          Dst:             ferror
        - Src:             'settings/settings_lexer.c:1895,3'
          Dst:             yy_fatal_error
        - Src:             'settings/settings_lexer.c:1895,3'
          Dst:             __errno_location
        - Src:             'settings/settings_lexer.c:1895,3'
          Dst:             fread
        - Src:             'settings/settings_lexer.c:1895,3'
          Dst:             ferror
        - Src:             'settings/settings_lexer.c:1895,3'
          Dst:             __errno_location
        - Src:             'settings/settings_lexer.c:1895,3'
          Dst:             yy_fatal_error
        - Src:             'settings/settings_lexer.c:1895,3'
          Dst:             __errno_location
        - Src:             'settings/settings_lexer.c:1895,3'
          Dst:             clearerr
        - Src:             'settings/settings_lexer.c:1906,4'
          Dst:             settings_parser_restart
        - Src:             'settings/settings_lexer.c:1923,50'
          Dst:             settings_parser_realloc
        - Src:             'settings/settings_lexer.c:1926,4'
          Dst:             yy_fatal_error
    - functionName:    getc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fread
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clearerr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    yy_try_NUL_trans
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1987
      functionLinenumberEnd: 2009
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          116
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    yy_get_previous_state
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1948
      functionLinenumberEnd: 1974
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          140
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    settings_parser_open_next_file
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.l'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - settings_parser__create_buffer
        - settings_parser_push_buffer_state
        - settings_parser_set_in
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.l:257,2'
          Dst:             settings_parser_set_in
        - Src:             'settings/settings_lexer.l:259,4'
          Dst:             settings_parser__create_buffer
        - Src:             'settings/settings_lexer.l:258,2'
          Dst:             settings_parser_push_buffer_state
    - functionName:    yy_top_state
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2632
      functionLinenumberEnd: 2634
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    include_files
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.l'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - settings_parser_open_next_file
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.l:275,2'
          Dst:             settings_parser_open_next_file
    - functionName:    yy_pop_state
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2619
      functionLinenumberEnd: 2625
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          47
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - yy_fatal_error
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2622,3'
          Dst:             yy_fatal_error
    - functionName:    yyunput
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2019
      functionLinenumberEnd: 2060
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          230
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - yy_fatal_error
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2046,4'
          Dst:             yy_fatal_error
    - functionName:    yy_push_state
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2589
      functionLinenumberEnd: 2612
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          108
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - settings_parser_alloc
        - settings_parser_realloc
        - yy_fatal_error
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'settings/settings_lexer.c:2599,34'
          Dst:             settings_parser_alloc
        - Src:             'settings/settings_lexer.c:2602,34'
          Dst:             settings_parser_realloc
        - Src:             'settings/settings_lexer.c:2606,4'
          Dst:             yy_fatal_error
    - functionName:    settings_parser_lex
      functionSourceFile: '/src/strongswan/src/libstrongswan/settings/settings_lexer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1193
      functionLinenumberEnd: 1783
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         193
      ICount:          1486
      EdgeCount:       226
      CyclomaticComplexity: 35
      functionsReached:
        - fprintf
        - include_files
        - settings_parser__create_buffer
        - settings_parser__load_buffer_state
        - settings_parser_ensure_buffer_stack
        - settings_parser_open_next_file
        - settings_parser_pop_buffer_state
        - strdup
        - streq
        - yy_fatal_error
        - yy_get_next_buffer
        - yy_get_previous_state
        - yy_pop_state
        - yy_push_state
        - yy_top_state
        - yy_try_NUL_trans
        - yyunput
      functionUses:    1
      BranchProfiles:
        - Branch String:   'settings/settings_lexer.c:1316,3'
          Branch Sides:    []
        - Branch String:   'settings/settings_lexer.l:132,4'
          Branch Sides:    []
        - Branch String:   'settings/settings_lexer.l:169,4'
          Branch Sides:    []
        - Branch String:   'settings/settings_lexer.c:1723,8'
          Branch Sides:    []
      Callsites:
        - Src:             'settings/settings_lexer.c:1225,4'
          Dst:             settings_parser_ensure_buffer_stack
        - Src:             'settings/settings_lexer.c:1227,5'
          Dst:             settings_parser__create_buffer
        - Src:             'settings/settings_lexer.c:1230,3'
          Dst:             settings_parser__load_buffer_state
        - Src:             'settings/settings_lexer.c:1303,5'
          Dst:             fprintf
        - Src:             'settings/settings_lexer.c:1305,5'
          Dst:             fprintf
        - Src:             'settings/settings_lexer.c:1308,5'
          Dst:             fprintf
        - Src:             'settings/settings_lexer.c:1311,5'
          Dst:             fprintf
        - Src:             'settings/settings_lexer.c:1313,5'
          Dst:             fprintf
        - Src:             'settings/settings_lexer.l:83,2'
          Dst:             yy_push_state
        - Src:             'settings/settings_lexer.l:88,2'
          Dst:             yy_push_state
        - Src:             'settings/settings_lexer.l:94,2'
          Dst:             yy_push_state
        - Src:             'settings/settings_lexer.l:103,14'
          Dst:             strdup
        - Src:             'settings/settings_lexer.l:115,15'
          Dst:             strdup
        - Src:             'settings/settings_lexer.l:120,3'
          Dst:             yyunput
        - Src:             'settings/settings_lexer.l:121,3'
          Dst:             yy_pop_state
        - Src:             'settings/settings_lexer.l:136,6'
          Dst:             yyunput
        - Src:             'settings/settings_lexer.l:137,6'
          Dst:             settings_parser_ensure_buffer_stack
        - Src:             'settings/settings_lexer.l:137,6'
          Dst:             settings_parser__create_buffer
        - Src:             'settings/settings_lexer.l:142,6'
          Dst:             yyunput
        - Src:             'settings/settings_lexer.l:146,3'
          Dst:             yy_pop_state
        - Src:             'settings/settings_lexer.l:152,3'
          Dst:             yy_push_state
        - Src:             'settings/settings_lexer.l:157,15'
          Dst:             strdup
        - Src:             'settings/settings_lexer.l:173,6'
          Dst:             yyunput
        - Src:             'settings/settings_lexer.l:174,6'
          Dst:             settings_parser_ensure_buffer_stack
        - Src:             'settings/settings_lexer.l:174,6'
          Dst:             settings_parser__create_buffer
        - Src:             'settings/settings_lexer.l:179,6'
          Dst:             yyunput
        - Src:             'settings/settings_lexer.l:183,3'
          Dst:             include_files
        - Src:             'settings/settings_lexer.l:184,3'
          Dst:             yy_pop_state
        - Src:             'settings/settings_lexer.l:187,3'
          Dst:             yy_push_state
        - Src:             'settings/settings_lexer.l:205,8'
          Dst:             streq
        - Src:             'settings/settings_lexer.l:210,7'
          Dst:             yy_top_state
        - Src:             'settings/settings_lexer.l:212,4'
          Dst:             include_files
        - Src:             'settings/settings_lexer.l:213,4'
          Dst:             yy_pop_state
        - Src:             'settings/settings_lexer.l:214,4'
          Dst:             yy_pop_state
        - Src:             'settings/settings_lexer.l:218,4'
          Dst:             yy_pop_state
        - Src:             'settings/settings_lexer.l:235,2'
          Dst:             settings_parser_pop_buffer_state
        - Src:             'settings/settings_lexer.l:236,7'
          Dst:             settings_parser_open_next_file
        - Src:             'settings/settings_lexer.l:242,1'
          Dst:             yy_fatal_error
        - Src:             'settings/settings_lexer.c:1691,23'
          Dst:             yy_get_previous_state
        - Src:             'settings/settings_lexer.c:1702,20'
          Dst:             yy_try_NUL_trans
        - Src:             'settings/settings_lexer.c:1723,17'
          Dst:             yy_get_next_buffer
        - Src:             'settings/settings_lexer.c:1758,24'
          Dst:             yy_get_previous_state
        - Src:             'settings/settings_lexer.c:1768,24'
          Dst:             yy_get_previous_state
        - Src:             'settings/settings_lexer.c:1778,3'
          Dst:             yy_fatal_error
    - functionName:    utils_deinit
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomics_deinit
        - strerror_deinit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils.c:315,2'
          Dst:             atomics_deinit
        - Src:             'utils/utils.c:316,2'
          Dst:             strerror_deinit
    - functionName:    utils_init
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomics_init
        - strerror_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils.c:303,2'
          Dst:             atomics_init
        - Src:             'utils/utils.c:304,2'
          Dst:             strerror_init
    - functionName:    nop
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    return_false
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    return_true
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    return_null
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    closefrom
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          151
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - __ctype_b_loc
        - atoi
        - close
        - open
        - syscall
        - sysconf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils.c:187,11'
          Dst:             open
        - Src:             'utils/utils.c:190,17'
          Dst:             syscall
        - Src:             'utils/utils.c:196,10'
          Dst:             __ctype_b_loc
        - Src:             'utils/utils.c:200,10'
          Dst:             atoi
        - Src:             'utils/utils.c:203,6'
          Dst:             close
        - Src:             'utils/utils.c:207,3'
          Dst:             close
        - Src:             'utils/utils.c:251,16'
          Dst:             sysconf
        - Src:             'utils/utils.c:259,3'
          Dst:             close
    - functionName:    syscall
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_sigint
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - kill
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils.c:147,2'
          Dst:             kill
    - functionName:    kill
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    wait_sigint
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - sigaddset
        - sigemptyset
        - sigprocmask
        - sigwaitinfo
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils.c:131,2'
          Dst:             sigemptyset
        - Src:             'utils/utils.c:132,2'
          Dst:             sigaddset
        - Src:             'utils/utils.c:133,2'
          Dst:             sigaddset
        - Src:             'utils/utils.c:135,2'
          Dst:             sigprocmask
        - Src:             'utils/utils.c:136,9'
          Dst:             sigwaitinfo
        - Src:             'utils/utils.c:136,42'
          Dst:             __errno_location
    - functionName:    sigemptyset
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sigaddset
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sigprocmask
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sigwaitinfo
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    siprotate
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 927
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sipround
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 933
      functionLinenumberEnd: 951
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          97
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - siprotate
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:935,8'
          Dst:             siprotate
        - Src:             'utils/chunk.c:937,8'
          Dst:             siprotate
        - Src:             'utils/chunk.c:940,8'
          Dst:             siprotate
        - Src:             'utils/chunk.c:944,8'
          Dst:             siprotate
        - Src:             'utils/chunk.c:946,8'
          Dst:             siprotate
        - Src:             'utils/chunk.c:949,8'
          Dst:             siprotate
    - functionName:    siplast
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 963
      functionLinenumberEnd: 988
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          119
      EdgeCount:       32
      CyclomaticComplexity: 17
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'utils/chunk.c:968,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    sipcompress
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 955
      functionLinenumberEnd: 960
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sipround
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:957,2'
          Dst:             sipround
        - Src:             'utils/chunk.c:958,2'
          Dst:             sipround
    - functionName:    sipget
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 915
      functionLinenumberEnd: 923
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          39
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_printf_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1170
      functionLinenumberEnd: 1197
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          133
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - mem_printf_hook
        - print_in_hook
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:1180,10'
          Dst:             mem_printf_hook
        - Src:             'utils/chunk.c:1191,15'
          Dst:             print_in_hook
        - Src:             'utils/chunk.c:1193,14'
          Dst:             print_in_hook
    - functionName:    chunk_internet_checksum
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1161
      functionLinenumberEnd: 1162
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_internet_checksum_inc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:1162,9'
          Dst:             chunk_internet_checksum_inc
    - functionName:    chunk_internet_checksum_inc
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1138
      functionLinenumberEnd: 1154
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          99
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_skip
        - htons
        - ntohs
        - untoh16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:1139,17'
          Dst:             ntohs
        - Src:             'utils/chunk.c:1143,10'
          Dst:             untoh16
        - Src:             'utils/chunk.c:1144,10'
          Dst:             chunk_skip
        - Src:             'utils/chunk.c:1154,9'
          Dst:             htons
    - functionName:    untoh16
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/byteorder.h:162,9'
          Dst:             ntohs
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_hash_static
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1130
      functionLinenumberEnd: 1131
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_mac
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:1131,9'
          Dst:             chunk_mac
    - functionName:    chunk_mac
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_mac_inc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:1037,9'
          Dst:             chunk_mac_inc
    - functionName:    chunk_mac_inc
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 995
      functionLinenumberEnd: 1029
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          116
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - sipcompress
        - sipget
        - siplast
        - sipround
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:1002,7'
          Dst:             sipget
        - Src:             'utils/chunk.c:1003,7'
          Dst:             sipget
        - Src:             'utils/chunk.c:1012,3'
          Dst:             sipcompress
        - Src:             'utils/chunk.c:1018,7'
          Dst:             sipget
        - Src:             'utils/chunk.c:1019,3'
          Dst:             sipcompress
        - Src:             'utils/chunk.c:1021,34'
          Dst:             siplast
        - Src:             'utils/chunk.c:1021,2'
          Dst:             sipcompress
        - Src:             'utils/chunk.c:1025,2'
          Dst:             sipround
        - Src:             'utils/chunk.c:1026,2'
          Dst:             sipround
        - Src:             'utils/chunk.c:1027,2'
          Dst:             sipround
        - Src:             'utils/chunk.c:1028,2'
          Dst:             sipround
    - functionName:    chunk_hash_static_inc
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1122
      functionLinenumberEnd: 1123
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_mac_inc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:1123,9'
          Dst:             chunk_mac_inc
    - functionName:    chunk_hash_ptr
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1114
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_hash
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:1115,9'
          Dst:             chunk_hash
    - functionName:    chunk_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1106
      functionLinenumberEnd: 1107
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_mac
      functionUses:    34
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:1107,9'
          Dst:             chunk_mac
    - functionName:    chunk_hash_inc
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1097
      functionLinenumberEnd: 1099
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_mac_inc
      functionUses:    42
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:1099,9'
          Dst:             chunk_mac_inc
    - functionName:    chunk_hash_seed
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1055
      functionLinenumberEnd: 1091
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         22
      ICount:          104
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - close
        - getpid
        - open
        - random
        - read
        - srandom
        - time
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:1067,7'
          Dst:             open
        - Src:             'utils/chunk.c:1072,10'
          Dst:             read
        - Src:             'utils/chunk.c:1079,3'
          Dst:             close
        - Src:             'utils/chunk.c:1084,11'
          Dst:             time
        - Src:             'utils/chunk.c:1084,24'
          Dst:             getpid
        - Src:             'utils/chunk.c:1084,3'
          Dst:             srandom
        - Src:             'utils/chunk.c:1087,29'
          Dst:             random
    - functionName:    chunk_printable
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 908
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          128
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - __ctype_b_loc
        - chunk_create_clone
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:895,11'
          Dst:             chunk_create_clone
        - Src:             'utils/chunk.c:899,8'
          Dst:             __ctype_b_loc
    - functionName:    chunk_create_clone
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - memcpy_noop
      functionUses:    173
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:50,3'
          Dst:             memcpy_noop
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_copy_pad
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 869
      functionLinenumberEnd: 882
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          88
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcpy_noop
        - memset_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:874,4'
          Dst:             memcpy_noop
        - Src:             'utils/chunk.c:875,4'
          Dst:             memset_noop
        - Src:             'utils/chunk.c:879,4'
          Dst:             memcpy_noop
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_increment
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 863
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_compare_prefix
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:840,8'
          Dst:             memcmp
    - functionName:    chunk_compare
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 817
      functionLinenumberEnd: 826
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - memcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:825,9'
          Dst:             memcmp
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_to_dec
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 752
      functionLinenumberEnd: 810
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          262
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - chunk_create
        - chunk_create_clone
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:770,8'
          Dst:             chunk_create_clone
        - Src:             'utils/chunk.c:797,2'
          Dst:             chunk_free
        - Src:             'utils/chunk.c:810,9'
          Dst:             chunk_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_to_base32
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 692
      functionLinenumberEnd: 745
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          392
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:708,4'
          Dst:             memset_noop
        - Src:             'utils/chunk.c:718,4'
          Dst:             memset_noop
        - Src:             'utils/chunk.c:727,4'
          Dst:             memset_noop
        - Src:             'utils/chunk.c:745,9'
          Dst:             chunk_create
    - functionName:    b642bin
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 650
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         75
      ICount:          308
      EdgeCount:       148
      CyclomaticComplexity: 75
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'utils/chunk.c:631,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    chunk_from_base64
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 656
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          177
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - b642bin
        - chunk_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:676,14'
          Dst:             b642bin
        - Src:             'utils/chunk.c:682,9'
          Dst:             chunk_create
    - functionName:    chunk_to_base64
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 592
      functionLinenumberEnd: 623
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          239
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:623,9'
          Dst:             chunk_create
    - functionName:    hex2bin
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          126
      EdgeCount:       54
      CyclomaticComplexity: 28
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'utils/chunk.c:511,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    chunk_from_hex
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          259
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - chunk_create
        - chunk_skip
        - hex2bin
        - memset_noop
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:536,9'
          Dst:             chunk_skip
        - Src:             'utils/chunk.c:565,2'
          Dst:             memset_noop
        - Src:             'utils/chunk.c:575,12'
          Dst:             hex2bin
        - Src:             'utils/chunk.c:578,14'
          Dst:             hex2bin
        - Src:             'utils/chunk.c:581,9'
          Dst:             chunk_create
    - functionName:    chunk_to_hex
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          133
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:503,9'
          Dst:             chunk_create
    - functionName:    chunk_unmap_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_unmap_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:471,9'
          Dst:             chunk_unmap_internal
    - functionName:    chunk_unmap_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          94
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - close
        - memwipe
        - munmap
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:415,4'
          Dst:             memwipe
        - Src:             'utils/chunk.c:417,9'
          Dst:             munmap
        - Src:             'utils/chunk.c:418,9'
          Dst:             __errno_location
        - Src:             'utils/chunk.c:451,2'
          Dst:             close
        - Src:             'utils/chunk.c:453,2'
          Dst:             __errno_location
    - functionName:    munmap
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_unmap
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_unmap_internal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:463,9'
          Dst:             chunk_unmap_internal
    - functionName:    chunk_map
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          157
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - chunk_create
        - chunk_unmap
        - fstat
        - mmap
        - open
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:352,2'
          Dst:             open
        - Src:             'utils/chunk.c:362,6'
          Dst:             fstat
        - Src:             'utils/chunk.c:364,9'
          Dst:             __errno_location
        - Src:             'utils/chunk.c:365,3'
          Dst:             chunk_unmap
        - Src:             'utils/chunk.c:366,3'
          Dst:             __errno_location
        - Src:             'utils/chunk.c:375,16'
          Dst:             mmap
        - Src:             'utils/chunk.c:379,10'
          Dst:             __errno_location
        - Src:             'utils/chunk.c:380,4'
          Dst:             chunk_unmap
        - Src:             'utils/chunk.c:381,4'
          Dst:             __errno_location
        - Src:             'utils/chunk.c:385,18'
          Dst:             chunk_create
    - functionName:    fstat
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mmap
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_from_fd
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          169
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - chunk_create
        - fstat
        - read
        - realloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:264,6'
          Dst:             fstat
        - Src:             'utils/chunk.c:280,9'
          Dst:             read
        - Src:             'utils/chunk.c:300,10'
          Dst:             realloc
        - Src:             'utils/chunk.c:316,9'
          Dst:             realloc
        - Src:             'utils/chunk.c:318,9'
          Dst:             chunk_create
    - functionName:    chunk_write
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          105
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - access
        - fclose
        - fopen
        - fwrite
        - umask
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.c:220,16'
          Dst:             access
        - Src:             'utils/chunk.c:222,3'
          Dst:             __errno_location
        - Src:             'utils/chunk.c:225,12'
          Dst:             umask
        - Src:             'utils/chunk.c:226,7'
          Dst:             fopen
        - Src:             'utils/chunk.c:236,7'
          Dst:             fwrite
        - Src:             'utils/chunk.c:242,10'
          Dst:             __errno_location
        - Src:             'utils/chunk.c:244,3'
          Dst:             fclose
        - Src:             'utils/chunk.c:248,9'
          Dst:             __errno_location
        - Src:             'utils/chunk.c:250,2'
          Dst:             umask
        - Src:             'utils/chunk.c:251,2'
          Dst:             __errno_location
    - functionName:    access
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    umask
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fwrite
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_split
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          380
      EdgeCount:       51
      CyclomaticComplexity: 12
      functionsReached:
        - chunk_skip
        - memcpy_noop
      functionUses:    4
      BranchProfiles:
        - Branch String:   'utils/chunk.c:156,3'
          Branch Sides:    []
      Callsites:
        - Src:             'utils/chunk.c:153,12'
          Dst:             chunk_skip
        - Src:             'utils/chunk.c:169,13'
          Dst:             chunk_skip
        - Src:             'utils/chunk.c:178,6'
          Dst:             memcpy_noop
        - Src:             'utils/chunk.c:184,13'
          Dst:             chunk_skip
        - Src:             'utils/chunk.c:193,6'
          Dst:             memcpy_noop
        - Src:             'utils/chunk.c:199,13'
          Dst:             chunk_skip
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             'utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    chunk_create_cat
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          130
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_clear
        - chunk_create
        - memcpy_noop
      functionUses:    64
      BranchProfiles:
        - Branch String:   'utils/chunk.c:100,3'
          Branch Sides:    []
      Callsites:
        - Src:             'utils/chunk.c:92,22'
          Dst:             chunk_create
        - Src:             'utils/chunk.c:110,5'
          Dst:             memcpy_noop
        - Src:             'utils/chunk.c:115,6'
          Dst:             chunk_clear
    - functionName:    chunk_length
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/chunk.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       23
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    64
      BranchProfiles:
        - Branch String:   'utils/chunk.c:67,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    dbg_default_set_stream
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dbg_default_set_level
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dbg_default_set_level_group
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/debug.c:134,2'
          Dst:             dbg_default_set_level_group
    - functionName:    dbg_default_set_level_group
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dbg_default_get_level_group
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dbg_default
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/debug.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - fprintf
        - vfprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/debug.c:93,3'
          Dst:             vfprintf
        - Src:             'utils/debug.c:94,3'
          Dst:             fprintf
    - functionName:    vfprintf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enum_printf_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/enum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          122
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - enum_flags_to_string
        - enum_to_name
        - print_in_hook
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/enum.c:244,10'
          Dst:             enum_flags_to_string
        - Src:             'utils/enum.c:247,4'
          Dst:             snprintf
        - Src:             'utils/enum.c:253,10'
          Dst:             enum_to_name
        - Src:             'utils/enum.c:256,4'
          Dst:             snprintf
        - Src:             'utils/enum.c:262,10'
          Dst:             print_in_hook
        - Src:             'utils/enum.c:264,9'
          Dst:             print_in_hook
    - functionName:    enum_flags_to_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/enum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          198
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - find_flag_pos
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/enum.c:138,7'
          Dst:             snprintf
        - Src:             'utils/enum.c:145,6'
          Dst:             snprintf
        - Src:             'utils/enum.c:160,21'
          Dst:             find_flag_pos
        - Src:             'utils/enum.c:164,5'
          Dst:             snprintf
        - Src:             'utils/enum.c:169,10'
          Dst:             snprintf
    - functionName:    enum_to_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/enum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_flag_pos
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/enum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enum_flags_from_string_as_int
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/enum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          179
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - enum_from_name_as_int
        - enumerator_create_token
        - strcaseeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/enum.c:200,10'
          Dst:             enum_from_name_as_int
        - Src:             'utils/enum.c:203,15'
          Dst:             enumerator_create_token
        - Src:             'utils/enum.c:209,7'
          Dst:             strcaseeq
        - Src:             'utils/enum.c:215,23'
          Dst:             strcaseeq
    - functionName:    enum_from_name_as_int
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/enum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          97
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - strcaseeq
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/enum.c:101,16'
          Dst:             strcaseeq
    - functionName:    strcaseeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:55,32'
          Dst:             strcasecmp
    - functionName:    enum_remove_enum_names
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/enum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enum_add_enum_names
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/enum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          56
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    matches_any
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1070
      functionLinenumberEnd: 1076
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals_binary
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          94
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_equals
        - neither_is_regex
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:662,6'
          Dst:             neither_is_regex
        - Src:             'utils/identification.c:668,10'
          Dst:             chunk_equals
    - functionName:    neither_is_regex
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    hash_binary
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - chunk_hash_inc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:644,24'
          Dst:             chunk_create
        - Src:             'utils/identification.c:644,9'
          Dst:             chunk_hash_inc
        - Src:             'utils/identification.c:647,10'
          Dst:             chunk_hash_inc
        - Src:             'utils/identification.c:651,10'
          Dst:             chunk_hash_inc
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    matches_binary
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 981
      functionLinenumberEnd: 992
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:987,3'
          Dst:             chunk_equals
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    subnet_to_range
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1162
      functionLinenumberEnd: 1181
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          137
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcpy_noop
        - memset_noop
        - netmask_to_cidr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1167,12'
          Dst:             netmask_to_cidr
        - Src:             'utils/identification.c:1169,2'
          Dst:             memcpy_noop
        - Src:             'utils/identification.c:1170,2'
          Dst:             memcpy_noop
        - Src:             'utils/identification.c:1178,3'
          Dst:             memset_noop
        - Src:             'utils/identification.c:1179,3'
          Dst:             memset_noop
    - functionName:    netmask_to_cidr
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1130
      functionLinenumberEnd: 1154
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          85
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_ranges
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1227
      functionLinenumberEnd: 1257
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          141
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - memcmp
        - memeq
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1233,6'
          Dst:             memcmp
        - Src:             'utils/identification.c:1234,3'
          Dst:             memcmp
        - Src:             'utils/identification.c:1239,11'
          Dst:             memeq
        - Src:             'utils/identification.c:1240,5'
          Dst:             memeq
        - Src:             'utils/identification.c:1245,15'
          Dst:             memcmp
        - Src:             'utils/identification.c:1246,13'
          Dst:             memcmp
    - functionName:    match_subnets
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1189
      functionLinenumberEnd: 1219
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          161
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - memeq
        - netmask_to_cidr
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1192,34'
          Dst:             netmask_to_cidr
        - Src:             'utils/identification.c:1199,22'
          Dst:             netmask_to_cidr
        - Src:             'utils/identification.c:1203,10'
          Dst:             memeq
    - functionName:    matches_range_to_range
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1422
      functionLinenumberEnd: 1437
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          104
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - match_ranges
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1436,9'
          Dst:             match_ranges
    - functionName:    matches_subnet_to_range
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1400
      functionLinenumberEnd: 1414
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          112
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - match_ranges
        - subnet_to_range
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1410,2'
          Dst:             subnet_to_range
        - Src:             'utils/identification.c:1413,9'
          Dst:             match_ranges
    - functionName:    matches_addr_to_range
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1378
      functionLinenumberEnd: 1392
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          92
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - match_ranges
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1391,9'
          Dst:             match_ranges
    - functionName:    matches_range_to_subnet
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1355
      functionLinenumberEnd: 1370
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          114
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - match_ranges
        - subnet_to_range
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1368,2'
          Dst:             subnet_to_range
        - Src:             'utils/identification.c:1369,9'
          Dst:             match_ranges
    - functionName:    matches_subnet_to_subnet
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1331
      functionLinenumberEnd: 1347
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          104
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - match_subnets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1345,9'
          Dst:             match_subnets
    - functionName:    matches_addr_to_subnet
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1309
      functionLinenumberEnd: 1323
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          91
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - match_subnets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1322,9'
          Dst:             match_subnets
    - functionName:    matches_range_to_addr
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1287
      functionLinenumberEnd: 1301
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          94
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - match_ranges
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1300,9'
          Dst:             match_ranges
    - functionName:    matches_subnet_to_addr
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1265
      functionLinenumberEnd: 1279
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          93
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - match_subnets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1278,9'
          Dst:             match_subnets
    - functionName:    matches_range
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1441
      functionLinenumberEnd: 1522
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         103
      ICount:          506
      EdgeCount:       141
      CyclomaticComplexity: 40
      functionsReached:
        - chunk_equals
        - matches_addr_to_range
        - matches_addr_to_subnet
        - matches_range_to_addr
        - matches_range_to_range
        - matches_range_to_subnet
        - matches_subnet_to_addr
        - matches_subnet_to_range
        - matches_subnet_to_subnet
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1451,3'
          Dst:             chunk_equals
        - Src:             'utils/identification.c:1469,11'
          Dst:             matches_subnet_to_addr
        - Src:             'utils/identification.c:1471,10'
          Dst:             matches_range_to_addr
        - Src:             'utils/identification.c:1489,11'
          Dst:             matches_addr_to_subnet
        - Src:             'utils/identification.c:1493,11'
          Dst:             matches_subnet_to_subnet
        - Src:             'utils/identification.c:1495,10'
          Dst:             matches_range_to_subnet
        - Src:             'utils/identification.c:1513,11'
          Dst:             matches_addr_to_range
        - Src:             'utils/identification.c:1517,11'
          Dst:             matches_subnet_to_range
        - Src:             'utils/identification.c:1519,10'
          Dst:             matches_range_to_range
    - functionName:    match_dn_relaxed
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 834
      functionLinenumberEnd: 835
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_dn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:835,9'
          Dst:             match_dn
    - functionName:    match_dn
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 707
      functionLinenumberEnd: 820
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          386
      EdgeCount:       76
      CyclomaticComplexity: 20
      functionsReached:
        - array_count
        - array_create
        - array_destroy_function
        - array_get
        - array_insert
        - chunk_equals
        - create_rdn_enumerator
        - is_wildcard
        - rdn_equals
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:719,6'
          Dst:             chunk_equals
        - Src:             'utils/identification.c:724,9'
          Dst:             array_create
        - Src:             'utils/identification.c:726,15'
          Dst:             create_rdn_enumerator
        - Src:             'utils/identification.c:738,7'
          Dst:             is_wildcard
        - Src:             'utils/identification.c:741,4'
          Dst:             array_insert
        - Src:             'utils/identification.c:745,4'
          Dst:             array_insert
        - Src:             'utils/identification.c:758,3'
          Dst:             array_destroy_function
        - Src:             'utils/identification.c:763,15'
          Dst:             create_rdn_enumerator
        - Src:             'utils/identification.c:770,33'
          Dst:             array_count
        - Src:             'utils/identification.c:772,4'
          Dst:             array_get
        - Src:             'utils/identification.c:773,25'
          Dst:             chunk_equals
        - Src:             'utils/identification.c:775,9'
          Dst:             is_wildcard
        - Src:             'utils/identification.c:780,9'
          Dst:             rdn_equals
        - Src:             'utils/identification.c:809,19'
          Dst:             array_count
        - Src:             'utils/identification.c:811,4'
          Dst:             array_get
        - Src:             'utils/identification.c:818,2'
          Dst:             array_destroy_function
    - functionName:    create_rdn_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_unwrap
        - enumerator_create_empty
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:223,6'
          Dst:             asn1_unwrap
        - Src:             'utils/identification.c:229,9'
          Dst:             enumerator_create_empty
    - functionName:    is_wildcard
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 608
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rdn_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 690
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - char
        - 'N/A'
        - size_t
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          90
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - asn1_known_oid
        - memeq
        - strncaseeq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:682,5'
          Dst:             asn1_known_oid
        - Src:             'utils/identification.c:684,10'
          Dst:             strncaseeq
        - Src:             'utils/identification.c:688,10'
          Dst:             memeq
    - functionName:    strncaseeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncasecmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:63,32'
          Dst:             strncasecmp
    - functionName:    rdn_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          175
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - asn1_unwrap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:188,7'
          Dst:             asn1_unwrap
        - Src:             'utils/identification.c:193,6'
          Dst:             asn1_unwrap
        - Src:             'utils/identification.c:194,3'
          Dst:             asn1_unwrap
        - Src:             'utils/identification.c:196,11'
          Dst:             asn1_unwrap
    - functionName:    matches_dn_relaxed
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1122
      functionLinenumberEnd: 1123
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_dn_relaxed
        - matches_dn_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1123,9'
          Dst:             matches_dn_internal
        - Src:             'utils/identification.c:1123,9'
          Dst:             match_dn_relaxed
    - functionName:    matches_dn_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1084
      functionLinenumberEnd: 1106
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          133
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - matches_regex
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1097,11'
          Dst:             matches_regex
    - functionName:    matches_regex
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 999
      functionLinenumberEnd: 1020
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          69
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - regexec
        - snprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1012,6'
          Dst:             snprintf
        - Src:             'utils/identification.c:1018,7'
          Dst:             regexec
    - functionName:    regexec
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_dn_reordered
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 826
      functionLinenumberEnd: 827
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_dn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:827,9'
          Dst:             match_dn
    - functionName:    matches_dn_reordered
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1116
      functionLinenumberEnd: 1117
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_dn_reordered
        - matches_dn_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1117,9'
          Dst:             matches_dn_internal
        - Src:             'utils/identification.c:1117,9'
          Dst:             match_dn_reordered
    - functionName:    contains_wildcards_dn
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - create_part_enumerator
        - is_wildcard
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:620,15'
          Dst:             create_part_enumerator
        - Src:             'utils/identification.c:623,7'
          Dst:             is_wildcard
    - functionName:    create_part_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - create_rdn_enumerator
        - enumerator_create_empty
      functionUses:    1
      BranchProfiles:
        - Branch String:   'utils/identification.c:301,2'
          Branch Sides:    []
      Callsites:
        - Src:             'utils/identification.c:307,4'
          Dst:             create_rdn_enumerator
        - Src:             'utils/identification.c:322,11'
          Dst:             enumerator_create_empty
    - functionName:    rdn_part_enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rdn_part_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          147
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - asn1_known_oid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:277,15'
          Dst:             asn1_known_oid
    - functionName:    matches_dn
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1110
      functionLinenumberEnd: 1111
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compare_dn
        - matches_dn_internal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1111,9'
          Dst:             matches_dn_internal
        - Src:             'utils/identification.c:1111,9'
          Dst:             compare_dn
    - functionName:    compare_dn
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 842
      functionLinenumberEnd: 908
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          266
      EdgeCount:       50
      CyclomaticComplexity: 15
      functionsReached:
        - chunk_equals
        - create_rdn_enumerator
        - is_wildcard
        - rdn_equals
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:857,6'
          Dst:             chunk_equals
        - Src:             'utils/identification.c:862,6'
          Dst:             create_rdn_enumerator
        - Src:             'utils/identification.c:863,6'
          Dst:             create_rdn_enumerator
        - Src:             'utils/identification.c:878,8'
          Dst:             chunk_equals
        - Src:             'utils/identification.c:882,13'
          Dst:             is_wildcard
        - Src:             'utils/identification.c:892,9'
          Dst:             rdn_equals
    - functionName:    equals_dn
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 937
      functionLinenumberEnd: 939
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - compare_dn
        - neither_is_regex
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:938,9'
          Dst:             neither_is_regex
        - Src:             'utils/identification.c:939,6'
          Dst:             compare_dn
    - functionName:    hash_dn
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 944
      functionLinenumberEnd: 957
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          81
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - chunk_hash_inc
        - create_rdn_enumerator
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:950,24'
          Dst:             chunk_create
        - Src:             'utils/identification.c:950,9'
          Dst:             chunk_hash_inc
        - Src:             'utils/identification.c:951,9'
          Dst:             create_rdn_enumerator
        - Src:             'utils/identification.c:954,31'
          Dst:             chunk_hash_inc
        - Src:             'utils/identification.c:954,10'
          Dst:             chunk_hash_inc
    - functionName:    contains_wildcards_memchr
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 636
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memchr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:636,9'
          Dst:             memchr
    - functionName:    matches_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1024
      functionLinenumberEnd: 1066
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          172
      EdgeCount:       33
      CyclomaticComplexity: 11
      functionsReached:
        - equals_strcasecmp
        - matches_regex
        - strncasecmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1039,10'
          Dst:             matches_regex
        - Src:             'utils/identification.c:1042,6'
          Dst:             equals_strcasecmp
        - Src:             'utils/identification.c:1059,7'
          Dst:             strncasecmp
    - functionName:    equals_strcasecmp
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 962
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          120
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - memchr
        - neither_is_regex
        - strncasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:968,3'
          Dst:             neither_is_regex
        - Src:             'utils/identification.c:970,3'
          Dst:             memchr
        - Src:             'utils/identification.c:971,3'
          Dst:             memchr
        - Src:             'utils/identification.c:972,3'
          Dst:             strncasecmp
    - functionName:    clone_
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1715
      functionLinenumberEnd: 1729
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - chunk_create_clone
        - compile_regex
        - memcpy_noop
        - strdup
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1718,2'
          Dst:             memcpy_noop
        - Src:             'utils/identification.c:1722,20'
          Dst:             strdup
        - Src:             'utils/identification.c:1722,20'
          Dst:             strlen
        - Src:             'utils/identification.c:1722,20'
          Dst:             chunk_create
        - Src:             'utils/identification.c:1723,3'
          Dst:             compile_regex
        - Src:             'utils/identification.c:1727,20'
          Dst:             chunk_create_clone
    - functionName:    compile_regex
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1686
      functionLinenumberEnd: 1701
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - regcomp
        - regerror
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1691,8'
          Dst:             regcomp
        - Src:             'utils/identification.c:1695,3'
          Dst:             regerror
    - functionName:    regcomp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    regerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 600
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcasepfx
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - strncaseeq
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:71,31'
          Dst:             strlen
        - Src:             './utils/utils/string.h:71,9'
          Dst:             strncaseeq
    - functionName:    print_separator
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - snprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:333,12'
          Dst:             snprintf
    - functionName:    dntoa
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          256
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - asn1_known_oid
        - chunk_free
        - chunk_printable
        - create_rdn_enumerator
        - print_separator
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:354,6'
          Dst:             create_rdn_enumerator
        - Src:             'utils/identification.c:360,20'
          Dst:             print_separator
        - Src:             'utils/identification.c:366,9'
          Dst:             asn1_known_oid
        - Src:             'utils/identification.c:369,14'
          Dst:             snprintf
        - Src:             'utils/identification.c:373,14'
          Dst:             snprintf
        - Src:             'utils/identification.c:383,3'
          Dst:             chunk_printable
        - Src:             'utils/identification.c:386,14'
          Dst:             snprintf
        - Src:             'utils/identification.c:389,3'
          Dst:             chunk_free
        - Src:             'utils/identification.c:406,13'
          Dst:             print_separator
        - Src:             'utils/identification.c:413,3'
          Dst:             snprintf
        - Src:             'utils/identification.c:417,3'
          Dst:             snprintf
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    identification_create_from_sockaddr
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2241
      functionLinenumberEnd: 2265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          78
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - identification_create
        - identification_create_from_encoding
      functionUses:    2
      BranchProfiles:
        - Branch String:   'utils/identification.c:2242,2'
          Branch Sides:    []
      Callsites:
        - Src:             'utils/identification.c:2249,6'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2248,11'
          Dst:             identification_create_from_encoding
        - Src:             'utils/identification.c:2256,6'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2255,11'
          Dst:             identification_create_from_encoding
        - Src:             'utils/identification.c:2260,37'
          Dst:             identification_create
    - functionName:    identification_create_from_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2226
      functionLinenumberEnd: 2234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
        - identification_create
      functionUses:    55
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:2227,35'
          Dst:             identification_create
        - Src:             'utils/identification.c:2232,19'
          Dst:             chunk_create_clone
    - functionName:    identification_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1748
      functionLinenumberEnd: 1813
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          246
      EdgeCount:       24
      CyclomaticComplexity: 3
      functionsReached:
        - streq
      functionUses:    17
      BranchProfiles:
        - Branch String:   'utils/identification.c:1763,2'
          Branch Sides:    []
      Callsites:
        - Src:             'utils/identification.c:1786,8'
          Dst:             streq
        - Src:             'utils/identification.c:1790,13'
          Dst:             streq
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1734
      functionLinenumberEnd: 1742
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - regfree
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1735,2'
          Dst:             chunk_free
        - Src:             'utils/identification.c:1738,3'
          Dst:             regfree
    - functionName:    regfree
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_valid_dn
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 914
      functionLinenumberEnd: 932
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - create_rdn_enumerator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:920,15'
          Dst:             create_rdn_enumerator
    - functionName:    identification_create_from_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2198
      functionLinenumberEnd: 2218
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          92
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - identification_create_from_encoding
        - identification_create_from_string
        - is_asn1
        - is_valid_dn
        - memchr
        - strndup
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:2201,6'
          Dst:             is_asn1
        - Src:             'utils/identification.c:2201,23'
          Dst:             is_valid_dn
        - Src:             'utils/identification.c:2203,8'
          Dst:             identification_create_from_encoding
        - Src:             'utils/identification.c:2205,23'
          Dst:             memchr
        - Src:             'utils/identification.c:2208,8'
          Dst:             identification_create_from_encoding
        - Src:             'utils/identification.c:2214,9'
          Dst:             strndup
        - Src:             'utils/identification.c:2215,8'
          Dst:             identification_create_from_string
    - functionName:    identification_create_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2027
      functionLinenumberEnd: 2133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         65
      ICount:          532
      EdgeCount:       90
      CyclomaticComplexity: 27
      functionsReached:
        - atodn
        - chunk_create
        - chunk_create_clone
        - chunk_from_hex
        - create_from_string_with_num_type
        - create_from_string_with_prefix_type
        - create_ip_address_from_string
        - identification_create
        - strchr
        - streq
        - strlen
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:2035,9'
          Dst:             create_from_string_with_prefix_type
        - Src:             'utils/identification.c:2040,9'
          Dst:             create_from_string_with_num_type
        - Src:             'utils/identification.c:2045,6'
          Dst:             strchr
        - Src:             'utils/identification.c:2050,7'
          Dst:             atodn
        - Src:             'utils/identification.c:2052,11'
          Dst:             identification_create
        - Src:             'utils/identification.c:2057,11'
          Dst:             identification_create
        - Src:             'utils/identification.c:2058,20'
          Dst:             strlen
        - Src:             'utils/identification.c:2058,20'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2058,20'
          Dst:             chunk_create_clone
        - Src:             'utils/identification.c:2062,11'
          Dst:             strchr
        - Src:             'utils/identification.c:2064,7'
          Dst:             streq
        - Src:             'utils/identification.c:2065,6'
          Dst:             streq
        - Src:             'utils/identification.c:2066,6'
          Dst:             streq
        - Src:             'utils/identification.c:2067,6'
          Dst:             streq
        - Src:             'utils/identification.c:2068,6'
          Dst:             streq
        - Src:             'utils/identification.c:2069,6'
          Dst:             streq
        - Src:             'utils/identification.c:2070,6'
          Dst:             streq
        - Src:             'utils/identification.c:2073,11'
          Dst:             identification_create
        - Src:             'utils/identification.c:2078,8'
          Dst:             strchr
        - Src:             'utils/identification.c:2081,12'
          Dst:             create_ip_address_from_string
        - Src:             'utils/identification.c:2084,13'
          Dst:             identification_create
        - Src:             'utils/identification.c:2085,22'
          Dst:             strlen
        - Src:             'utils/identification.c:2085,22'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2085,22'
          Dst:             chunk_create_clone
        - Src:             'utils/identification.c:2092,12'
          Dst:             create_ip_address_from_string
        - Src:             'utils/identification.c:2095,13'
          Dst:             identification_create
        - Src:             'utils/identification.c:2096,22'
          Dst:             strlen
        - Src:             'utils/identification.c:2096,22'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2096,22'
          Dst:             chunk_create_clone
        - Src:             'utils/identification.c:2109,12'
          Dst:             identification_create
        - Src:             'utils/identification.c:2110,36'
          Dst:             strlen
        - Src:             'utils/identification.c:2110,36'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2110,21'
          Dst:             chunk_from_hex
        - Src:             'utils/identification.c:2115,12'
          Dst:             identification_create
        - Src:             'utils/identification.c:2116,21'
          Dst:             strlen
        - Src:             'utils/identification.c:2116,21'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2116,21'
          Dst:             chunk_create_clone
        - Src:             'utils/identification.c:2121,12'
          Dst:             identification_create
        - Src:             'utils/identification.c:2122,21'
          Dst:             strlen
        - Src:             'utils/identification.c:2122,21'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2122,21'
          Dst:             chunk_create_clone
        - Src:             'utils/identification.c:2128,11'
          Dst:             identification_create
        - Src:             'utils/identification.c:2129,20'
          Dst:             strlen
        - Src:             'utils/identification.c:2129,20'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2129,20'
          Dst:             chunk_create_clone
    - functionName:    create_from_string_with_prefix_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1846
      functionLinenumberEnd: 1879
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          231
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - asn1_build_known_oid
        - asn1_wrap
        - chunk_create
        - chunk_create_clone
        - chunk_from_hex
        - identification_create
        - strcasepfx
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1852,7'
          Dst:             strcasepfx
        - Src:             'utils/identification.c:1854,11'
          Dst:             identification_create
        - Src:             'utils/identification.c:1855,11'
          Dst:             strlen
        - Src:             'utils/identification.c:1859,36'
          Dst:             strlen
        - Src:             'utils/identification.c:1859,36'
          Dst:             chunk_create
        - Src:             'utils/identification.c:1859,21'
          Dst:             chunk_from_hex
        - Src:             'utils/identification.c:1863,21'
          Dst:             strlen
        - Src:             'utils/identification.c:1863,21'
          Dst:             chunk_create
        - Src:             'utils/identification.c:1863,21'
          Dst:             chunk_create_clone
        - Src:             'utils/identification.c:1867,5'
          Dst:             strcasepfx
        - Src:             'utils/identification.c:1870,10'
          Dst:             asn1_build_known_oid
        - Src:             'utils/identification.c:1872,11'
          Dst:             asn1_wrap
        - Src:             'utils/identification.c:1871,10'
          Dst:             asn1_wrap
        - Src:             'utils/identification.c:1869,21'
          Dst:             asn1_wrap
    - functionName:    create_from_string_with_num_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1888
      functionLinenumberEnd: 1912
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          164
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - chunk_create
        - chunk_create_clone
        - chunk_from_hex
        - identification_create
        - strlen
        - strtoul
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1896,2'
          Dst:             __errno_location
        - Src:             'utils/identification.c:1897,9'
          Dst:             strtoul
        - Src:             'utils/identification.c:1898,6'
          Dst:             __errno_location
        - Src:             'utils/identification.c:1902,9'
          Dst:             identification_create
        - Src:             'utils/identification.c:1905,34'
          Dst:             strlen
        - Src:             'utils/identification.c:1905,34'
          Dst:             chunk_create
        - Src:             'utils/identification.c:1905,19'
          Dst:             chunk_from_hex
        - Src:             'utils/identification.c:1909,19'
          Dst:             strlen
        - Src:             'utils/identification.c:1909,19'
          Dst:             chunk_create
        - Src:             'utils/identification.c:1909,19'
          Dst:             chunk_create_clone
    - functionName:    atodn
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         88
      ICount:          559
      EdgeCount:       113
      CyclomaticComplexity: 27
      functionsReached:
        - asn1_build_known_oid
        - asn1_build_object
        - asn1_is_printablestring
        - asn1_wrap
        - memcpy_noop
        - strlen
        - strncasecmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'utils/identification.c:451,3'
          Branch Sides:    []
      Callsites:
        - Src:             'utils/identification.c:481,11'
          Dst:             strlen
        - Src:             'utils/identification.c:482,8'
          Dst:             strncasecmp
        - Src:             'utils/identification.c:529,13'
          Dst:             asn1_is_printablestring
        - Src:             'utils/identification.c:536,17'
          Dst:             asn1_build_known_oid
        - Src:             'utils/identification.c:543,12'
          Dst:             asn1_wrap
        - Src:             'utils/identification.c:541,11'
          Dst:             asn1_wrap
        - Src:             'utils/identification.c:540,10'
          Dst:             asn1_wrap
        - Src:             'utils/identification.c:575,17'
          Dst:             asn1_build_object
        - Src:             'utils/identification.c:579,4'
          Dst:             memcpy_noop
    - functionName:    create_ip_address_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1919
      functionLinenumberEnd: 2021
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         50
      ICount:          429
      EdgeCount:       66
      CyclomaticComplexity: 18
      functionsReached:
        - atoi
        - chunk_create
        - chunk_create_clone
        - identification_create
        - inet_pton
        - strchr
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1930,8'
          Dst:             strdup
        - Src:             'utils/identification.c:1931,8'
          Dst:             strchr
        - Src:             'utils/identification.c:1940,9'
          Dst:             strchr
        - Src:             'utils/identification.c:1948,6'
          Dst:             inet_pton
        - Src:             'utils/identification.c:1956,10'
          Dst:             atoi
        - Src:             'utils/identification.c:1984,10'
          Dst:             identification_create
        - Src:             'utils/identification.c:1986,19'
          Dst:             chunk_create
        - Src:             'utils/identification.c:1986,19'
          Dst:             chunk_create_clone
        - Src:             'utils/identification.c:1992,7'
          Dst:             inet_pton
        - Src:             'utils/identification.c:2009,10'
          Dst:             identification_create
        - Src:             'utils/identification.c:2011,19'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2011,19'
          Dst:             chunk_create_clone
        - Src:             'utils/identification.c:2015,10'
          Dst:             identification_create
        - Src:             'utils/identification.c:2016,19'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2016,19'
          Dst:             chunk_create_clone
    - functionName:    is_regex_identity
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2141
      functionLinenumberEnd: 2161
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          106
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - strcasepfx
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:2147,7'
          Dst:             strcasepfx
        - Src:             'utils/identification.c:2149,22'
          Dst:             strlen
        - Src:             'utils/identification.c:2152,32'
          Dst:             strlen
    - functionName:    identification_create_from_string_with_regex
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2167
      functionLinenumberEnd: 2192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          87
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - compile_regex
        - destroy
        - identification_create
        - identification_create_from_string
        - is_regex_identity
        - strdup
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:2171,9'
          Dst:             is_regex_identity
        - Src:             'utils/identification.c:2174,10'
          Dst:             identification_create
        - Src:             'utils/identification.c:2183,19'
          Dst:             strdup
        - Src:             'utils/identification.c:2183,19'
          Dst:             strlen
        - Src:             'utils/identification.c:2183,19'
          Dst:             chunk_create
        - Src:             'utils/identification.c:2184,8'
          Dst:             compile_regex
        - Src:             'utils/identification.c:2186,4'
          Dst:             destroy
        - Src:             'utils/identification.c:2191,9'
          Dst:             identification_create_from_string
    - functionName:    identity_to_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1528
      functionLinenumberEnd: 1655
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         76
      ICount:          521
      EdgeCount:       96
      CyclomaticComplexity: 22
      functionsReached:
        - chunk_free
        - chunk_printable
        - dntoa
        - inet_ntop
        - netmask_to_cidr
        - snprintf
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'utils/identification.c:1541,2'
          Branch Sides:    []
      Callsites:
        - Src:             'utils/identification.c:1537,3'
          Dst:             snprintf
        - Src:             'utils/identification.c:1544,4'
          Dst:             snprintf
        - Src:             'utils/identification.c:1548,5'
          Dst:             inet_ntop
        - Src:             'utils/identification.c:1550,5'
          Dst:             snprintf
        - Src:             'utils/identification.c:1556,5'
          Dst:             inet_ntop
        - Src:             'utils/identification.c:1558,5'
          Dst:             snprintf
        - Src:             'utils/identification.c:1561,14'
          Dst:             strlen
        - Src:             'utils/identification.c:1563,7'
          Dst:             netmask_to_cidr
        - Src:             'utils/identification.c:1562,4'
          Dst:             snprintf
        - Src:             'utils/identification.c:1569,5'
          Dst:             inet_ntop
        - Src:             'utils/identification.c:1571,5'
          Dst:             snprintf
        - Src:             'utils/identification.c:1574,14'
          Dst:             strlen
        - Src:             'utils/identification.c:1577,14'
          Dst:             snprintf
        - Src:             'utils/identification.c:1579,8'
          Dst:             inet_ntop
        - Src:             'utils/identification.c:1582,5'
          Dst:             snprintf
        - Src:             'utils/identification.c:1587,5'
          Dst:             inet_ntop
        - Src:             'utils/identification.c:1589,5'
          Dst:             snprintf
        - Src:             'utils/identification.c:1595,5'
          Dst:             inet_ntop
        - Src:             'utils/identification.c:1597,5'
          Dst:             snprintf
        - Src:             'utils/identification.c:1601,15'
          Dst:             strlen
        - Src:             'utils/identification.c:1603,8'
          Dst:             netmask_to_cidr
        - Src:             'utils/identification.c:1602,5'
          Dst:             snprintf
        - Src:             'utils/identification.c:1610,5'
          Dst:             inet_ntop
        - Src:             'utils/identification.c:1612,5'
          Dst:             snprintf
        - Src:             'utils/identification.c:1615,14'
          Dst:             strlen
        - Src:             'utils/identification.c:1618,14'
          Dst:             snprintf
        - Src:             'utils/identification.c:1620,8'
          Dst:             inet_ntop
        - Src:             'utils/identification.c:1623,5'
          Dst:             snprintf
        - Src:             'utils/identification.c:1629,4'
          Dst:             chunk_printable
        - Src:             'utils/identification.c:1630,4'
          Dst:             snprintf
        - Src:             'utils/identification.c:1631,4'
          Dst:             chunk_free
        - Src:             'utils/identification.c:1634,4'
          Dst:             dntoa
        - Src:             'utils/identification.c:1637,4'
          Dst:             snprintf
        - Src:             'utils/identification.c:1640,8'
          Dst:             chunk_printable
        - Src:             'utils/identification.c:1643,5'
          Dst:             snprintf
        - Src:             'utils/identification.c:1648,5'
          Dst:             snprintf
        - Src:             'utils/identification.c:1652,4'
          Dst:             snprintf
    - functionName:    identification_printf_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/identification.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1662
      functionLinenumberEnd: 1678
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          73
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - identity_to_string
        - print_in_hook
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/identification.c:1668,10'
          Dst:             print_in_hook
        - Src:             'utils/identification.c:1671,2'
          Dst:             identity_to_string
        - Src:             'utils/identification.c:1675,10'
          Dst:             print_in_hook
        - Src:             'utils/identification.c:1677,9'
          Dst:             print_in_hook
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_supplementary_groups
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          69
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - getpwuid_r
        - initgroups
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/capabilities.c:394,9'
          Dst:             realloc
        - Src:             'utils/capabilities.c:395,7'
          Dst:             getpwuid_r
        - Src:             'utils/capabilities.c:402,10'
          Dst:             initgroups
    - functionName:    getpwuid_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    initgroups
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          113
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - has_capability
        - init_supplementary_groups
        - prctl
        - setgid
        - setuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/capabilities.c:425,19'
          Dst:             has_capability
        - Src:             'utils/capabilities.c:427,3'
          Dst:             prctl
        - Src:             'utils/capabilities.c:435,20'
          Dst:             init_supplementary_groups
        - Src:             'utils/capabilities.c:441,19'
          Dst:             setgid
        - Src:             'utils/capabilities.c:447,19'
          Dst:             setuid
    - functionName:    has_capability
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          96
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - geteuid
        - has_group
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/capabilities.c:135,21'
          Dst:             geteuid
        - Src:             'utils/capabilities.c:137,22'
          Dst:             has_group
        - Src:             'utils/capabilities.c:149,9'
          Dst:             geteuid
    - functionName:    prctl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setgid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setuid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    geteuid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_group
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          100
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - calloc
        - getegid
        - getgroups
        - sysconf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/capabilities.c:93,15'
          Dst:             getegid
        - Src:             'utils/capabilities.c:97,12'
          Dst:             sysconf
        - Src:             'utils/capabilities.c:104,11'
          Dst:             calloc
        - Src:             'utils/capabilities.c:105,12'
          Dst:             getgroups
    - functionName:    getegid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getgroups
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resolve_gid
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          77
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - getgrnam_r
        - realloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/capabilities.c:344,9'
          Dst:             realloc
        - Src:             'utils/capabilities.c:345,9'
          Dst:             getgrnam_r
    - functionName:    getgrnam_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resolve_uid
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          77
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - getpwnam_r
        - realloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/capabilities.c:296,9'
          Dst:             realloc
        - Src:             'utils/capabilities.c:297,9'
          Dst:             getpwnam_r
    - functionName:    getpwnam_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_gid
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_uid
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_gid
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getegid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/capabilities.c:266,22'
          Dst:             getegid
    - functionName:    get_uid
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - geteuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/capabilities.c:256,22'
          Dst:             geteuid
    - functionName:    check
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - has_capability
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/capabilities.c:247,9'
          Dst:             has_capability
    - functionName:    keep_capability
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    keep
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - has_capability
        - keep_capability
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/capabilities.c:233,7'
          Dst:             has_capability
        - Src:             'utils/capabilities.c:241,9'
          Dst:             keep_capability
    - functionName:    capabilities_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/capabilities.c'
      linkageType:     InternalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          58
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 831
      functionLinenumberEnd: 833
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    frame_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 796
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          78
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_frame_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 811
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clone_
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 816
      functionLinenumberEnd: 826
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_methods
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/backtrace.c:821,2'
          Dst:             memcpy_noop
        - Src:             'utils/backtrace.c:824,18'
          Dst:             get_methods
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_methods
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 926
      functionLinenumberEnd: 933
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 749
      functionLinenumberEnd: 769
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    contains_function
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 672
      functionLinenumberEnd: 745
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          100
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - dladdr
        - streq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/backtrace.c:680,7'
          Dst:             dladdr
        - Src:             'utils/backtrace.c:686,10'
          Dst:             streq
    - functionName:    dladdr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    streq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:31,32'
          Dst:             strcmp
    - functionName:    log_
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 526
      functionLinenumberEnd: 668
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          224
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - backtrace_symbols
        - dladdr
        - esc
        - print_sourceline
        - println
        - strstr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/backtrace.c:531,2'
          Dst:             println
        - Src:             'utils/backtrace.c:537,7'
          Dst:             dladdr
        - Src:             'utils/backtrace.c:541,8'
          Dst:             strstr
        - Src:             'utils/backtrace.c:548,7'
          Dst:             esc
        - Src:             'utils/backtrace.c:549,7'
          Dst:             esc
        - Src:             'utils/backtrace.c:550,7'
          Dst:             esc
        - Src:             'utils/backtrace.c:551,7'
          Dst:             esc
        - Src:             'utils/backtrace.c:547,5'
          Dst:             println
        - Src:             'utils/backtrace.c:557,7'
          Dst:             esc
        - Src:             'utils/backtrace.c:558,7'
          Dst:             esc
        - Src:             'utils/backtrace.c:556,5'
          Dst:             println
        - Src:             'utils/backtrace.c:562,5'
          Dst:             print_sourceline
        - Src:             'utils/backtrace.c:648,15'
          Dst:             backtrace_symbols
        - Src:             'utils/backtrace.c:652,5'
          Dst:             println
        - Src:             'utils/backtrace.c:657,5'
          Dst:             println
    - functionName:    println
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fputs
        - vfprintf
        - vsnprintf
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/backtrace.c:90,3'
          Dst:             vfprintf
        - Src:             'utils/backtrace.c:91,3'
          Dst:             fputs
        - Src:             'utils/backtrace.c:95,3'
          Dst:             vsnprintf
    - functionName:    esc
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fileno
        - tty_escape_get
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/backtrace.c:111,25'
          Dst:             fileno
        - Src:             'utils/backtrace.c:111,10'
          Dst:             tty_escape_get
    - functionName:    print_sourceline
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - esc
        - getc
        - pclose
        - popen
        - println
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/backtrace.c:490,2'
          Dst:             snprintf
        - Src:             'utils/backtrace.c:493,11'
          Dst:             popen
        - Src:             'utils/backtrace.c:498,8'
          Dst:             getc
        - Src:             'utils/backtrace.c:506,3'
          Dst:             pclose
        - Src:             'utils/backtrace.c:508,34'
          Dst:             esc
        - Src:             'utils/backtrace.c:509,5'
          Dst:             esc
        - Src:             'utils/backtrace.c:508,3'
          Dst:             println
    - functionName:    backtrace_symbols
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fileno
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    backtrace_dump
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 970
      functionLinenumberEnd: 981
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - backtrace_create
        - println
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/backtrace.c:973,14'
          Dst:             backtrace_create
        - Src:             'utils/backtrace.c:977,3'
          Dst:             println
    - functionName:    backtrace_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 941
      functionLinenumberEnd: 963
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          75
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - backtrace
        - get_methods
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/backtrace.c:949,16'
          Dst:             backtrace
        - Src:             'utils/backtrace.c:958,2'
          Dst:             memcpy_noop
        - Src:             'utils/backtrace.c:961,17'
          Dst:             get_methods
    - functionName:    backtrace
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    backtrace_deinit
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    backtrace_init
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 472
      functionLinenumberEnd: 472
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/parser_helper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy_function
        - parser_helper_file_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/parser_helper.c:206,2'
          Dst:             array_destroy_function
        - Src:             'utils/parser_helper.c:206,2'
          Dst:             parser_helper_file_destroy
    - functionName:    parser_helper_file_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/parser_helper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - fclose
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/parser_helper.c:73,3'
          Dst:             fclose
    - functionName:    string_get
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/parser_helper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          58
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_add
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/parser_helper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/parser_helper.c:190,41'
          Dst:             strlen
        - Src:             'utils/parser_helper.c:190,41'
          Dst:             chunk_create
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    string_init
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/parser_helper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/parser_helper.c:184,2'
          Dst:             chunk_free
    - functionName:    file_next
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/parser_helper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          163
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - array_get
        - array_insert
        - array_remove
        - fileno
        - fopen
        - fstat
        - parser_helper_file_destroy
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/parser_helper.c:102,2'
          Dst:             array_get
        - Src:             'utils/parser_helper.c:105,3'
          Dst:             array_remove
        - Src:             'utils/parser_helper.c:106,3'
          Dst:             parser_helper_file_destroy
        - Src:             'utils/parser_helper.c:108,3'
          Dst:             array_get
        - Src:             'utils/parser_helper.c:114,4'
          Dst:             strdup
        - Src:             'utils/parser_helper.c:114,4'
          Dst:             fopen
        - Src:             'utils/parser_helper.c:119,28'
          Dst:             fileno
        - Src:             'utils/parser_helper.c:119,22'
          Dst:             fstat
        - Src:             'utils/parser_helper.c:122,5'
          Dst:             array_insert
        - Src:             'utils/parser_helper.c:126,4'
          Dst:             parser_helper_file_destroy
    - functionName:    file_include
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/parser_helper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          131
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - array_get
        - enumerator_create_empty
        - enumerator_create_glob
        - enumerator_create_single
        - path_absolute
        - path_dirname
        - snprintf
        - strdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/parser_helper.c:140,2'
          Dst:             array_get
        - Src:             'utils/parser_helper.c:144,19'
          Dst:             enumerator_create_empty
        - Src:             'utils/parser_helper.c:148,21'
          Dst:             path_absolute
        - Src:             'utils/parser_helper.c:150,7'
          Dst:             snprintf
        - Src:             'utils/parser_helper.c:153,20'
          Dst:             enumerator_create_empty
        - Src:             'utils/parser_helper.c:159,15'
          Dst:             path_dirname
        - Src:             'utils/parser_helper.c:160,7'
          Dst:             snprintf
        - Src:             'utils/parser_helper.c:165,20'
          Dst:             enumerator_create_empty
        - Src:             'utils/parser_helper.c:171,18'
          Dst:             enumerator_create_glob
        - Src:             'utils/parser_helper.c:174,44'
          Dst:             strdup
        - Src:             'utils/parser_helper.c:174,19'
          Dst:             enumerator_create_single
    - functionName:    parser_helper_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/parser_helper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          76
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_create
        - array_insert
        - bio_writer_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/parser_helper.c:246,2'
          Dst:             array_create
        - Src:             'utils/parser_helper.c:246,2'
          Dst:             bio_writer_create
        - Src:             'utils/parser_helper.c:263,2'
          Dst:             array_insert
    - functionName:    current_file
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/parser_helper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/parser_helper.c:87,2'
          Dst:             array_get
    - functionName:    parser_helper_log
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/parser_helper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          86
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - current_file
        - vsnprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/parser_helper.c:223,2'
          Dst:             vsnprintf
        - Src:             'utils/parser_helper.c:226,9'
          Dst:             current_file
    - functionName:    wait_
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - process_destroy
        - waitpid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/process.c:108,8'
          Dst:             waitpid
        - Src:             'utils/process.c:109,2'
          Dst:             process_destroy
    - functionName:    waitpid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - close_if
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/process.c:94,2'
          Dst:             close_if
        - Src:             'utils/process.c:95,2'
          Dst:             close_if
        - Src:             'utils/process.c:96,2'
          Dst:             close_if
        - Src:             'utils/process.c:97,2'
          Dst:             close_if
        - Src:             'utils/process.c:98,2'
          Dst:             close_if
        - Src:             'utils/process.c:99,2'
          Dst:             close_if
    - functionName:    close_if
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - close
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/process.c:84,3'
          Dst:             close
    - functionName:    process_start_shell
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - process_start
        - vasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/process.c:245,8'
          Dst:             vasprintf
        - Src:             'utils/process.c:252,12'
          Dst:             process_start
    - functionName:    process_start
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          375
      EdgeCount:       76
      CyclomaticComplexity: 19
      functionsReached:
        - close_if
        - closefrom
        - dup2
        - execve
        - fork
        - pipe
        - process_destroy
        - raise
      functionUses:    1
      BranchProfiles:
        - Branch String:   'utils/process.c:163,2'
          Branch Sides:    []
      Callsites:
        - Src:             'utils/process.c:143,12'
          Dst:             pipe
        - Src:             'utils/process.c:146,3'
          Dst:             process_destroy
        - Src:             'utils/process.c:149,13'
          Dst:             pipe
        - Src:             'utils/process.c:152,3'
          Dst:             process_destroy
        - Src:             'utils/process.c:155,13'
          Dst:             pipe
        - Src:             'utils/process.c:158,3'
          Dst:             process_destroy
        - Src:             'utils/process.c:162,14'
          Dst:             fork
        - Src:             'utils/process.c:167,4'
          Dst:             process_destroy
        - Src:             'utils/process.c:171,4'
          Dst:             close_if
        - Src:             'utils/process.c:172,4'
          Dst:             close_if
        - Src:             'utils/process.c:173,4'
          Dst:             close_if
        - Src:             'utils/process.c:176,9'
          Dst:             dup2
        - Src:             'utils/process.c:178,6'
          Dst:             raise
        - Src:             'utils/process.c:183,9'
          Dst:             dup2
        - Src:             'utils/process.c:185,6'
          Dst:             raise
        - Src:             'utils/process.c:190,9'
          Dst:             dup2
        - Src:             'utils/process.c:192,6'
          Dst:             raise
        - Src:             'utils/process.c:197,5'
          Dst:             closefrom
        - Src:             'utils/process.c:199,8'
          Dst:             execve
        - Src:             'utils/process.c:201,5'
          Dst:             raise
        - Src:             'utils/process.c:206,4'
          Dst:             close_if
        - Src:             'utils/process.c:207,4'
          Dst:             close_if
        - Src:             'utils/process.c:208,4'
          Dst:             close_if
    - functionName:    fork
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dup2
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raise
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execve
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_strerror_buf
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/strerror.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         15
      ICount:          105
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strerror_deinit
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/strerror.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_no_ld
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/strerror.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strerror_init
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/strerror.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_no_ld
        - thread_value_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/strerror.c:132,17'
          Dst:             thread_value_create
        - Src:             'utils/utils/strerror.c:132,17'
          Dst:             free_no_ld
    - functionName:    strerror_safe
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/strerror.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __xpg_strerror_r
        - get_strerror_buf
        - strerror
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/strerror.c:85,8'
          Dst:             get_strerror_buf
        - Src:             'utils/utils/strerror.c:89,10'
          Dst:             strerror
        - Src:             'utils/utils/strerror.c:97,8'
          Dst:             __xpg_strerror_r
    - functionName:    strerror
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __xpg_strerror_r
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomics_deinit
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/atomics.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomics_init
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/atomics.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strreplace
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          208
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - memcpy_noop
        - strcpy
        - strlen
        - strstr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/string.c:54,9'
          Dst:             strlen
        - Src:             'utils/utils/string.c:55,9'
          Dst:             strlen
        - Src:             'utils/utils/string.c:58,33'
          Dst:             strstr
        - Src:             'utils/utils/string.c:67,25'
          Dst:             strlen
        - Src:             'utils/utils/string.c:71,9'
          Dst:             strlen
        - Src:             'utils/utils/string.c:73,17'
          Dst:             strstr
        - Src:             'utils/utils/string.c:83,3'
          Dst:             memcpy_noop
        - Src:             'utils/utils/string.c:85,3'
          Dst:             memcpy_noop
        - Src:             'utils/utils/string.c:89,25'
          Dst:             strstr
        - Src:             'utils/utils/string.c:90,2'
          Dst:             strcpy
    - functionName:    translate
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          91
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - strchr
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/string.c:26,6'
          Dst:             strlen
        - Src:             'utils/utils/string.c:26,22'
          Dst:             strlen
        - Src:             'utils/utils/string.c:33,16'
          Dst:             strchr
    - functionName:    mem_printf_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          200
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - print_in_hook
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/memory.c:227,13'
          Dst:             print_in_hook
        - Src:             'utils/utils/memory.c:248,15'
          Dst:             print_in_hook
    - functionName:    utils_memrchr
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    memstr
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          82
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - memeq
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/memory.c:122,35'
          Dst:             strlen
        - Src:             'utils/utils/memory.c:128,7'
          Dst:             memeq
    - functionName:    memcpy_cond
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          64
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq_const
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          57
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memxor
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/memory.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          217
      EdgeCount:       33
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    21
      BranchProfiles:
        - Branch String:   'utils/utils/memory.c:34,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    is_ci
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/tty.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          83
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - fileno
        - getenv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/tty.c:59,14'
          Dst:             getenv
        - Src:             'utils/utils/tty.c:59,31'
          Dst:             getenv
        - Src:             'utils/utils/tty.c:60,10'
          Dst:             getenv
        - Src:             'utils/utils/tty.c:61,10'
          Dst:             getenv
        - Src:             'utils/utils/tty.c:63,28'
          Dst:             fileno
        - Src:             'utils/utils/tty.c:63,52'
          Dst:             fileno
    - functionName:    tty_escape_get
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/tty.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          140
      EdgeCount:       34
      CyclomaticComplexity: 3
      functionsReached:
        - enum_to_name
        - is_ci
        - isatty
      functionUses:    1
      BranchProfiles:
        - Branch String:   'utils/utils/tty.c:75,2'
          Branch Sides:    []
      Callsites:
        - Src:             'utils/utils/tty.c:71,7'
          Dst:             isatty
        - Src:             'utils/utils/tty.c:71,22'
          Dst:             is_ci
        - Src:             'utils/utils/tty.c:102,11'
          Dst:             enum_to_name
    - functionName:    isatty
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mkdir_p
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          150
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - access
        - mkdir
        - path_first_separator
        - path_is_separator
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/path.c:178,8'
          Dst:             snprintf
        - Src:             'utils/utils/path.c:185,7'
          Dst:             path_is_separator
        - Src:             'utils/utils/path.c:191,9'
          Dst:             path_is_separator
        - Src:             'utils/utils/path.c:195,16'
          Dst:             path_first_separator
        - Src:             'utils/utils/path.c:199,7'
          Dst:             access
        - Src:             'utils/utils/path.c:204,8'
          Dst:             mkdir
    - functionName:    path_is_separator
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/path.h'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    path_first_separator
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          72
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - path_is_separator
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/path.c:39,9'
          Dst:             strlen
        - Src:             'utils/utils/path.c:43,7'
          Dst:             path_is_separator
    - functionName:    mkdir
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    path_absolute
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - path_is_separator
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/path.c:159,6'
          Dst:             path_is_separator
    - functionName:    path_basename
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         31
      ICount:          157
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - path_is_separator
        - path_last_separator
        - strdup
        - strndup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/path.c:120,10'
          Dst:             strdup
        - Src:             'utils/utils/path.c:122,8'
          Dst:             path_last_separator
        - Src:             'utils/utils/path.c:125,24'
          Dst:             path_is_separator
        - Src:             'utils/utils/path.c:129,22'
          Dst:             path_is_separator
        - Src:             'utils/utils/path.c:131,11'
          Dst:             strndup
        - Src:             'utils/utils/path.c:134,9'
          Dst:             path_last_separator
        - Src:             'utils/utils/path.c:137,17'
          Dst:             strndup
        - Src:             'utils/utils/path.c:137,45'
          Dst:             strdup
    - functionName:    path_last_separator
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          73
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - path_is_separator
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/path.c:62,9'
          Dst:             strlen
        - Src:             'utils/utils/path.c:66,7'
          Dst:             path_is_separator
    - functionName:    path_dirname
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/path.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          122
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - path_is_separator
        - path_last_separator
        - strdup
        - strndup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/path.c:81,8'
          Dst:             path_last_separator
        - Src:             'utils/utils/path.c:85,24'
          Dst:             path_is_separator
        - Src:             'utils/utils/path.c:89,9'
          Dst:             path_last_separator
        - Src:             'utils/utils/path.c:102,10'
          Dst:             strdup
        - Src:             'utils/utils/path.c:104,23'
          Dst:             path_is_separator
        - Src:             'utils/utils/path.c:108,9'
          Dst:             strndup
    - functionName:    return_need_more
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    return_success
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    return_failed
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/status.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    time_delta_printf_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/time.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - print_in_hook
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/time.c:198,9'
          Dst:             print_in_hook
    - functionName:    time_printf_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/time.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          107
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - gmtime_r
        - localtime_r
        - print_in_hook
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/time.c:155,10'
          Dst:             gmtime_r
        - Src:             'utils/utils/time.c:159,10'
          Dst:             localtime_r
        - Src:             'utils/utils/time.c:164,10'
          Dst:             print_in_hook
        - Src:             'utils/utils/time.c:167,9'
          Dst:             print_in_hook
    - functionName:    timespan_from_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/time.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          155
      EdgeCount:       36
      CyclomaticComplexity: 8
      functionsReached:
        - __ctype_b_loc
        - __errno_location
        - strtoull
      functionUses:    1
      BranchProfiles:
        - Branch String:   'utils/utils/time.c:110,4'
          Branch Sides:    []
      Callsites:
        - Src:             'utils/utils/time.c:93,3'
          Dst:             __errno_location
        - Src:             'utils/utils/time.c:94,13'
          Dst:             strtoull
        - Src:             'utils/utils/time.c:99,7'
          Dst:             __errno_location
        - Src:             'utils/utils/time.c:101,11'
          Dst:             __ctype_b_loc
    - functionName:    time_monotonic
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/utils/time.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - clock_gettime
        - gettimeofday
        - time
      functionUses:    55
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/utils/time.c:56,6'
          Dst:             clock_gettime
        - Src:             'utils/utils/time.c:73,10'
          Dst:             time
        - Src:             'utils/utils/time.c:75,6'
          Dst:             gettimeofday
    - functionName:    get_thread_id
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    thread_cleanup
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - thread_cleanup_popall_internal
        - thread_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:301,2'
          Dst:             thread_cleanup_popall_internal
        - Src:             'threading/thread.c:304,2'
          Dst:             thread_destroy
    - functionName:    thread_cleanup_popall_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    thread_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    join
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          111
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - pthread_equal
        - pthread_join
        - pthread_self
        - thread_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:231,37'
          Dst:             pthread_self
        - Src:             'threading/thread.c:231,6'
          Dst:             pthread_equal
        - Src:             'threading/thread.c:248,3'
          Dst:             thread_destroy
        - Src:             'threading/thread.c:255,2'
          Dst:             pthread_join
    - functionName:    pthread_self
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_equal
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_join
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    detach
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_detach
        - thread_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:219,2'
          Dst:             pthread_detach
        - Src:             'threading/thread.c:221,2'
          Dst:             thread_destroy
    - functionName:    pthread_detach
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kill_
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_equal
        - pthread_kill
        - pthread_self
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:200,37'
          Dst:             pthread_self
        - Src:             'threading/thread.c:200,6'
          Dst:             pthread_equal
        - Src:             'threading/thread.c:211,2'
          Dst:             pthread_kill
    - functionName:    pthread_kill
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cancel
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_cancel
        - pthread_equal
        - pthread_self
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:182,37'
          Dst:             pthread_self
        - Src:             'threading/thread.c:182,6'
          Dst:             pthread_equal
        - Src:             'threading/thread.c:189,2'
          Dst:             pthread_cancel
    - functionName:    pthread_cancel
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    thread_create_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - mutex_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:267,2'
          Dst:             linked_list_create
        - Src:             'threading/thread.c:267,2'
          Dst:             mutex_create
    - functionName:    threads_deinit
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - thread_current
        - thread_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:521,53'
          Dst:             thread_current
        - Src:             'threading/thread.c:528,2'
          Dst:             thread_destroy
    - functionName:    thread_current
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_thread_id
        - thread_create_internal
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:375,10'
          Dst:             thread_create_internal
        - Src:             'threading/thread.c:376,14'
          Dst:             get_thread_id
    - functionName:    threads_init
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_thread_id
        - mutex_create
        - pthread_self
        - thread_create_internal
        - thread_value_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:495,34'
          Dst:             thread_create_internal
        - Src:             'threading/thread.c:497,11'
          Dst:             thread_value_create
        - Src:             'threading/thread.c:500,27'
          Dst:             pthread_self
        - Src:             'threading/thread.c:501,19'
          Dst:             thread_value_create
        - Src:             'threading/thread.c:503,13'
          Dst:             mutex_create
        - Src:             'threading/thread.c:504,20'
          Dst:             get_thread_id
    - functionName:    thread_cancellation_point
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_testcancel
        - thread_cancelability
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:468,13'
          Dst:             thread_cancelability
        - Src:             'threading/thread.c:471,2'
          Dst:             pthread_testcancel
        - Src:             'threading/thread.c:473,2'
          Dst:             thread_cancelability
    - functionName:    thread_cancelability
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_setcancelstate
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:448,2'
          Dst:             pthread_setcancelstate
    - functionName:    pthread_testcancel
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_setcancelstate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    thread_cleanup_popall
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 438
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - thread_cleanup_popall_internal
        - thread_current
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:435,46'
          Dst:             thread_current
        - Src:             'threading/thread.c:437,2'
          Dst:             thread_cleanup_popall_internal
    - functionName:    thread_cleanup_pop
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - thread_current
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:413,46'
          Dst:             thread_current
    - functionName:    thread_cleanup_push
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 396
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - thread_current
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:397,46'
          Dst:             thread_current
    - functionName:    thread_current_id
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - thread_current
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:387,46'
          Dst:             thread_current
    - functionName:    thread_main
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - __pthread_register_cancel
        - __pthread_unregister_cancel
        - __pthread_unwind_next
        - __sigsetjmp
        - get_thread_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:318,13'
          Dst:             get_thread_id
        - Src:             'threading/thread.c:321,2'
          Dst:             __sigsetjmp
        - Src:             'threading/thread.c:321,2'
          Dst:             __pthread_unwind_next
        - Src:             'threading/thread.c:321,2'
          Dst:             __pthread_register_cancel
        - Src:             'threading/thread.c:337,2'
          Dst:             __pthread_unregister_cancel
    - functionName:    __sigsetjmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __pthread_unwind_next
      functionSourceFile: ''
      linkageType:     ExternalWeakLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __pthread_register_cancel
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __pthread_unregister_cancel
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    thread_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_create
        - thread_create_internal
        - thread_destroy
        - thread_main
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread.c:347,27'
          Dst:             thread_create_internal
        - Src:             'threading/thread.c:352,6'
          Dst:             pthread_create
        - Src:             'threading/thread.c:352,6'
          Dst:             thread_main
        - Src:             'threading/thread.c:358,3'
          Dst:             thread_destroy
    - functionName:    pthread_create
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - pthread_getspecific
        - pthread_key_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread_value.c:65,9'
          Dst:             pthread_getspecific
        - Src:             'threading/thread_value.c:71,2'
          Dst:             pthread_key_delete
    - functionName:    pthread_getspecific
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_key_delete
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_getspecific
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread_value.c:53,9'
          Dst:             pthread_getspecific
    - functionName:    set
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_setspecific
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread_value.c:47,2'
          Dst:             pthread_setspecific
    - functionName:    pthread_setspecific
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    thread_value_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/thread_value.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_key_create
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/thread_value.c:91,2'
          Dst:             pthread_key_create
    - functionName:    pthread_key_create
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    condvar_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_cond_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:309,2'
          Dst:             pthread_cond_destroy
    - functionName:    pthread_cond_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    broadcast
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_cond_broadcast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:303,2'
          Dst:             pthread_cond_broadcast
    - functionName:    pthread_cond_broadcast
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    signal_
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_cond_signal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:297,2'
          Dst:             pthread_cond_signal
    - functionName:    pthread_cond_signal
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timed_wait_abs
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          140
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - pthread_cond_timedwait
        - thread_current
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:260,20'
          Dst:             thread_current
        - Src:             'threading/mutex.c:265,15'
          Dst:             pthread_cond_timedwait
        - Src:             'threading/mutex.c:272,15'
          Dst:             pthread_cond_timedwait
    - functionName:    pthread_cond_timedwait
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timeval_add_ms
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timed_wait
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_monotonic
        - timed_wait_abs
        - timeval_add_ms
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:284,2'
          Dst:             time_monotonic
        - Src:             'threading/mutex.c:290,2'
          Dst:             timeval_add_ms
        - Src:             'threading/mutex.c:291,9'
          Dst:             timed_wait_abs
    - functionName:    wait_
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          114
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - pthread_cond_wait
        - thread_current
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:225,20'
          Dst:             thread_current
        - Src:             'threading/mutex.c:232,3'
          Dst:             pthread_cond_wait
        - Src:             'threading/mutex.c:238,3'
          Dst:             pthread_cond_wait
    - functionName:    pthread_cond_wait
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mutex_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:158,2'
          Dst:             pthread_mutex_destroy
    - functionName:    pthread_mutex_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mutex_destroy_r
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:166,2'
          Dst:             pthread_mutex_destroy
    - functionName:    unlock
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:120,8'
          Dst:             pthread_mutex_unlock
    - functionName:    pthread_mutex_unlock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unlock_r
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - thread_current
        - unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:149,3'
          Dst:             thread_current
        - Src:             'threading/mutex.c:150,3'
          Dst:             unlock
    - functionName:    lock
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_mutex_lock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:107,8'
          Dst:             pthread_mutex_lock
    - functionName:    pthread_mutex_lock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lock_r
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - lock
        - thread_current
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/mutex.c:130,19'
          Dst:             thread_current
        - Src:             'threading/mutex.c:138,3'
          Dst:             lock
    - functionName:    condvar_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 7
      functionsReached:
        - pthread_cond_init
        - pthread_condattr_destroy
        - pthread_condattr_init
        - pthread_condattr_setclock
      functionUses:    19
      BranchProfiles:
        - Branch String:   'threading/mutex.c:318,2'
          Branch Sides:    []
      Callsites:
        - Src:             'threading/mutex.c:339,5'
          Dst:             pthread_condattr_init
        - Src:             'threading/mutex.c:341,5'
          Dst:             pthread_condattr_setclock
        - Src:             'threading/mutex.c:343,5'
          Dst:             pthread_cond_init
        - Src:             'threading/mutex.c:344,5'
          Dst:             pthread_condattr_destroy
    - functionName:    pthread_condattr_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_condattr_setclock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_cond_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_condattr_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mutex_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/mutex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          107
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - pthread_mutex_init
      functionUses:    40
      BranchProfiles:
        - Branch String:   'threading/mutex.c:175,2'
          Branch Sides:    []
      Callsites:
        - Src:             'threading/mutex.c:192,4'
          Dst:             pthread_mutex_init
        - Src:             'threading/mutex.c:210,4'
          Dst:             pthread_mutex_init
    - functionName:    pthread_mutex_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    condvar_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    broadcast
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    signal_
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timed_wait_abs
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          77
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/rwlock.c:431,2'
          Dst:             thread_cleanup_push
        - Src:             'threading/rwlock.c:432,2'
          Dst:             thread_cleanup_push
        - Src:             'threading/rwlock.c:434,2'
          Dst:             thread_cleanup_pop
        - Src:             'threading/rwlock.c:435,2'
          Dst:             thread_cleanup_pop
    - functionName:    timeval_add_ms
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timed_wait
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 453
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_monotonic
        - timed_wait_abs
        - timeval_add_ms
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/rwlock.c:445,2'
          Dst:             time_monotonic
        - Src:             'threading/rwlock.c:451,2'
          Dst:             timeval_add_ms
        - Src:             'threading/rwlock.c:453,9'
          Dst:             timed_wait_abs
    - functionName:    wait_
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/rwlock.c:413,2'
          Dst:             thread_cleanup_push
        - Src:             'threading/rwlock.c:414,2'
          Dst:             thread_cleanup_push
        - Src:             'threading/rwlock.c:418,2'
          Dst:             thread_cleanup_pop
        - Src:             'threading/rwlock.c:420,2'
          Dst:             thread_cleanup_pop
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_rwlock_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/rwlock.c:171,2'
          Dst:             pthread_rwlock_destroy
    - functionName:    pthread_rwlock_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unlock
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_rwlock_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/rwlock.c:161,8'
          Dst:             pthread_rwlock_unlock
    - functionName:    pthread_rwlock_unlock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    try_write_lock
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_rwlock_trywrlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/rwlock.c:153,9'
          Dst:             pthread_rwlock_trywrlock
    - functionName:    pthread_rwlock_trywrlock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    write_lock
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_rwlock_wrlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/rwlock.c:142,8'
          Dst:             pthread_rwlock_wrlock
    - functionName:    pthread_rwlock_wrlock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read_lock
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_rwlock_rdlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/rwlock.c:128,8'
          Dst:             pthread_rwlock_rdlock
    - functionName:    pthread_rwlock_rdlock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rwlock_condvar_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - condvar_create
        - mutex_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/rwlock.c:487,2'
          Dst:             mutex_create
        - Src:             'threading/rwlock.c:487,2'
          Dst:             condvar_create
    - functionName:    rwlock_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 7
      functionsReached:
        - pthread_rwlock_init
      functionUses:    33
      BranchProfiles:
        - Branch String:   'threading/rwlock.c:181,2'
          Branch Sides:    []
      Callsites:
        - Src:             'threading/rwlock.c:198,4'
          Dst:             pthread_rwlock_init
    - functionName:    pthread_rwlock_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/spinlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_spin_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/spinlock.c:99,2'
          Dst:             pthread_spin_destroy
    - functionName:    pthread_spin_destroy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unlock
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/spinlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_spin_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/spinlock.c:84,8'
          Dst:             pthread_spin_unlock
    - functionName:    pthread_spin_unlock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lock
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/spinlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pthread_spin_lock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/spinlock.c:67,8'
          Dst:             pthread_spin_lock
    - functionName:    pthread_spin_lock
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    spinlock_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/spinlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_spin_init
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/spinlock.c:122,2'
          Dst:             pthread_spin_init
    - functionName:    pthread_spin_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/semaphore.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    post
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/semaphore.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timed_wait_abs
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/semaphore.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/semaphore.c:102,2'
          Dst:             thread_cleanup_push
        - Src:             'threading/semaphore.c:107,4'
          Dst:             thread_cleanup_pop
        - Src:             'threading/semaphore.c:112,2'
          Dst:             thread_cleanup_pop
    - functionName:    timed_wait
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/semaphore.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          75
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - time_monotonic
        - timed_wait_abs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/semaphore.c:125,2'
          Dst:             time_monotonic
        - Src:             'threading/semaphore.c:128,9'
          Dst:             timed_wait_abs
    - functionName:    wait_
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/semaphore.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/semaphore.c:78,2'
          Dst:             thread_cleanup_push
        - Src:             'threading/semaphore.c:84,2'
          Dst:             thread_cleanup_pop
    - functionName:    semaphore_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/threading/semaphore.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - condvar_create
        - mutex_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'threading/semaphore.c:176,16'
          Dst:             mutex_create
        - Src:             'threading/semaphore.c:177,15'
          Dst:             condvar_create
    - functionName:    strneq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:39,32'
          Dst:             strncmp
    - functionName:    stream_create_unix
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - close
        - connect
        - socket
        - stream_create_from_fd
        - stream_parse_uri_unix
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_unix.c:51,8'
          Dst:             stream_parse_uri_unix
        - Src:             'networking/streams/stream_unix.c:57,7'
          Dst:             socket
        - Src:             'networking/streams/stream_unix.c:63,6'
          Dst:             connect
        - Src:             'networking/streams/stream_unix.c:66,3'
          Dst:             close
        - Src:             'networking/streams/stream_unix.c:69,9'
          Dst:             stream_create_from_fd
    - functionName:    stream_parse_uri_unix
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memset_noop
        - strlen
        - strncpy
        - strpfx
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_unix.c:29,7'
          Dst:             strpfx
        - Src:             'networking/streams/stream_unix.c:35,2'
          Dst:             memset_noop
        - Src:             'networking/streams/stream_unix.c:37,2'
          Dst:             strncpy
        - Src:             'networking/streams/stream_unix.c:40,50'
          Dst:             strlen
    - functionName:    strpfx
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - strneq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:47,27'
          Dst:             strlen
        - Src:             './utils/utils/string.h:47,9'
          Dst:             strneq
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stream_service_create_unix
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service_unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          182
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - bind
        - chown
        - close
        - listen
        - socket
        - stream_parse_uri_unix
        - stream_service_create_from_fd
        - umask
        - unlink
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_service_unix.c:35,8'
          Dst:             stream_parse_uri_unix
        - Src:             'networking/streams/stream_service_unix.c:47,7'
          Dst:             socket
        - Src:             'networking/streams/stream_service_unix.c:53,2'
          Dst:             unlink
        - Src:             'networking/streams/stream_service_unix.c:55,8'
          Dst:             umask
        - Src:             'networking/streams/stream_service_unix.c:56,6'
          Dst:             bind
        - Src:             'networking/streams/stream_service_unix.c:59,3'
          Dst:             close
        - Src:             'networking/streams/stream_service_unix.c:62,2'
          Dst:             umask
        - Src:             'networking/streams/stream_service_unix.c:70,7'
          Dst:             chown
        - Src:             'networking/streams/stream_service_unix.c:79,7'
          Dst:             chown
        - Src:             'networking/streams/stream_service_unix.c:85,6'
          Dst:             listen
        - Src:             'networking/streams/stream_service_unix.c:88,3'
          Dst:             unlink
        - Src:             'networking/streams/stream_service_unix.c:89,3'
          Dst:             close
        - Src:             'networking/streams/stream_service_unix.c:92,9'
          Dst:             stream_service_create_from_fd
    - functionName:    chown
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strneq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:39,32'
          Dst:             strncmp
    - functionName:    strpfx
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - strneq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/string.h:47,27'
          Dst:             strlen
        - Src:             './utils/utils/string.h:47,9'
          Dst:             strneq
    - functionName:    stream_create_vsock
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_vsock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stream_create_from_fd
        - stream_initialize_socket_vsock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_vsock.c:131,11'
          Dst:             stream_initialize_socket_vsock
        - Src:             'networking/streams/stream_vsock.c:133,29'
          Dst:             stream_create_from_fd
    - functionName:    stream_initialize_socket_vsock
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_vsock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          97
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - bind
        - close
        - connect
        - listen
        - socket
        - stream_parse_uri_vsock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_vsock.c:81,8'
          Dst:             stream_parse_uri_vsock
        - Src:             'networking/streams/stream_vsock.c:88,7'
          Dst:             socket
        - Src:             'networking/streams/stream_vsock.c:97,7'
          Dst:             bind
        - Src:             'networking/streams/stream_vsock.c:101,4'
          Dst:             close
        - Src:             'networking/streams/stream_vsock.c:105,7'
          Dst:             listen
        - Src:             'networking/streams/stream_vsock.c:109,4'
          Dst:             close
        - Src:             'networking/streams/stream_vsock.c:115,7'
          Dst:             connect
        - Src:             'networking/streams/stream_vsock.c:119,4'
          Dst:             close
    - functionName:    stream_parse_uri_vsock
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_vsock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          117
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - strpfx
        - strtoul
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_vsock.c:38,7'
          Dst:             strpfx
        - Src:             'networking/streams/stream_vsock.c:51,9'
          Dst:             strtoul
        - Src:             'networking/streams/stream_vsock.c:59,9'
          Dst:             strtoul
    - functionName:    stream_service_create_vsock
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service_vsock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stream_initialize_socket_vsock
        - stream_service_create_from_fd
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_service_vsock.c:27,11'
          Dst:             stream_initialize_socket_vsock
        - Src:             'networking/streams/stream_service_vsock.c:29,29'
          Dst:             stream_service_create_from_fd
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/printf_hook/printf_hook_glibc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    custom_arginfo
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/printf_hook/printf_hook_glibc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          69
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    custom_print
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/printf_hook/printf_hook_glibc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          67
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_handler
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/printf_hook/printf_hook_glibc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          190
      EdgeCount:       36
      CyclomaticComplexity: 9
      functionsReached:
        - custom_arginfo
        - custom_print
        - register_printf_specifier
      functionUses:    0
      BranchProfiles:
        - Branch String:   'utils/printf_hook/printf_hook_glibc.c:184,3'
          Branch Sides:    []
      Callsites:
        - Src:             'utils/printf_hook/printf_hook_glibc.c:204,3'
          Dst:             register_printf_specifier
        - Src:             'utils/printf_hook/printf_hook_glibc.c:204,3'
          Dst:             custom_print
        - Src:             'utils/printf_hook/printf_hook_glibc.c:204,3'
          Dst:             custom_arginfo
    - functionName:    register_printf_specifier
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    printf_hook_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/printf_hook/printf_hook_glibc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memset_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/printf_hook/printf_hook_glibc.c:242,2'
          Dst:             memset_noop
    - functionName:    print_in_hook
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/printf_hook/printf_hook_glibc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - vfprintf
      functionUses:    39
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/printf_hook/printf_hook_glibc.c:88,12'
          Dst:             vfprintf
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rc2_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sha1_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          111
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1_prf.c:110,29'
          Dst:             htonl
    - functionName:    get_key_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_block_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - get_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1_prf.c:86,11'
          Dst:             chunk_create
        - Src:             'sha1_prf.c:87,9'
          Dst:             get_bytes
    - functionName:    get_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          82
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - SHA1Update
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1_prf.c:66,2'
          Dst:             SHA1Update
        - Src:             'sha1_prf.c:68,12'
          Dst:             htonl
        - Src:             'sha1_prf.c:69,12'
          Dst:             htonl
        - Src:             'sha1_prf.c:70,12'
          Dst:             htonl
        - Src:             'sha1_prf.c:71,12'
          Dst:             htonl
        - Src:             'sha1_prf.c:72,12'
          Dst:             htonl
    - functionName:    sha1_prf_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sha1_hasher_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1_prf.c:134,2'
          Dst:             sha1_hasher_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sha2_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sha3_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_shake.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_seed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_shake.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_seed_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_shake.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_block_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_shake.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_shake.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3_shake.c:66,11'
          Dst:             chunk_create
    - functionName:    get_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_shake.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_shake.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sha3_shake_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_shake.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          105
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - sha3_keccak_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sha3_shake.c:108,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sha3_shake.c:136,17'
          Dst:             sha3_keccak_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gmp_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 637
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          148
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_clear
        - chunk_free
        - gmp_mpz_to_chunk
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:585,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:586,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:587,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:588,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:589,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:590,9'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:591,9'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:592,10'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:600,2'
          Dst:             chunk_free
        - Src:             'gmp_rsa_private_key.c:601,2'
          Dst:             chunk_free
        - Src:             'gmp_rsa_private_key.c:602,2'
          Dst:             chunk_clear
        - Src:             'gmp_rsa_private_key.c:603,2'
          Dst:             chunk_clear
        - Src:             'gmp_rsa_private_key.c:604,2'
          Dst:             chunk_clear
        - Src:             'gmp_rsa_private_key.c:605,2'
          Dst:             chunk_clear
        - Src:             'gmp_rsa_private_key.c:606,2'
          Dst:             chunk_clear
        - Src:             'gmp_rsa_private_key.c:607,2'
          Dst:             chunk_clear
    - functionName:    gmp_mpz_to_chunk
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __gmpz_export
        - __gmpz_sizeinbase
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:131,14'
          Dst:             __gmpz_sizeinbase
        - Src:             'gmp_rsa_private_key.c:132,10'
          Dst:             __gmpz_export
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    __gmpz_sizeinbase
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_export
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 631
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          91
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - gmp_mpz_to_chunk
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:622,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:623,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:627,2'
          Dst:             chunk_free
        - Src:             'gmp_rsa_private_key.c:628,2'
          Dst:             chunk_free
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
        - gmp_mpz_to_chunk
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:567,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:568,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_private_key.c:572,2'
          Dst:             chunk_free
        - Src:             'gmp_rsa_private_key.c:573,2'
          Dst:             chunk_free
    - functionName:    get_keysize
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __gmpz_sizeinbase
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:558,9'
          Dst:             __gmpz_sizeinbase
    - functionName:    constant_time_lt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    constant_time_mask
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - constant_time_neq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/constant_time.h:135,20'
          Dst:             constant_time_neq
    - functionName:    constant_time_neq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    constant_time_ge
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - constant_time_lt
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/constant_time.h:111,13'
          Dst:             constant_time_lt
    - functionName:    constant_time_select
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - constant_time_mask
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/constant_time.h:160,15'
          Dst:             constant_time_mask
    - functionName:    constant_time_eq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - constant_time_neq
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/constant_time.h:60,13'
          Dst:             constant_time_neq
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          229
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_clear
        - chunk_create
        - constant_time_eq
        - constant_time_ge
        - constant_time_select
        - rsadp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:508,7'
          Dst:             rsadp
        - Src:             'gmp_rsa_private_key.c:518,11'
          Dst:             constant_time_eq
        - Src:             'gmp_rsa_private_key.c:519,11'
          Dst:             constant_time_eq
        - Src:             'gmp_rsa_private_key.c:524,16'
          Dst:             constant_time_eq
        - Src:             'gmp_rsa_private_key.c:526,15'
          Dst:             constant_time_select
        - Src:             'gmp_rsa_private_key.c:531,11'
          Dst:             constant_time_ge
        - Src:             'gmp_rsa_private_key.c:537,12'
          Dst:             constant_time_select
        - Src:             'gmp_rsa_private_key.c:539,11'
          Dst:             chunk_create
        - Src:             'gmp_rsa_private_key.c:543,8'
          Dst:             constant_time_ge
        - Src:             'gmp_rsa_private_key.c:549,3'
          Dst:             chunk_clear
        - Src:             'gmp_rsa_private_key.c:551,2'
          Dst:             chunk_clear
    - functionName:    rsadp
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          111
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __gmpz_add
        - __gmpz_export
        - __gmpz_import
        - __gmpz_init
        - __gmpz_mod
        - __gmpz_mul
        - __gmpz_powm_sec
        - __gmpz_sub
        - mpz_clear_sensitive
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:219,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:220,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:222,2'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:224,2'
          Dst:             __gmpz_powm_sec
        - Src:             'gmp_rsa_private_key.c:225,2'
          Dst:             __gmpz_powm_sec
        - Src:             'gmp_rsa_private_key.c:226,2'
          Dst:             __gmpz_sub
        - Src:             'gmp_rsa_private_key.c:227,2'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:228,2'
          Dst:             __gmpz_mul
        - Src:             'gmp_rsa_private_key.c:229,2'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:231,2'
          Dst:             __gmpz_mul
        - Src:             'gmp_rsa_private_key.c:232,2'
          Dst:             __gmpz_add
        - Src:             'gmp_rsa_private_key.c:235,18'
          Dst:             __gmpz_export
        - Src:             'gmp_rsa_private_key.c:241,2'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:242,2'
          Dst:             mpz_clear_sensitive
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    42
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_import
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - int
        - size_t
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_powm_sec
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_sub
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_mod
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_mul
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_add
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpz_clear_sensitive
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __gmpz_clear
        - __gmpz_import
        - __gmpz_size
        - memset_noop
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:145,15'
          Dst:             __gmpz_size
        - Src:             'gmp_rsa_private_key.c:148,2'
          Dst:             memset_noop
        - Src:             'gmp_rsa_private_key.c:150,2'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:151,2'
          Dst:             __gmpz_clear
    - functionName:    __gmpz_size
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_clear
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    23
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rsasp1
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rsadp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:252,9'
          Dst:             rsadp
    - functionName:    build_emsa_pss_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 449
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          684
      EdgeCount:       83
      CyclomaticComplexity: 24
      functionsReached:
        - __gmpz_sizeinbase
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - memset_noop
        - memxor
        - rsasp1
        - xof_mgf1_from_hash_algorithm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:360,8'
          Dst:             xof_mgf1_from_hash_algorithm
        - Src:             'gmp_rsa_private_key.c:368,11'
          Dst:             __gmpz_sizeinbase
        - Src:             'gmp_rsa_private_key.c:379,9'
          Dst:             chunk_create
        - Src:             'gmp_rsa_private_key.c:396,10'
          Dst:             chunk_create
        - Src:             'gmp_rsa_private_key.c:404,6'
          Dst:             chunk_length
        - Src:             'gmp_rsa_private_key.c:404,6'
          Dst:             chunk_create_cat
        - Src:             'gmp_rsa_private_key.c:413,7'
          Dst:             chunk_create
        - Src:             'gmp_rsa_private_key.c:414,2'
          Dst:             memset_noop
        - Src:             'gmp_rsa_private_key.c:416,7'
          Dst:             chunk_length
        - Src:             'gmp_rsa_private_key.c:416,7'
          Dst:             chunk_create_cat
        - Src:             'gmp_rsa_private_key.c:419,11'
          Dst:             chunk_create
        - Src:             'gmp_rsa_private_key.c:431,2'
          Dst:             memxor
        - Src:             'gmp_rsa_private_key.c:439,7'
          Dst:             chunk_length
        - Src:             'gmp_rsa_private_key.c:439,7'
          Dst:             chunk_create_cat
        - Src:             'gmp_rsa_private_key.c:441,15'
          Dst:             rsasp1
    - functionName:    build_emsa_pkcs1_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - gmp_emsa_pkcs1_signature_data
        - rsasp1
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:329,7'
          Dst:             gmp_emsa_pkcs1_signature_data
        - Src:             'gmp_rsa_private_key.c:335,15'
          Dst:             rsasp1
        - Src:             'gmp_rsa_private_key.c:337,2'
          Dst:             chunk_free
    - functionName:    gmp_emsa_pkcs1_signature_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          254
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - asn1_algorithmIdentifier
        - asn1_wrap
        - chunk_clear
        - chunk_create
        - chunk_free
        - hasher_algorithm_to_oid
        - memcpy_noop
        - memset_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:270,18'
          Dst:             hasher_algorithm_to_oid
        - Src:             'gmp_rsa_private_key.c:287,7'
          Dst:             asn1_algorithmIdentifier
        - Src:             'gmp_rsa_private_key.c:288,7'
          Dst:             asn1_wrap
        - Src:             'gmp_rsa_private_key.c:286,16'
          Dst:             asn1_wrap
        - Src:             'gmp_rsa_private_key.c:295,3'
          Dst:             chunk_free
        - Src:             'gmp_rsa_private_key.c:305,8'
          Dst:             chunk_create
        - Src:             'gmp_rsa_private_key.c:308,2'
          Dst:             memset_noop
        - Src:             'gmp_rsa_private_key.c:314,2'
          Dst:             memcpy_noop
        - Src:             'gmp_rsa_private_key.c:316,2'
          Dst:             chunk_clear
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sign
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 460
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          180
      EdgeCount:       33
      CyclomaticComplexity: 18
      functionsReached:
        - build_emsa_pkcs1_signature
        - build_emsa_pss_signature
      functionUses:    0
      BranchProfiles:
        - Branch String:   'gmp_rsa_private_key.c:461,2'
          Branch Sides:    []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:464,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'gmp_rsa_private_key.c:466,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'gmp_rsa_private_key.c:468,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'gmp_rsa_private_key.c:470,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'gmp_rsa_private_key.c:472,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'gmp_rsa_private_key.c:474,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'gmp_rsa_private_key.c:476,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'gmp_rsa_private_key.c:478,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'gmp_rsa_private_key.c:480,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'gmp_rsa_private_key.c:482,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'gmp_rsa_private_key.c:484,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'gmp_rsa_private_key.c:486,11'
          Dst:             build_emsa_pss_signature
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 672
      functionLinenumberEnd: 761
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         38
      ICount:          293
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - __gmpz_cmp
        - __gmpz_cmp_ui
        - __gmpz_init
        - __gmpz_lcm
        - __gmpz_mod
        - __gmpz_mul
        - __gmpz_sub_ui
        - mpz_clear_sensitive
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:692,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:693,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:694,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:697,2'
          Dst:             __gmpz_sub_ui
        - Src:             'gmp_rsa_private_key.c:698,2'
          Dst:             __gmpz_sub_ui
        - Src:             'gmp_rsa_private_key.c:701,2'
          Dst:             __gmpz_mul
        - Src:             'gmp_rsa_private_key.c:702,6'
          Dst:             __gmpz_cmp
        - Src:             'gmp_rsa_private_key.c:708,2'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:714,2'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:722,2'
          Dst:             __gmpz_lcm
        - Src:             'gmp_rsa_private_key.c:723,2'
          Dst:             __gmpz_mul
        - Src:             'gmp_rsa_private_key.c:724,2'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:725,6'
          Dst:             __gmpz_cmp_ui
        - Src:             'gmp_rsa_private_key.c:731,2'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:732,6'
          Dst:             __gmpz_cmp
        - Src:             'gmp_rsa_private_key.c:738,2'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:739,6'
          Dst:             __gmpz_cmp
        - Src:             'gmp_rsa_private_key.c:745,2'
          Dst:             __gmpz_mul
        - Src:             'gmp_rsa_private_key.c:746,2'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:747,6'
          Dst:             __gmpz_cmp_ui
        - Src:             'gmp_rsa_private_key.c:752,2'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:753,2'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:754,2'
          Dst:             mpz_clear_sensitive
    - functionName:    __gmpz_sub_ui
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_cmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_lcm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_cmp_ui
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    calculate_pq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 967
      functionLinenumberEnd: 1040
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          243
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - __gmp_randclear
        - __gmp_randinit_default
        - __gmpz_clear
        - __gmpz_cmp
        - __gmpz_cmp_ui
        - __gmpz_divexact
        - __gmpz_divexact_ui
        - __gmpz_gcd
        - __gmpz_init
        - __gmpz_mul
        - __gmpz_powm_sec
        - __gmpz_powm_ui
        - __gmpz_set
        - __gmpz_sub_ui
        - __gmpz_urandomm
        - mpz_clear_sensitive
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:973,2'
          Dst:             __gmp_randinit_default
        - Src:             'gmp_rsa_private_key.c:974,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:975,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:976,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:977,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:978,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:979,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:981,2'
          Dst:             __gmpz_mul
        - Src:             'gmp_rsa_private_key.c:982,2'
          Dst:             __gmpz_sub_ui
        - Src:             'gmp_rsa_private_key.c:988,2'
          Dst:             __gmpz_set
        - Src:             'gmp_rsa_private_key.c:991,3'
          Dst:             __gmpz_divexact_ui
        - Src:             'gmp_rsa_private_key.c:994,2'
          Dst:             __gmpz_sub_ui
        - Src:             'gmp_rsa_private_key.c:997,3'
          Dst:             __gmpz_urandomm
        - Src:             'gmp_rsa_private_key.c:999,3'
          Dst:             __gmpz_powm_sec
        - Src:             'gmp_rsa_private_key.c:1001,7'
          Dst:             __gmpz_cmp_ui
        - Src:             'gmp_rsa_private_key.c:1001,32'
          Dst:             __gmpz_cmp
        - Src:             'gmp_rsa_private_key.c:1007,4'
          Dst:             __gmpz_powm_ui
        - Src:             'gmp_rsa_private_key.c:1009,8'
          Dst:             __gmpz_cmp_ui
        - Src:             'gmp_rsa_private_key.c:1014,8'
          Dst:             __gmpz_cmp
        - Src:             'gmp_rsa_private_key.c:1019,4'
          Dst:             __gmpz_set
        - Src:             'gmp_rsa_private_key.c:1026,2'
          Dst:             __gmpz_sub_ui
        - Src:             'gmp_rsa_private_key.c:1027,2'
          Dst:             __gmpz_gcd
        - Src:             'gmp_rsa_private_key.c:1029,2'
          Dst:             __gmpz_divexact
        - Src:             'gmp_rsa_private_key.c:1033,2'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:1034,2'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:1035,2'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:1036,2'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:1037,2'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:1038,2'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_private_key.c:1039,2'
          Dst:             __gmp_randclear
    - functionName:    __gmp_randinit_default
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_set
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_divexact_ui
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_urandomm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_powm_ui
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_gcd
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_divexact
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmp_randclear
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gmp_rsa_private_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1047
      functionLinenumberEnd: 1162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         75
      ICount:          605
      EdgeCount:       94
      CyclomaticComplexity: 21
      functionsReached:
        - __gmpz_divexact
        - __gmpz_import
        - __gmpz_init
        - __gmpz_invert
        - __gmpz_mod
        - __gmpz_sizeinbase
        - __gmpz_sub_ui
        - calculate_pq
        - check
        - destroy
        - gmp_rsa_private_key_create_empty
      functionUses:    0
      BranchProfiles:
        - Branch String:   'gmp_rsa_private_key.c:1054,3'
          Branch Sides:    []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:1088,9'
          Dst:             gmp_rsa_private_key_create_empty
        - Src:             'gmp_rsa_private_key.c:1091,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:1092,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:1093,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:1094,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:1095,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:1096,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:1097,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:1098,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:1099,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:1100,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:1102,2'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:1103,2'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:1104,2'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:1107,3'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:1111,3'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:1115,8'
          Dst:             calculate_pq
        - Src:             'gmp_rsa_private_key.c:1117,4'
          Dst:             destroy
        - Src:             'gmp_rsa_private_key.c:1123,3'
          Dst:             __gmpz_divexact
        - Src:             'gmp_rsa_private_key.c:1127,3'
          Dst:             __gmpz_divexact
        - Src:             'gmp_rsa_private_key.c:1131,3'
          Dst:             __gmpz_sub_ui
        - Src:             'gmp_rsa_private_key.c:1132,3'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:1136,3'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:1140,3'
          Dst:             __gmpz_sub_ui
        - Src:             'gmp_rsa_private_key.c:1141,3'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:1145,3'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:1149,3'
          Dst:             __gmpz_invert
        - Src:             'gmp_rsa_private_key.c:1153,3'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:1155,13'
          Dst:             __gmpz_sizeinbase
        - Src:             'gmp_rsa_private_key.c:1156,6'
          Dst:             check
        - Src:             'gmp_rsa_private_key.c:1158,3'
          Dst:             destroy
    - functionName:    gmp_rsa_private_key_create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 767
      functionLinenumberEnd: 790
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          89
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 642
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          114
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __gmpz_clear
        - mpz_clear_sensitive
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:647,3'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_private_key.c:648,3'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_private_key.c:649,3'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_private_key.c:650,3'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:651,3'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:652,3'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:653,3'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:654,3'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:655,3'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:659,4'
          Dst:             mpz_clear_sensitive
    - functionName:    __gmpz_invert
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compute_prime
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          194
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - __gmpz_add_ui
        - __gmpz_clear
        - __gmpz_import
        - __gmpz_init
        - __gmpz_mul_ui
        - __gmpz_nextprime
        - __gmpz_probab_prime_p
        - __gmpz_sizeinbase
        - __gmpz_sub_ui
        - chunk_clear
        - chunk_create
        - chunk_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:162,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:163,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:164,17'
          Dst:             chunk_create
        - Src:             'gmp_rsa_private_key.c:171,4'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_private_key.c:172,4'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_private_key.c:173,4'
          Dst:             chunk_free
        - Src:             'gmp_rsa_private_key.c:182,4'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:186,5'
          Dst:             __gmpz_nextprime
        - Src:             'gmp_rsa_private_key.c:187,5'
          Dst:             __gmpz_mul_ui
        - Src:             'gmp_rsa_private_key.c:188,5'
          Dst:             __gmpz_add_ui
        - Src:             'gmp_rsa_private_key.c:190,11'
          Dst:             __gmpz_probab_prime_p
        - Src:             'gmp_rsa_private_key.c:196,4'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:197,4'
          Dst:             __gmpz_nextprime
        - Src:             'gmp_rsa_private_key.c:201,11'
          Dst:             __gmpz_sizeinbase
        - Src:             'gmp_rsa_private_key.c:203,2'
          Dst:             chunk_clear
        - Src:             'gmp_rsa_private_key.c:206,2'
          Dst:             __gmpz_sub_ui
    - functionName:    __gmpz_nextprime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_mul_ui
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_add_ui
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_probab_prime_p
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gmp_rsa_private_key_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 960
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         75
      ICount:          703
      EdgeCount:       96
      CyclomaticComplexity: 23
      functionsReached:
        - __gmpz_clear
        - __gmpz_cmp
        - __gmpz_cmp_ui
        - __gmpz_gcd
        - __gmpz_import
        - __gmpz_init
        - __gmpz_init_set_ui
        - __gmpz_invert
        - __gmpz_lcm
        - __gmpz_mod
        - __gmpz_mul
        - __gmpz_swap
        - chunk_clear
        - chunk_create
        - compute_prime
        - destroy
        - gmp_rsa_private_key_create_empty
        - mpz_clear_sensitive
      functionUses:    0
      BranchProfiles:
        - Branch String:   'gmp_rsa_private_key.c:810,3'
          Branch Sides:    []
      Callsites:
        - Src:             'gmp_rsa_private_key.c:854,6'
          Dst:             compute_prime
        - Src:             'gmp_rsa_private_key.c:859,6'
          Dst:             compute_prime
        - Src:             'gmp_rsa_private_key.c:861,3'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_private_key.c:862,3'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_private_key.c:868,6'
          Dst:             __gmpz_cmp
        - Src:             'gmp_rsa_private_key.c:870,3'
          Dst:             __gmpz_swap
        - Src:             'gmp_rsa_private_key.c:871,3'
          Dst:             __gmpz_swap
        - Src:             'gmp_rsa_private_key.c:875,9'
          Dst:             gmp_rsa_private_key_create_empty
        - Src:             'gmp_rsa_private_key.c:885,3'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:888,2'
          Dst:             __gmpz_init_set_ui
        - Src:             'gmp_rsa_private_key.c:889,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:890,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:891,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:892,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:893,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:894,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:896,2'
          Dst:             __gmpz_mul
        - Src:             'gmp_rsa_private_key.c:897,2'
          Dst:             __gmpz_lcm
        - Src:             'gmp_rsa_private_key.c:898,2'
          Dst:             __gmpz_invert
        - Src:             'gmp_rsa_private_key.c:899,2'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:900,2'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:901,2'
          Dst:             __gmpz_invert
        - Src:             'gmp_rsa_private_key.c:912,3'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_private_key.c:913,18'
          Dst:             chunk_create
        - Src:             'gmp_rsa_private_key.c:922,4'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:923,4'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:934,4'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_private_key.c:935,4'
          Dst:             __gmpz_mul
        - Src:             'gmp_rsa_private_key.c:936,4'
          Dst:             __gmpz_mod
        - Src:             'gmp_rsa_private_key.c:937,4'
          Dst:             __gmpz_gcd
        - Src:             'gmp_rsa_private_key.c:939,10'
          Dst:             __gmpz_cmp_ui
        - Src:             'gmp_rsa_private_key.c:941,3'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_private_key.c:942,3'
          Dst:             chunk_clear
        - Src:             'gmp_rsa_private_key.c:945,2'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:946,2'
          Dst:             mpz_clear_sensitive
        - Src:             'gmp_rsa_private_key.c:952,3'
          Dst:             destroy
    - functionName:    __gmpz_swap
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __gmpz_init_set_ui
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 427
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
        - gmp_mpz_to_chunk
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_public_key.c:391,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_public_key.c:392,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_public_key.c:396,2'
          Dst:             chunk_free
        - Src:             'gmp_rsa_public_key.c:397,2'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          91
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - gmp_mpz_to_chunk
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_public_key.c:412,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_public_key.c:413,6'
          Dst:             gmp_mpz_to_chunk
        - Src:             'gmp_rsa_public_key.c:417,2'
          Dst:             chunk_free
        - Src:             'gmp_rsa_public_key.c:418,2'
          Dst:             chunk_free
    - functionName:    get_keysize
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __gmpz_sizeinbase
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_public_key.c:381,9'
          Dst:             __gmpz_sizeinbase
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    encrypt_
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          160
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_clear
        - memcpy_noop
        - rng_get_bytes_not_zero
        - rsaep
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_public_key.c:353,7'
          Dst:             rng_get_bytes_not_zero
        - Src:             'gmp_rsa_public_key.c:356,3'
          Dst:             chunk_clear
        - Src:             'gmp_rsa_public_key.c:368,2'
          Dst:             memcpy_noop
        - Src:             'gmp_rsa_public_key.c:372,12'
          Dst:             rsaep
        - Src:             'gmp_rsa_public_key.c:374,2'
          Dst:             chunk_clear
    - functionName:    rsaep
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          117
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - __gmpz_clear
        - __gmpz_cmp
        - __gmpz_export
        - __gmpz_import
        - __gmpz_init
        - __gmpz_powm_sec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_public_key.c:84,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_public_key.c:85,2'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_public_key.c:87,31'
          Dst:             __gmpz_cmp
        - Src:             'gmp_rsa_public_key.c:90,3'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_public_key.c:94,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_public_key.c:95,2'
          Dst:             __gmpz_powm_sec
        - Src:             'gmp_rsa_public_key.c:98,18'
          Dst:             __gmpz_export
        - Src:             'gmp_rsa_public_key.c:104,2'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_public_key.c:105,2'
          Dst:             __gmpz_clear
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip_zero
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    rsavp1
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rsaep
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_public_key.c:115,9'
          Dst:             rsaep
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_emsa_pss_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          621
      EdgeCount:       85
      CyclomaticComplexity: 25
      functionsReached:
        - __gmpz_sizeinbase
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - chunk_skip_zero
        - memeq_const
        - memxor
        - rsavp1
        - xof_mgf1_from_hash_algorithm
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_public_key.c:174,8'
          Dst:             xof_mgf1_from_hash_algorithm
        - Src:             'gmp_rsa_public_key.c:181,2'
          Dst:             chunk_skip_zero
        - Src:             'gmp_rsa_public_key.c:187,7'
          Dst:             rsavp1
        - Src:             'gmp_rsa_public_key.c:193,11'
          Dst:             __gmpz_sizeinbase
        - Src:             'gmp_rsa_public_key.c:202,9'
          Dst:             chunk_create
        - Src:             'gmp_rsa_public_key.c:216,7'
          Dst:             chunk_create
        - Src:             'gmp_rsa_public_key.c:217,6'
          Dst:             chunk_create
        - Src:             'gmp_rsa_public_key.c:225,11'
          Dst:             chunk_create
        - Src:             'gmp_rsa_public_key.c:233,2'
          Dst:             memxor
        - Src:             'gmp_rsa_public_key.c:252,6'
          Dst:             chunk_length
        - Src:             'gmp_rsa_public_key.c:252,6'
          Dst:             chunk_create_cat
        - Src:             'gmp_rsa_public_key.c:259,12'
          Dst:             memeq_const
    - functionName:    verify_emsa_pkcs1_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          142
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_equals_const
        - chunk_free
        - chunk_skip
        - gmp_emsa_pkcs1_signature_data
        - rsavp1
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_public_key.c:131,15'
          Dst:             chunk_skip
        - Src:             'gmp_rsa_public_key.c:140,7'
          Dst:             gmp_emsa_pkcs1_signature_data
        - Src:             'gmp_rsa_public_key.c:146,7'
          Dst:             rsavp1
        - Src:             'gmp_rsa_public_key.c:148,12'
          Dst:             chunk_equals_const
        - Src:             'gmp_rsa_public_key.c:150,2'
          Dst:             chunk_free
        - Src:             'gmp_rsa_public_key.c:151,2'
          Dst:             chunk_free
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          214
      EdgeCount:       33
      CyclomaticComplexity: 18
      functionsReached:
        - verify_emsa_pkcs1_signature
        - verify_emsa_pss_signature
      functionUses:    0
      BranchProfiles:
        - Branch String:   'gmp_rsa_public_key.c:278,2'
          Branch Sides:    []
      Callsites:
        - Src:             'gmp_rsa_public_key.c:281,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'gmp_rsa_public_key.c:283,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'gmp_rsa_public_key.c:285,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'gmp_rsa_public_key.c:287,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'gmp_rsa_public_key.c:289,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'gmp_rsa_public_key.c:291,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'gmp_rsa_public_key.c:293,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'gmp_rsa_public_key.c:295,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'gmp_rsa_public_key.c:297,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'gmp_rsa_public_key.c:299,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'gmp_rsa_public_key.c:301,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'gmp_rsa_public_key.c:303,11'
          Dst:             verify_emsa_pss_signature
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __gmpz_clear
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_rsa_public_key.c:435,3'
          Dst:             __gmpz_clear
        - Src:             'gmp_rsa_public_key.c:436,3'
          Dst:             __gmpz_clear
    - functionName:    gmp_rsa_public_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          283
      EdgeCount:       46
      CyclomaticComplexity: 11
      functionsReached:
        - __gmpz_cmp_ui
        - __gmpz_import
        - __gmpz_init
        - __gmpz_sizeinbase
        - destroy
      functionUses:    0
      BranchProfiles:
        - Branch String:   'gmp_rsa_public_key.c:453,3'
          Branch Sides:    []
      Callsites:
        - Src:             'gmp_rsa_public_key.c:491,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_public_key.c:492,2'
          Dst:             __gmpz_init
        - Src:             'gmp_rsa_public_key.c:494,2'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_public_key.c:495,2'
          Dst:             __gmpz_import
        - Src:             'gmp_rsa_public_key.c:497,13'
          Dst:             __gmpz_sizeinbase
        - Src:             'gmp_rsa_public_key.c:499,27'
          Dst:             __gmpz_cmp_ui
        - Src:             'gmp_rsa_public_key.c:501,3'
          Dst:             destroy
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'random_plugin.c:124,3'
          Dst:             close
        - Src:             'random_plugin.c:128,3'
          Dst:             close
    - functionName:    open_dev
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - fcntl
        - open
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'random_plugin.c:87,8'
          Dst:             open
        - Src:             'random_plugin.c:93,6'
          Dst:             fcntl
    - functionName:    random_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          110
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - destroy
        - open_dev
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'random_plugin.c:157,7'
          Dst:             open_dev
        - Src:             'random_plugin.c:158,4'
          Dst:             open_dev
        - Src:             'random_plugin.c:160,3'
          Dst:             destroy
    - functionName:    random_plugin_get_strong_equals_true
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    random_plugin_get_dev_urandom
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    random_plugin_get_dev_random
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_rng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_rng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - get_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'random_rng.c:70,11'
          Dst:             chunk_create
        - Src:             'random_rng.c:71,2'
          Dst:             get_bytes
    - functionName:    get_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_rng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - read
        - sleep
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'random_rng.c:54,9'
          Dst:             read
        - Src:             'random_rng.c:59,4'
          Dst:             sleep
    - functionName:    sleep
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    random_rng_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/random/random_rng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       12
      CyclomaticComplexity: 2
      functionsReached:
        - random_plugin_get_dev_random
        - random_plugin_get_dev_urandom
        - random_plugin_get_strong_equals_true
      functionUses:    0
      BranchProfiles:
        - Branch String:   'random_rng.c:98,2'
          Branch Sides:    []
      Callsites:
        - Src:             'random_rng.c:101,15'
          Dst:             random_plugin_get_dev_random
        - Src:             'random_rng.c:104,15'
          Dst:             random_plugin_get_strong_equals_true
        - Src:             'random_rng.c:105,8'
          Dst:             random_plugin_get_dev_random
        - Src:             'random_rng.c:106,8'
          Dst:             random_plugin_get_dev_urandom
        - Src:             'random_rng.c:110,15'
          Dst:             random_plugin_get_dev_urandom
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/nonce/nonce_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/nonce/nonce_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/nonce/nonce_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nonce_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/nonce/nonce_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/hmac_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/hmac_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/hmac_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmac_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/hmac_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kdf_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmac_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xcbc_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    x509_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reload
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_cb
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    revocation_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - revocation_validator_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_plugin.c:101,2'
          Dst:             revocation_validator_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 931
      functionLinenumberEnd: 935
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ocsp
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 896
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          158
      EdgeCount:       26
      CyclomaticComplexity: 5
      functionsReached:
        - auth_cfg_create
        - check_ocsp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'revocation_validator.c:880,3'
          Branch Sides:    []
      Callsites:
        - Src:             'revocation_validator.c:879,10'
          Dst:             auth_cfg_create
        - Src:             'revocation_validator.c:880,11'
          Dst:             check_ocsp
    - functionName:    check_ocsp
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          459
      EdgeCount:       98
      CyclomaticComplexity: 27
      functionsReached:
        - get_better_ocsp
        - identification_create_from_encoding
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_validator.c:281,10'
          Dst:             get_better_ocsp
        - Src:             'revocation_validator.c:295,11'
          Dst:             identification_create_from_encoding
        - Src:             'revocation_validator.c:309,12'
          Dst:             get_better_ocsp
        - Src:             'revocation_validator.c:333,12'
          Dst:             get_better_ocsp
    - functionName:    get_better_ocsp
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          211
      EdgeCount:       40
      CyclomaticComplexity: 9
      functionsReached:
        - certificate_is_newer
        - verify_ocsp
      functionUses:    3
      BranchProfiles:
        - Branch String:   'revocation_validator.c:201,2'
          Branch Sides:    []
      Callsites:
        - Src:             'revocation_validator.c:195,7'
          Dst:             verify_ocsp
        - Src:             'revocation_validator.c:226,22'
          Dst:             certificate_is_newer
    - functionName:    verify_ocsp
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          300
      EdgeCount:       50
      CyclomaticComplexity: 15
      functionsReached:
        - ocsp_response_wrapper_create
        - verify_ocsp_sig
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_validator.c:108,12'
          Dst:             ocsp_response_wrapper_create
        - Src:             'revocation_validator.c:136,14'
          Dst:             verify_ocsp_sig
        - Src:             'revocation_validator.c:159,16'
          Dst:             verify_ocsp_sig
    - functionName:    verify_ocsp_sig
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    is_crl_valid
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_crl_not_valid_yet
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_crl
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    check_delta_crl
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 612
      functionLinenumberEnd: 676
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          289
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - check_issuer
        - find_crl
        - get_better_crl
        - identification_create_from_encoding
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_validator.c:626,8'
          Dst:             identification_create_from_encoding
        - Src:             'revocation_validator.c:627,3'
          Dst:             find_crl
        - Src:             'revocation_validator.c:638,4'
          Dst:             find_crl
        - Src:             'revocation_validator.c:652,9'
          Dst:             check_issuer
        - Src:             'revocation_validator.c:661,11'
          Dst:             get_better_crl
    - functionName:    find_crl
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          236
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - get_better_crl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_validator.c:541,11'
          Dst:             get_better_crl
        - Src:             'revocation_validator.c:568,13'
          Dst:             get_better_crl
    - functionName:    check_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          131
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - identification_create_from_encoding
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_validator.c:598,8'
          Dst:             identification_create_from_encoding
    - functionName:    get_better_crl
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          324
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - chunk_equals
        - crl_is_newer
        - is_crl_not_valid_yet
        - is_crl_valid
        - time
        - verify_crl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_validator.c:446,5'
          Dst:             chunk_equals
        - Src:             'revocation_validator.c:462,7'
          Dst:             verify_crl
        - Src:             'revocation_validator.c:468,8'
          Dst:             time
        - Src:             'revocation_validator.c:469,6'
          Dst:             is_crl_not_valid_yet
        - Src:             'revocation_validator.c:479,7'
          Dst:             chunk_equals
        - Src:             'revocation_validator.c:490,4'
          Dst:             is_crl_valid
        - Src:             'revocation_validator.c:501,22'
          Dst:             crl_is_newer
        - Src:             'revocation_validator.c:505,7'
          Dst:             is_crl_valid
    - functionName:    check_crl
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          367
      EdgeCount:       74
      CyclomaticComplexity: 21
      functionsReached:
        - check_delta_crl
        - check_issuer
        - find_crl
        - get_better_crl
        - identification_create_from_encoding
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_validator.c:698,8'
          Dst:             identification_create_from_encoding
        - Src:             'revocation_validator.c:699,3'
          Dst:             find_crl
        - Src:             'revocation_validator.c:710,4'
          Dst:             find_crl
        - Src:             'revocation_validator.c:727,10'
          Dst:             check_issuer
        - Src:             'revocation_validator.c:736,12'
          Dst:             get_better_crl
        - Src:             'revocation_validator.c:750,11'
          Dst:             check_delta_crl
    - functionName:    validate_online
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 856
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          270
      EdgeCount:       43
      CyclomaticComplexity: 6
      functionsReached:
        - check_crl
        - check_ocsp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'revocation_validator.c:795,4'
          Branch Sides:    []
        - Branch String:   'revocation_validator.c:825,4'
          Branch Sides:    []
      Callsites:
        - Src:             'revocation_validator.c:795,12'
          Dst:             check_ocsp
        - Src:             'revocation_validator.c:825,12'
          Dst:             check_crl
    - functionName:    reload
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 901
      functionLinenumberEnd: 927
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          123
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    revocation_validator_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 941
      functionLinenumberEnd: 957
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - reload
        - revocation_fetcher_create
        - spinlock_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_validator.c:944,2'
          Dst:             revocation_fetcher_create
        - Src:             'revocation_validator.c:944,2'
          Dst:             spinlock_create
        - Src:             'revocation_validator.c:955,2'
          Dst:             reload
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_cb
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    constraints_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - constraints_validator_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_plugin.c:90,2'
          Dst:             constraints_validator_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 904
      functionLinenumberEnd: 906
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_policy_valid
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          274
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:672,9'
          Dst:             chunk_equals
        - Src:             'constraints_validator.c:674,7'
          Dst:             chunk_equals
        - Src:             'constraints_validator.c:691,10'
          Dst:             chunk_equals
        - Src:             'constraints_validator.c:692,7'
          Dst:             chunk_equals
        - Src:             'constraints_validator.c:696,10'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    _cb_destroy_constraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - array_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:363,2'
          Dst:             array_destroy
    - functionName:    name_constraint_matches
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          106
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - dn_matches
        - email_matches
        - fqdn_matches
      functionUses:    2
      BranchProfiles:
        - Branch String:   'constraints_validator.c:185,2'
          Branch Sides:    []
      Callsites:
        - Src:             'constraints_validator.c:188,15'
          Dst:             fqdn_matches
        - Src:             'constraints_validator.c:191,15'
          Dst:             email_matches
        - Src:             'constraints_validator.c:194,15'
          Dst:             dn_matches
    - functionName:    fqdn_matches
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          161
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - chunk_skip
        - string_matches
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:84,9'
          Dst:             chunk_create
        - Src:             'constraints_validator.c:85,25'
          Dst:             chunk_skip
        - Src:             'constraints_validator.c:85,7'
          Dst:             string_matches
    - functionName:    email_matches
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          182
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - chunk_skip
        - memchr
        - string_matches
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:114,6'
          Dst:             memchr
        - Src:             'constraints_validator.c:116,10'
          Dst:             string_matches
        - Src:             'constraints_validator.c:118,9'
          Dst:             chunk_create
        - Src:             'constraints_validator.c:119,25'
          Dst:             chunk_skip
        - Src:             'constraints_validator.c:119,7'
          Dst:             string_matches
    - functionName:    dn_matches
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          109
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_equals
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:153,17'
          Dst:             chunk_equals
    - functionName:    string_matches
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          68
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memchr
        - strncasecmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:65,6'
          Dst:             memchr
        - Src:             'constraints_validator.c:66,6'
          Dst:             memchr
        - Src:             'constraints_validator.c:67,6'
          Dst:             strncasecmp
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_type_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_type_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_create
        - chunk_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:372,20'
          Dst:             chunk_create
        - Src:             'constraints_validator.c:372,9'
          Dst:             chunk_hash
    - functionName:    merge_constraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          201
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - array_create_enumerator
        - array_destroy
        - array_insert
        - array_insert_create
        - array_remove
        - array_remove_at
        - name_constraint_matches
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:462,16'
          Dst:             array_create_enumerator
        - Src:             'constraints_validator.c:465,10'
          Dst:             array_create_enumerator
        - Src:             'constraints_validator.c:468,9'
          Dst:             name_constraint_matches
        - Src:             'constraints_validator.c:470,6'
          Dst:             array_insert_create
        - Src:             'constraints_validator.c:471,6'
          Dst:             array_remove_at
        - Src:             'constraints_validator.c:479,4'
          Dst:             array_remove_at
        - Src:             'constraints_validator.c:485,11'
          Dst:             array_remove
        - Src:             'constraints_validator.c:487,5'
          Dst:             array_insert
        - Src:             'constraints_validator.c:489,4'
          Dst:             array_destroy
        - Src:             'constraints_validator.c:492,10'
          Dst:             array_remove
        - Src:             'constraints_validator.c:503,16'
          Dst:             array_create_enumerator
        - Src:             'constraints_validator.c:506,10'
          Dst:             array_create_enumerator
        - Src:             'constraints_validator.c:509,9'
          Dst:             name_constraint_matches
        - Src:             'constraints_validator.c:513,6'
          Dst:             array_remove_at
        - Src:             'constraints_validator.c:522,10'
          Dst:             array_remove
        - Src:             'constraints_validator.c:524,4'
          Dst:             array_insert
    - functionName:    collect_constraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          173
      EdgeCount:       29
      CyclomaticComplexity: 6
      functionsReached:
        - array_create
        - array_insert
        - hashtable_create
        - id_type_equals
        - id_type_hash
      functionUses:    1
      BranchProfiles:
        - Branch String:   'constraints_validator.c:402,3'
          Branch Sides:    []
      Callsites:
        - Src:             'constraints_validator.c:396,14'
          Dst:             hashtable_create
        - Src:             'constraints_validator.c:396,14'
          Dst:             id_type_hash
        - Src:             'constraints_validator.c:396,14'
          Dst:             id_type_equals
        - Src:             'constraints_validator.c:431,18'
          Dst:             array_create
        - Src:             'constraints_validator.c:434,3'
          Dst:             array_insert
    - functionName:    constraint_type_from_id
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          28
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'constraints_validator.c:213,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    id_matches_constraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          188
      EdgeCount:       37
      CyclomaticComplexity: 8
      functionsReached:
        - array_create_enumerator
        - dn_matches
        - email_matches
        - fqdn_matches
      functionUses:    2
      BranchProfiles:
        - Branch String:   'constraints_validator.c:241,3'
          Branch Sides:    []
      Callsites:
        - Src:             'constraints_validator.c:238,15'
          Dst:             array_create_enumerator
        - Src:             'constraints_validator.c:244,15'
          Dst:             fqdn_matches
        - Src:             'constraints_validator.c:247,15'
          Dst:             email_matches
        - Src:             'constraints_validator.c:250,15'
          Dst:             dn_matches
    - functionName:    cert_matches_constraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          166
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - constraint_type_from_id
        - id_matches_constraints
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:313,13'
          Dst:             id_matches_constraints
        - Src:             'constraints_validator.c:324,10'
          Dst:             constraint_type_from_id
        - Src:             'constraints_validator.c:328,14'
          Dst:             id_matches_constraints
    - functionName:    update_name_constraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 534
      functionLinenumberEnd: 584
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          175
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - collect_constraints
        - merge_constraints
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:546,7'
          Dst:             collect_constraints
        - Src:             'constraints_validator.c:569,6'
          Dst:             merge_constraints
    - functionName:    name_constraints_match
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          61
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - cert_matches_constraints
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:346,20'
          Dst:             cert_matches_constraints
        - Src:             'constraints_validator.c:350,18'
          Dst:             cert_matches_constraints
    - functionName:    check_policy_constraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 729
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          459
      EdgeCount:       76
      CyclomaticComplexity: 21
      functionsReached:
        - asn1_oid_to_string
        - is_policy_valid
        - linked_list_create_with_items
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:749,12'
          Dst:             linked_list_create_with_items
        - Src:             'constraints_validator.c:829,11'
          Dst:             asn1_oid_to_string
        - Src:             'constraints_validator.c:832,10'
          Dst:             is_policy_valid
    - functionName:    check_name_constraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          260
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - linked_list_create_with_items
        - name_constraints_match
        - update_name_constraints
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:608,10'
          Dst:             linked_list_create_with_items
        - Src:             'constraints_validator.c:624,20'
          Dst:             name_constraints_match
        - Src:             'constraints_validator.c:625,5'
          Dst:             update_name_constraints
        - Src:             'constraints_validator.c:626,5'
          Dst:             update_name_constraints
    - functionName:    check_pathlen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    validate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 871
      functionLinenumberEnd: 900
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          134
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - check_name_constraints
        - check_pathlen
        - check_policy_constraints
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'constraints_validator.c:875,8'
          Dst:             check_pathlen
        - Src:             'constraints_validator.c:885,9'
          Dst:             check_name_constraints
        - Src:             'constraints_validator.c:891,9'
          Dst:             check_policy_constraints
    - functionName:    constraints_validator_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/constraints/constraints_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 912
      functionLinenumberEnd: 922
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/acert/acert_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_cb
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/acert/acert_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/acert/acert_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/acert/acert_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    acert_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/acert/acert_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - acert_validator_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'acert_plugin.c:88,2'
          Dst:             acert_validator_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/acert/acert_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    apply
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/acert/acert_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - identification_create_from_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'acert_validator.c:86,8'
          Dst:             identification_create_from_data
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/acert/acert_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          113
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    validate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/acert/acert_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          166
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - apply
        - identification_create_from_encoding
        - verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'acert_validator.c:107,12'
          Dst:             identification_create_from_encoding
        - Src:             'acert_validator.c:116,9'
          Dst:             verify
        - Src:             'acert_validator.c:118,6'
          Dst:             apply
    - functionName:    acert_validator_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/acert/acert_validator.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pubkey_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pkcs1_encoder_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs1_plugin.c:69,2'
          Dst:             pkcs1_encoder_encode
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pkcs1_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pkcs1_encoder_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs1_plugin.c:91,2'
          Dst:             pkcs1_encoder_encode
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pkcs7_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_issuerAndSerialNumber
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          103
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_integer
        - asn1_wrap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_signed_data.c:527,7'
          Dst:             asn1_integer
        - Src:             'pkcs7_signed_data.c:525,9'
          Dst:             asn1_wrap
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    signerinfo_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          95
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - signature_params_clear
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_signed_data.c:114,2'
          Dst:             signature_params_clear
    - functionName:    create_cert_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_attribute
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          104
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_signed_data.c:332,13'
          Dst:             chunk_create_clone
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_signed_data.c:359,10'
          Dst:             chunk_create_clone
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         45
      ICount:          445
      EdgeCount:       61
      CyclomaticComplexity: 18
      functionsReached:
        - chunk_equals_const
        - hasher_algorithm_from_oid
        - key_type_from_signature_scheme
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_signed_data.c:222,8'
          Dst:             key_type_from_signature_scheme
        - Src:             'pkcs7_signed_data.c:263,15'
          Dst:             hasher_algorithm_from_oid
        - Src:             'pkcs7_signed_data.c:277,11'
          Dst:             chunk_equals_const
    - functionName:    create_signature_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          69
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
        - mem_cred_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_signed_data.c:382,2'
          Dst:             linked_list_create
        - Src:             'pkcs7_signed_data.c:382,2'
          Dst:             mem_cred_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - signature_params_destroy
        - signerinfo_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_signed_data.c:367,2'
          Dst:             signerinfo_destroy
        - Src:             'pkcs7_signed_data.c:369,2'
          Dst:             signature_params_destroy
    - functionName:    generate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 643
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          525
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - asn1_algorithmIdentifier
        - asn1_build_known_oid
        - asn1_from_time
        - asn1_wrap
        - build_issuerAndSerialNumber
        - chunk_create_clone
        - chunk_free
        - hasher_algorithm_to_oid
        - hasher_signature_algorithm_to_oid
        - signature_params_build
        - signature_scheme_from_oid
        - time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_signed_data.c:548,3'
          Dst:             hasher_signature_algorithm_to_oid
        - Src:             'pkcs7_signed_data.c:548,3'
          Dst:             signature_scheme_from_oid
        - Src:             'pkcs7_signed_data.c:558,7'
          Dst:             signature_params_build
        - Src:             'pkcs7_signed_data.c:575,2'
          Dst:             chunk_free
        - Src:             'pkcs7_signed_data.c:580,6'
          Dst:             asn1_wrap
        - Src:             'pkcs7_signed_data.c:583,8'
          Dst:             time
        - Src:             'pkcs7_signed_data.c:584,16'
          Dst:             asn1_from_time
        - Src:             'pkcs7_signed_data.c:587,8'
          Dst:             asn1_build_known_oid
        - Src:             'pkcs7_signed_data.c:595,28'
          Dst:             chunk_create_clone
        - Src:             'pkcs7_signed_data.c:600,21'
          Dst:             asn1_wrap
        - Src:             'pkcs7_signed_data.c:603,40'
          Dst:             hasher_algorithm_to_oid
        - Src:             'pkcs7_signed_data.c:603,15'
          Dst:             asn1_algorithmIdentifier
        - Src:             'pkcs7_signed_data.c:606,6'
          Dst:             build_issuerAndSerialNumber
        - Src:             'pkcs7_signed_data.c:604,15'
          Dst:             asn1_wrap
        - Src:             'pkcs7_signed_data.c:623,3'
          Dst:             asn1_build_known_oid
        - Src:             'pkcs7_signed_data.c:627,5'
          Dst:             asn1_wrap
        - Src:             'pkcs7_signed_data.c:629,5'
          Dst:             asn1_wrap
        - Src:             'pkcs7_signed_data.c:630,5'
          Dst:             asn1_wrap
        - Src:             'pkcs7_signed_data.c:625,4'
          Dst:             asn1_wrap
        - Src:             'pkcs7_signed_data.c:624,3'
          Dst:             asn1_wrap
        - Src:             'pkcs7_signed_data.c:622,19'
          Dst:             asn1_wrap
        - Src:             'pkcs7_signed_data.c:637,2'
          Dst:             chunk_free
        - Src:             'pkcs7_signed_data.c:638,2'
          Dst:             chunk_free
        - Src:             'pkcs7_signed_data.c:639,2'
          Dst:             chunk_free
        - Src:             'pkcs7_signed_data.c:640,2'
          Dst:             chunk_free
        - Src:             'pkcs7_signed_data.c:641,2'
          Dst:             chunk_free
    - functionName:    pkcs7_signed_data_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 649
      functionLinenumberEnd: 715
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         55
      ICount:          418
      EdgeCount:       68
      CyclomaticComplexity: 15
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - generate
        - pkcs7_attributes_create
        - signature_params_clone
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pkcs7_signed_data.c:664,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs7_signed_data.c:660,10'
          Dst:             pkcs7_attributes_create
        - Src:             'pkcs7_signed_data.c:684,38'
          Dst:             chunk_create_clone
        - Src:             'pkcs7_signed_data.c:696,10'
          Dst:             create_empty
        - Src:             'pkcs7_signed_data.c:698,18'
          Dst:             signature_params_clone
        - Src:             'pkcs7_signed_data.c:703,24'
          Dst:             generate
        - Src:             'pkcs7_signed_data.c:708,3'
          Dst:             destroy
    - functionName:    parse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          342
      EdgeCount:       42
      CyclomaticComplexity: 8
      functionsReached:
        - asn1_parse_algorithmIdentifier
        - asn1_parser_create
        - chunk_create_clone
        - identification_create_from_encoding
        - pkcs7_attributes_create_from_chunk
        - signature_params_parse
        - signature_scheme_from_oid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs7_signed_data.c:418,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs7_signed_data.c:412,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs7_signed_data.c:453,20'
          Dst:             identification_create_from_encoding
        - Src:             'pkcs7_signed_data.c:457,20'
          Dst:             identification_create_from_encoding
        - Src:             'pkcs7_signed_data.c:462,24'
          Dst:             pkcs7_attributes_create_from_chunk
        - Src:             'pkcs7_signed_data.c:467,24'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'pkcs7_signed_data.c:471,10'
          Dst:             signature_params_parse
        - Src:             'pkcs7_signed_data.c:473,10'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'pkcs7_signed_data.c:479,30'
          Dst:             signature_scheme_from_oid
        - Src:             'pkcs7_signed_data.c:485,23'
          Dst:             chunk_create_clone
    - functionName:    pkcs7_signed_data_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_signed_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_signed_data.c:500,38'
          Dst:             create_empty
        - Src:             'pkcs7_signed_data.c:502,19'
          Dst:             chunk_create_clone
        - Src:             'pkcs7_signed_data.c:503,7'
          Dst:             parse
        - Src:             'pkcs7_signed_data.c:505,3'
          Dst:             destroy
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/pkcs8_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/pkcs8_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/pkcs8_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pkcs8_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/pkcs8_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pkcs12_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pgp_encoder_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_plugin.c:67,2'
          Dst:             pgp_encoder_encode
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pgp_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pgp_encoder_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_plugin.c:89,2'
          Dst:             pgp_encoder_encode
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/dnskey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dnskey_encoder_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'dnskey_plugin.c:58,2'
          Dst:             dnskey_encoder_encode
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/dnskey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/dnskey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dnskey_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/dnskey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dnskey_encoder_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dnskey_plugin.c:80,2'
          Dst:             dnskey_encoder_encode
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sshkey_encoder_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sshkey_plugin.c:58,2'
          Dst:             sshkey_encoder_encode
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sshkey_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sshkey_encoder_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sshkey_plugin.c:78,2'
          Dst:             sshkey_encoder_encode
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pem_encoder_encode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_plugin.c:135,2'
          Dst:             pem_encoder_encode
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pem_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pem_encoder_encode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_plugin.c:158,2'
          Dst:             pem_encoder_encode
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 727
      functionLinenumberEnd: 745
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ecdh_group_supported
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - openssl_ecdh_group_to_nid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_plugin.c:315,24'
          Dst:             openssl_ecdh_group_to_nid
    - functionName:    add_ecdh_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          104
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - EC_get_builtin_curves
        - calloc
        - ecdh_group_supported
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_plugin.c:333,15'
          Dst:             EC_get_builtin_curves
        - Src:             'openssl_plugin.c:337,12'
          Dst:             calloc
        - Src:             'openssl_plugin.c:338,16'
          Dst:             EC_get_builtin_curves
        - Src:             'openssl_plugin.c:343,5'
          Dst:             ecdh_group_supported
    - functionName:    EC_get_builtin_curves
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    plugin_features_add
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/plugins/plugin_feature.h'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          43
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_private_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          103
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - d2i_AutoPrivateKey
        - openssl_wrap_private_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_plugin.c:277,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_plugin.c:292,9'
          Dst:             d2i_AutoPrivateKey
        - Src:             'openssl_plugin.c:293,10'
          Dst:             openssl_wrap_private_key
    - functionName:    d2i_AutoPrivateKey
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 722
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - add_ecdh_features
        - plugin_features_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_plugin.c:715,3'
          Dst:             plugin_features_add
        - Src:             'openssl_plugin.c:717,3'
          Dst:             add_ecdh_features
        - Src:             'openssl_plugin.c:719,3'
          Dst:             plugin_features_add
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 878
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - CRYPTO_set_mem_functions
        - OPENSSL_init_crypto
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_plugin.c:784,3'
          Dst:             CRYPTO_set_mem_functions
        - Src:             'openssl_plugin.c:784,3'
          Dst:             realloc
        - Src:             'openssl_plugin.c:821,2'
          Dst:             OPENSSL_init_crypto
    - functionName:    CRYPTO_set_mem_functions
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    OPENSSL_init_crypto
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - chunk_free
        - get_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rng.c:65,11'
          Dst:             chunk_create
        - Src:             'openssl_rng.c:66,7'
          Dst:             get_bytes
        - Src:             'openssl_rng.c:68,3'
          Dst:             chunk_free
    - functionName:    get_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - RAND_bytes
        - RAND_priv_bytes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rng.c:56,10'
          Dst:             RAND_priv_bytes
        - Src:             'openssl_rng.c:59,9'
          Dst:             RAND_bytes
    - functionName:    RAND_priv_bytes
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RAND_bytes
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_rng_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rng.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_PKEY_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:428,4'
          Dst:             EVP_PKEY_free
    - functionName:    EVP_PKEY_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    25
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          138
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_clear
        - chunk_create
        - i2d_PrivateKey
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_rsa_private_key.c:388,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:395,16'
          Dst:             i2d_PrivateKey
        - Src:             'openssl_rsa_private_key.c:395,16'
          Dst:             chunk_create
        - Src:             'openssl_rsa_private_key.c:395,16'
          Dst:             i2d_PrivateKey
        - Src:             'openssl_rsa_private_key.c:404,5'
          Dst:             chunk_clear
    - functionName:    i2d_PrivateKey
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 376
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - openssl_rsa_fingerprint
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:377,9'
          Dst:             openssl_rsa_fingerprint
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - i2d_PublicKey
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:366,8'
          Dst:             i2d_PublicKey
        - Src:             'openssl_rsa_private_key.c:366,8'
          Dst:             chunk_create
        - Src:             'openssl_rsa_private_key.c:366,8'
          Dst:             i2d_PublicKey
    - functionName:    i2d_PublicKey
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_keysize
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_PKEY_bits
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:357,9'
          Dst:             EVP_PKEY_bits
    - functionName:    EVP_PKEY_bits
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          236
      EdgeCount:       42
      CyclomaticComplexity: 10
      functionsReached:
        - CRYPTO_free
        - CRYPTO_malloc
        - EVP_PKEY_CTX_ctrl
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new
        - EVP_PKEY_decrypt
        - EVP_PKEY_decrypt_init
        - EVP_PKEY_size
        - RSA_pkey_ctx_ctrl
        - chunk_create
        - memcpy_noop
        - openssl_get_md
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_rsa_private_key.c:256,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:287,8'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'openssl_rsa_private_key.c:294,6'
          Dst:             EVP_PKEY_decrypt_init
        - Src:             'openssl_rsa_private_key.c:299,6'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'openssl_rsa_private_key.c:306,23'
          Dst:             openssl_get_md
        - Src:             'openssl_rsa_private_key.c:308,7'
          Dst:             EVP_PKEY_CTX_ctrl
        - Src:             'openssl_rsa_private_key.c:323,28'
          Dst:             CRYPTO_malloc
        - Src:             'openssl_rsa_private_key.c:324,5'
          Dst:             memcpy_noop
        - Src:             'openssl_rsa_private_key.c:326,8'
          Dst:             EVP_PKEY_CTX_ctrl
        - Src:             'openssl_rsa_private_key.c:328,5'
          Dst:             CRYPTO_free
        - Src:             'openssl_rsa_private_key.c:336,8'
          Dst:             EVP_PKEY_size
        - Src:             'openssl_rsa_private_key.c:340,6'
          Dst:             EVP_PKEY_decrypt
        - Src:             'openssl_rsa_private_key.c:346,11'
          Dst:             chunk_create
        - Src:             'openssl_rsa_private_key.c:350,2'
          Dst:             EVP_PKEY_CTX_free
    - functionName:    EVP_PKEY_CTX_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_decrypt_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_pkey_ctx_ctrl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_CTX_ctrl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CRYPTO_malloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CRYPTO_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_size
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_decrypt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          139
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - EVP_DigestSignFinal
        - EVP_DigestSignInit
        - EVP_DigestUpdate
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - RSA_pkey_ctx_ctrl
        - openssl_get_md
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:94,9'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl_rsa_private_key.c:99,6'
          Dst:             EVP_DigestSignInit
        - Src:             'openssl_rsa_private_key.c:105,26'
          Dst:             openssl_get_md
        - Src:             'openssl_rsa_private_key.c:106,7'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'openssl_rsa_private_key.c:107,4'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'openssl_rsa_private_key.c:108,4'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'openssl_rsa_private_key.c:113,6'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl_rsa_private_key.c:117,13'
          Dst:             EVP_DigestSignFinal
        - Src:             'openssl_rsa_private_key.c:120,2'
          Dst:             EVP_MD_CTX_free
    - functionName:    EVP_MD_CTX_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestSignInit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestUpdate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestSignFinal
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_MD_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_plain_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          82
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new
        - EVP_PKEY_sign
        - EVP_PKEY_sign_init
        - RSA_pkey_ctx_ctrl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:132,8'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'openssl_rsa_private_key.c:134,3'
          Dst:             EVP_PKEY_sign_init
        - Src:             'openssl_rsa_private_key.c:135,3'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'openssl_rsa_private_key.c:136,3'
          Dst:             EVP_PKEY_sign
        - Src:             'openssl_rsa_private_key.c:138,3'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl_rsa_private_key.c:141,2'
          Dst:             EVP_PKEY_CTX_free
    - functionName:    EVP_PKEY_sign_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_sign
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_emsa_pss_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          101
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - EVP_PKEY_size
        - build_signature
        - chunk_create
        - chunk_free
        - openssl_get_md
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:188,9'
          Dst:             EVP_PKEY_size
        - Src:             'openssl_rsa_private_key.c:188,9'
          Dst:             chunk_create
        - Src:             'openssl_rsa_private_key.c:190,7'
          Dst:             openssl_get_md
        - Src:             'openssl_rsa_private_key.c:191,12'
          Dst:             build_signature
        - Src:             'openssl_rsa_private_key.c:195,2'
          Dst:             chunk_free
    - functionName:    build_emsa_pkcs1_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          113
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - EVP_PKEY_size
        - EVP_get_digestbyname
        - OBJ_nid2sn
        - build_plain_signature
        - build_signature
        - chunk_create
        - chunk_free
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:153,9'
          Dst:             EVP_PKEY_size
        - Src:             'openssl_rsa_private_key.c:153,9'
          Dst:             chunk_create
        - Src:             'openssl_rsa_private_key.c:157,7'
          Dst:             build_plain_signature
        - Src:             'openssl_rsa_private_key.c:164,8'
          Dst:             OBJ_nid2sn
        - Src:             'openssl_rsa_private_key.c:164,8'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl_rsa_private_key.c:165,13'
          Dst:             build_signature
        - Src:             'openssl_rsa_private_key.c:170,2'
          Dst:             chunk_free
    - functionName:    OBJ_nid2sn
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_get_digestbyname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sign
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          180
      EdgeCount:       33
      CyclomaticComplexity: 18
      functionsReached:
        - build_emsa_pkcs1_signature
        - build_emsa_pss_signature
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_rsa_private_key.c:209,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:212,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'openssl_rsa_private_key.c:214,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'openssl_rsa_private_key.c:216,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'openssl_rsa_private_key.c:218,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'openssl_rsa_private_key.c:220,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'openssl_rsa_private_key.c:223,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'openssl_rsa_private_key.c:225,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'openssl_rsa_private_key.c:227,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'openssl_rsa_private_key.c:229,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'openssl_rsa_private_key.c:232,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'openssl_rsa_private_key.c:234,11'
          Dst:             build_emsa_pkcs1_signature
        - Src:             'openssl_rsa_private_key.c:236,11'
          Dst:             build_emsa_pss_signature
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    qinv
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 703
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BN_mod_inverse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:703,9'
          Dst:             BN_mod_inverse
    - functionName:    BN_mod_inverse
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dmodpq1
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 680
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BN_CTX_end
        - BN_CTX_get
        - BN_CTX_start
        - BN_div
        - BN_sub
        - BN_value_one
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:683,2'
          Dst:             BN_CTX_start
        - Src:             'openssl_rsa_private_key.c:684,8'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:687,23'
          Dst:             BN_value_one
        - Src:             'openssl_rsa_private_key.c:687,7'
          Dst:             BN_sub
        - Src:             'openssl_rsa_private_key.c:688,4'
          Dst:             BN_div
        - Src:             'openssl_rsa_private_key.c:690,3'
          Dst:             BN_CTX_end
        - Src:             'openssl_rsa_private_key.c:693,2'
          Dst:             BN_CTX_end
    - functionName:    BN_CTX_start
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_CTX_get
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_value_one
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_sub
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_div
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_CTX_end
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    calculate_pq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 569
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          298
      EdgeCount:       77
      CyclomaticComplexity: 23
      functionsReached:
        - BN_CTX_end
        - BN_CTX_get
        - BN_CTX_start
        - BN_cmp
        - BN_copy
        - BN_div
        - BN_gcd
        - BN_is_odd
        - BN_is_one
        - BN_mod_exp
        - BN_mod_sqr
        - BN_mul
        - BN_rand_range
        - BN_rshift
        - BN_sub
        - BN_value_one
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:574,2'
          Dst:             BN_CTX_start
        - Src:             'openssl_rsa_private_key.c:575,6'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:576,6'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:577,6'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:578,6'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:579,7'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:580,6'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:586,7'
          Dst:             BN_mul
        - Src:             'openssl_rsa_private_key.c:586,45'
          Dst:             BN_value_one
        - Src:             'openssl_rsa_private_key.c:586,32'
          Dst:             BN_sub
        - Src:             'openssl_rsa_private_key.c:591,6'
          Dst:             BN_is_odd
        - Src:             'openssl_rsa_private_key.c:596,7'
          Dst:             BN_copy
        - Src:             'openssl_rsa_private_key.c:600,15'
          Dst:             BN_is_odd
        - Src:             'openssl_rsa_private_key.c:602,8'
          Dst:             BN_rshift
        - Src:             'openssl_rsa_private_key.c:608,21'
          Dst:             BN_value_one
        - Src:             'openssl_rsa_private_key.c:608,7'
          Dst:             BN_sub
        - Src:             'openssl_rsa_private_key.c:614,8'
          Dst:             BN_rand_range
        - Src:             'openssl_rsa_private_key.c:619,8'
          Dst:             BN_mod_exp
        - Src:             'openssl_rsa_private_key.c:624,7'
          Dst:             BN_is_one
        - Src:             'openssl_rsa_private_key.c:624,23'
          Dst:             BN_cmp
        - Src:             'openssl_rsa_private_key.c:630,9'
          Dst:             BN_mod_sqr
        - Src:             'openssl_rsa_private_key.c:635,8'
          Dst:             BN_is_one
        - Src:             'openssl_rsa_private_key.c:640,8'
          Dst:             BN_cmp
        - Src:             'openssl_rsa_private_key.c:645,9'
          Dst:             BN_copy
        - Src:             'openssl_rsa_private_key.c:655,20'
          Dst:             BN_value_one
        - Src:             'openssl_rsa_private_key.c:655,7'
          Dst:             BN_sub
        - Src:             'openssl_rsa_private_key.c:659,7'
          Dst:             BN_gcd
        - Src:             'openssl_rsa_private_key.c:664,7'
          Dst:             BN_div
        - Src:             'openssl_rsa_private_key.c:671,2'
          Dst:             BN_CTX_end
    - functionName:    BN_mul
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_is_odd
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_copy
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_rshift
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_rand_range
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_mod_exp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_is_one
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_cmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_mod_sqr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_gcd
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_rsa_private_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 876
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         98
      ICount:          659
      EdgeCount:       127
      CyclomaticComplexity: 31
      functionsReached:
        - BN_CTX_end
        - BN_CTX_free
        - BN_CTX_get
        - BN_CTX_secure_new
        - BN_CTX_start
        - BN_bin2bn
        - BN_dup
        - EVP_PKEY_assign
        - EVP_PKEY_free
        - EVP_PKEY_new
        - RSA_check_key
        - RSA_free
        - RSA_new
        - RSA_set0_crt_params
        - RSA_set0_factors
        - RSA_set0_key
        - calculate_pq
        - create_internal
        - d2i_PrivateKey
        - dmodpq1
        - qinv
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_rsa_private_key.c:719,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:758,9'
          Dst:             d2i_PrivateKey
        - Src:             'openssl_rsa_private_key.c:766,9'
          Dst:             BN_CTX_secure_new
        - Src:             'openssl_rsa_private_key.c:771,3'
          Dst:             BN_CTX_start
        - Src:             'openssl_rsa_private_key.c:772,10'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:773,10'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:774,10'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:775,10'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:776,10'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:777,10'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:778,10'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:779,10'
          Dst:             BN_CTX_get
        - Src:             'openssl_rsa_private_key.c:781,10'
          Dst:             BN_bin2bn
        - Src:             'openssl_rsa_private_key.c:782,10'
          Dst:             BN_bin2bn
        - Src:             'openssl_rsa_private_key.c:783,10'
          Dst:             BN_bin2bn
        - Src:             'openssl_rsa_private_key.c:786,11'
          Dst:             BN_bin2bn
        - Src:             'openssl_rsa_private_key.c:787,11'
          Dst:             BN_bin2bn
        - Src:             'openssl_rsa_private_key.c:789,13'
          Dst:             calculate_pq
        - Src:             'openssl_rsa_private_key.c:795,11'
          Dst:             BN_bin2bn
        - Src:             'openssl_rsa_private_key.c:797,13'
          Dst:             dmodpq1
        - Src:             'openssl_rsa_private_key.c:803,11'
          Dst:             BN_bin2bn
        - Src:             'openssl_rsa_private_key.c:805,13'
          Dst:             dmodpq1
        - Src:             'openssl_rsa_private_key.c:811,11'
          Dst:             BN_bin2bn
        - Src:             'openssl_rsa_private_key.c:813,13'
          Dst:             qinv
        - Src:             'openssl_rsa_private_key.c:848,14'
          Dst:             RSA_new
        - Src:             'openssl_rsa_private_key.c:849,26'
          Dst:             BN_dup
        - Src:             'openssl_rsa_private_key.c:849,40'
          Dst:             BN_dup
        - Src:             'openssl_rsa_private_key.c:849,54'
          Dst:             BN_dup
        - Src:             'openssl_rsa_private_key.c:849,8'
          Dst:             RSA_set0_key
        - Src:             'openssl_rsa_private_key.c:850,27'
          Dst:             BN_dup
        - Src:             'openssl_rsa_private_key.c:850,41'
          Dst:             BN_dup
        - Src:             'openssl_rsa_private_key.c:850,5'
          Dst:             RSA_set0_factors
        - Src:             'openssl_rsa_private_key.c:851,30'
          Dst:             BN_dup
        - Src:             'openssl_rsa_private_key.c:851,44'
          Dst:             BN_dup
        - Src:             'openssl_rsa_private_key.c:851,58'
          Dst:             BN_dup
        - Src:             'openssl_rsa_private_key.c:851,5'
          Dst:             RSA_set0_crt_params
        - Src:             'openssl_rsa_private_key.c:852,4'
          Dst:             RSA_check_key
        - Src:             'openssl_rsa_private_key.c:854,4'
          Dst:             RSA_free
        - Src:             'openssl_rsa_private_key.c:857,9'
          Dst:             EVP_PKEY_new
        - Src:             'openssl_rsa_private_key.c:858,8'
          Dst:             EVP_PKEY_assign
        - Src:             'openssl_rsa_private_key.c:860,4'
          Dst:             RSA_free
        - Src:             'openssl_rsa_private_key.c:861,4'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_rsa_private_key.c:867,3'
          Dst:             BN_CTX_end
        - Src:             'openssl_rsa_private_key.c:868,3'
          Dst:             BN_CTX_free
        - Src:             'openssl_rsa_private_key.c:874,9'
          Dst:             create_internal
    - functionName:    d2i_PrivateKey
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_CTX_secure_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_bin2bn
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_dup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_set0_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_set0_factors
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_set0_crt_params
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_check_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_assign
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          70
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_rsa_private_key_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_PKEY_base_id
        - EVP_PKEY_free
        - create_internal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:553,6'
          Dst:             EVP_PKEY_base_id
        - Src:             'openssl_rsa_private_key.c:555,3'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_rsa_private_key.c:558,9'
          Dst:             create_internal
    - functionName:    EVP_PKEY_base_id
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_rsa_private_key_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 544
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          177
      EdgeCount:       38
      CyclomaticComplexity: 9
      functionsReached:
        - BN_free
        - BN_new
        - BN_set_word
        - EVP_PKEY_assign
        - EVP_PKEY_free
        - EVP_PKEY_new
        - RSA_free
        - RSA_generate_key_ex
        - RSA_new
        - create_internal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_rsa_private_key.c:478,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_rsa_private_key.c:494,6'
          Dst:             BN_new
        - Src:             'openssl_rsa_private_key.c:495,13'
          Dst:             BN_set_word
        - Src:             'openssl_rsa_private_key.c:497,3'
          Dst:             BN_free
        - Src:             'openssl_rsa_private_key.c:518,13'
          Dst:             RSA_new
        - Src:             'openssl_rsa_private_key.c:520,6'
          Dst:             RSA_generate_key_ex
        - Src:             'openssl_rsa_private_key.c:522,9'
          Dst:             EVP_PKEY_new
        - Src:             'openssl_rsa_private_key.c:523,8'
          Dst:             EVP_PKEY_assign
        - Src:             'openssl_rsa_private_key.c:525,4'
          Dst:             RSA_free
        - Src:             'openssl_rsa_private_key.c:526,4'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_rsa_private_key.c:532,3'
          Dst:             RSA_free
        - Src:             'openssl_rsa_private_key.c:538,3'
          Dst:             BN_free
        - Src:             'openssl_rsa_private_key.c:541,9'
          Dst:             create_internal
        - Src:             'openssl_rsa_private_key.c:542,2'
          Dst:             BN_free
    - functionName:    BN_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_set_word
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_generate_key_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_PKEY_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:493,4'
          Dst:             EVP_PKEY_free
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          220
      EdgeCount:       32
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_clear
        - chunk_create
        - chunk_free
        - get_n_and_e
        - i2d_PUBKEY
        - i2d_PublicKey
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_rsa_public_key.c:437,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:442,16'
          Dst:             i2d_PUBKEY
        - Src:             'openssl_rsa_public_key.c:442,16'
          Dst:             chunk_create
        - Src:             'openssl_rsa_public_key.c:442,16'
          Dst:             i2d_PUBKEY
        - Src:             'openssl_rsa_public_key.c:452,5'
          Dst:             chunk_clear
        - Src:             'openssl_rsa_public_key.c:458,16'
          Dst:             i2d_PublicKey
        - Src:             'openssl_rsa_public_key.c:458,16'
          Dst:             chunk_create
        - Src:             'openssl_rsa_public_key.c:458,16'
          Dst:             i2d_PublicKey
        - Src:             'openssl_rsa_public_key.c:465,8'
          Dst:             get_n_and_e
        - Src:             'openssl_rsa_public_key.c:471,4'
          Dst:             chunk_free
        - Src:             'openssl_rsa_public_key.c:472,4'
          Dst:             chunk_free
    - functionName:    i2d_PUBKEY
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_n_and_e
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BN_free
        - EVP_PKEY_get0_RSA
        - RSA_get0_key
        - chunk_free
        - openssl_bn2chunk
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:377,13'
          Dst:             EVP_PKEY_get0_RSA
        - Src:             'openssl_rsa_public_key.c:378,2'
          Dst:             RSA_get0_key
        - Src:             'openssl_rsa_public_key.c:386,7'
          Dst:             openssl_bn2chunk
        - Src:             'openssl_rsa_public_key.c:387,4'
          Dst:             openssl_bn2chunk
        - Src:             'openssl_rsa_public_key.c:389,3'
          Dst:             chunk_free
        - Src:             'openssl_rsa_public_key.c:390,3'
          Dst:             chunk_free
        - Src:             'openssl_rsa_public_key.c:396,2'
          Dst:             BN_free
        - Src:             'openssl_rsa_public_key.c:397,2'
          Dst:             BN_free
    - functionName:    EVP_PKEY_get0_RSA
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_get0_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - openssl_rsa_fingerprint
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:428,9'
          Dst:             openssl_rsa_fingerprint
    - functionName:    openssl_rsa_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_free
        - get_n_and_e
        - openssl_fingerprint
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:406,7'
          Dst:             openssl_fingerprint
        - Src:             'openssl_rsa_public_key.c:411,7'
          Dst:             get_n_and_e
        - Src:             'openssl_rsa_public_key.c:417,3'
          Dst:             chunk_free
        - Src:             'openssl_rsa_public_key.c:418,3'
          Dst:             chunk_free
    - functionName:    get_keysize
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_PKEY_bits
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:356,9'
          Dst:             EVP_PKEY_bits
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          236
      EdgeCount:       42
      CyclomaticComplexity: 10
      functionsReached:
        - CRYPTO_free
        - CRYPTO_malloc
        - EVP_PKEY_CTX_ctrl
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new
        - EVP_PKEY_encrypt
        - EVP_PKEY_encrypt_init
        - EVP_PKEY_size
        - RSA_pkey_ctx_ctrl
        - chunk_create
        - memcpy_noop
        - openssl_get_md
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_rsa_public_key.c:255,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:286,8'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'openssl_rsa_public_key.c:293,6'
          Dst:             EVP_PKEY_encrypt_init
        - Src:             'openssl_rsa_public_key.c:298,6'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'openssl_rsa_public_key.c:305,23'
          Dst:             openssl_get_md
        - Src:             'openssl_rsa_public_key.c:307,7'
          Dst:             EVP_PKEY_CTX_ctrl
        - Src:             'openssl_rsa_public_key.c:322,28'
          Dst:             CRYPTO_malloc
        - Src:             'openssl_rsa_public_key.c:323,5'
          Dst:             memcpy_noop
        - Src:             'openssl_rsa_public_key.c:325,8'
          Dst:             EVP_PKEY_CTX_ctrl
        - Src:             'openssl_rsa_public_key.c:327,5'
          Dst:             CRYPTO_free
        - Src:             'openssl_rsa_public_key.c:335,8'
          Dst:             EVP_PKEY_size
        - Src:             'openssl_rsa_public_key.c:339,6'
          Dst:             EVP_PKEY_encrypt
        - Src:             'openssl_rsa_public_key.c:345,12'
          Dst:             chunk_create
        - Src:             'openssl_rsa_public_key.c:349,2'
          Dst:             EVP_PKEY_CTX_free
    - functionName:    EVP_PKEY_encrypt_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_encrypt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          175
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - EVP_DigestUpdate
        - EVP_DigestVerifyFinal
        - EVP_DigestVerifyInit
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_PKEY_size
        - RSA_pkey_ctx_ctrl
        - chunk_skip
        - openssl_get_md
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:75,17'
          Dst:             EVP_PKEY_size
        - Src:             'openssl_rsa_public_key.c:81,15'
          Dst:             chunk_skip
        - Src:             'openssl_rsa_public_key.c:84,9'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl_rsa_public_key.c:89,6'
          Dst:             EVP_DigestVerifyInit
        - Src:             'openssl_rsa_public_key.c:95,26'
          Dst:             openssl_get_md
        - Src:             'openssl_rsa_public_key.c:96,7'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'openssl_rsa_public_key.c:97,4'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'openssl_rsa_public_key.c:98,4'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'openssl_rsa_public_key.c:103,6'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl_rsa_public_key.c:107,11'
          Dst:             EVP_DigestVerifyFinal
        - Src:             'openssl_rsa_public_key.c:110,2'
          Dst:             EVP_MD_CTX_free
    - functionName:    EVP_DigestVerifyInit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestVerifyFinal
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_plain_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          154
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new
        - EVP_PKEY_size
        - EVP_PKEY_verify_recover
        - EVP_PKEY_verify_recover_init
        - RSA_pkey_ctx_ctrl
        - chunk_create
        - chunk_equals_const
        - chunk_skip
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:121,20'
          Dst:             EVP_PKEY_size
        - Src:             'openssl_rsa_public_key.c:127,15'
          Dst:             chunk_skip
        - Src:             'openssl_rsa_public_key.c:146,8'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'openssl_rsa_public_key.c:148,3'
          Dst:             EVP_PKEY_verify_recover_init
        - Src:             'openssl_rsa_public_key.c:149,3'
          Dst:             RSA_pkey_ctx_ctrl
        - Src:             'openssl_rsa_public_key.c:151,3'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl_rsa_public_key.c:155,6'
          Dst:             EVP_PKEY_verify_recover
        - Src:             'openssl_rsa_public_key.c:157,36'
          Dst:             chunk_create
        - Src:             'openssl_rsa_public_key.c:157,11'
          Dst:             chunk_equals_const
        - Src:             'openssl_rsa_public_key.c:159,2'
          Dst:             EVP_PKEY_CTX_free
    - functionName:    EVP_PKEY_verify_recover_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_verify_recover
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_emsa_pss_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - openssl_get_md
        - verify_signature
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:194,7'
          Dst:             openssl_get_md
        - Src:             'openssl_rsa_public_key.c:195,15'
          Dst:             verify_signature
    - functionName:    verify_emsa_pkcs1_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_get_digestbyname
        - OBJ_nid2sn
        - verify_plain_signature
        - verify_signature
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:175,10'
          Dst:             verify_plain_signature
        - Src:             'openssl_rsa_public_key.c:177,7'
          Dst:             OBJ_nid2sn
        - Src:             'openssl_rsa_public_key.c:177,7'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl_rsa_public_key.c:178,15'
          Dst:             verify_signature
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          214
      EdgeCount:       33
      CyclomaticComplexity: 18
      functionsReached:
        - verify_emsa_pkcs1_signature
        - verify_emsa_pss_signature
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_rsa_public_key.c:208,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:211,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'openssl_rsa_public_key.c:213,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'openssl_rsa_public_key.c:215,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'openssl_rsa_public_key.c:217,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'openssl_rsa_public_key.c:219,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'openssl_rsa_public_key.c:222,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'openssl_rsa_public_key.c:224,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'openssl_rsa_public_key.c:226,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'openssl_rsa_public_key.c:228,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'openssl_rsa_public_key.c:231,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'openssl_rsa_public_key.c:233,11'
          Dst:             verify_emsa_pkcs1_signature
        - Src:             'openssl_rsa_public_key.c:235,11'
          Dst:             verify_emsa_pss_signature
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_rsa_public_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_rsa_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 533
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         54
      ICount:          297
      EdgeCount:       66
      CyclomaticComplexity: 14
      functionsReached:
        - BN_bin2bn
        - EVP_PKEY_assign
        - EVP_PKEY_base_id
        - EVP_PKEY_free
        - EVP_PKEY_new
        - RSA_free
        - RSA_new
        - RSA_set0_key
        - create_internal
        - d2i_PUBKEY
        - d2i_PublicKey
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_rsa_public_key.c:541,3'
          Branch Sides:    []
        - Branch String:   'openssl_rsa_public_key.c:562,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_rsa_public_key.c:565,11'
          Dst:             d2i_PUBKEY
        - Src:             'openssl_rsa_public_key.c:566,16'
          Dst:             EVP_PKEY_base_id
        - Src:             'openssl_rsa_public_key.c:568,6'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_rsa_public_key.c:587,11'
          Dst:             d2i_PublicKey
        - Src:             'openssl_rsa_public_key.c:599,10'
          Dst:             BN_bin2bn
        - Src:             'openssl_rsa_public_key.c:600,10'
          Dst:             BN_bin2bn
        - Src:             'openssl_rsa_public_key.c:628,14'
          Dst:             RSA_new
        - Src:             'openssl_rsa_public_key.c:630,7'
          Dst:             RSA_set0_key
        - Src:             'openssl_rsa_public_key.c:632,10'
          Dst:             EVP_PKEY_new
        - Src:             'openssl_rsa_public_key.c:633,17'
          Dst:             EVP_PKEY_assign
        - Src:             'openssl_rsa_public_key.c:635,5'
          Dst:             RSA_free
        - Src:             'openssl_rsa_public_key.c:636,5'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_rsa_public_key.c:642,4'
          Dst:             RSA_free
        - Src:             'openssl_rsa_public_key.c:650,9'
          Dst:             create_internal
    - functionName:    d2i_PUBKEY
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    d2i_PublicKey
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    untoh32
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/byteorder.h:177,9'
          Dst:             ntohl
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          158
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - SHA1_Init
        - untoh32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_sha1_prf.c:105,7'
          Dst:             SHA1_Init
        - Src:             'openssl_sha1_prf.c:117,19'
          Dst:             untoh32
        - Src:             'openssl_sha1_prf.c:121,19'
          Dst:             untoh32
        - Src:             'openssl_sha1_prf.c:125,19'
          Dst:             untoh32
        - Src:             'openssl_sha1_prf.c:129,19'
          Dst:             untoh32
        - Src:             'openssl_sha1_prf.c:133,19'
          Dst:             untoh32
    - functionName:    SHA1_Init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_key_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_block_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - get_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_sha1_prf.c:90,12'
          Dst:             chunk_create
        - Src:             'openssl_sha1_prf.c:91,10'
          Dst:             get_bytes
        - Src:             'openssl_sha1_prf.c:93,9'
          Dst:             get_bytes
    - functionName:    get_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          93
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - SHA1_Update
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_sha1_prf.c:53,7'
          Dst:             SHA1_Update
        - Src:             'openssl_sha1_prf.c:62,13'
          Dst:             htonl
        - Src:             'openssl_sha1_prf.c:63,13'
          Dst:             htonl
        - Src:             'openssl_sha1_prf.c:64,13'
          Dst:             htonl
        - Src:             'openssl_sha1_prf.c:65,13'
          Dst:             htonl
        - Src:             'openssl_sha1_prf.c:66,13'
          Dst:             htonl
    - functionName:    SHA1_Update
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_sha1_prf_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_sha1_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    openssl_asn1_to_time
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 2
      functionsReached:
        - ASN1_STRING_type
        - asn1_to_time
        - openssl_asn1_str2chunk
      functionUses:    5
      BranchProfiles:
        - Branch String:   'openssl_util.c:343,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_util.c:337,11'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_util.c:339,10'
          Dst:             ASN1_STRING_type
        - Src:             'openssl_util.c:347,12'
          Dst:             asn1_to_time
    - functionName:    openssl_asn1_str2chunk
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ASN1_STRING_get0_data
        - ASN1_STRING_length
        - chunk_create
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_util.c:265,32'
          Dst:             ASN1_STRING_get0_data
        - Src:             'openssl_util.c:266,8'
          Dst:             ASN1_STRING_length
        - Src:             'openssl_util.c:265,10'
          Dst:             chunk_create
    - functionName:    ASN1_STRING_type
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN1_STRING_get0_data
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN1_STRING_length
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_asn1_known_oid
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_known_oid
        - openssl_asn1_obj2chunk
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_util.c:324,24'
          Dst:             openssl_asn1_obj2chunk
        - Src:             'openssl_util.c:324,9'
          Dst:             asn1_known_oid
    - functionName:    openssl_asn1_obj2chunk
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - OBJ_get0_data
        - OBJ_length
        - chunk_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_util.c:253,32'
          Dst:             OBJ_get0_data
        - Src:             'openssl_util.c:253,53'
          Dst:             OBJ_length
        - Src:             'openssl_util.c:253,10'
          Dst:             chunk_create
    - functionName:    OBJ_get0_data
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    OBJ_length
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_x509_name2id
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - i2d_X509_NAME
        - identification_create_from_encoding
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_util.c:298,11'
          Dst:             i2d_X509_NAME
        - Src:             'openssl_util.c:298,11'
          Dst:             chunk_create
        - Src:             'openssl_util.c:298,11'
          Dst:             i2d_X509_NAME
        - Src:             'openssl_util.c:304,9'
          Dst:             identification_create_from_encoding
    - functionName:    i2d_X509_NAME
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_asn1_int2chunk
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - openssl_asn1_str2chunk
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_util.c:284,9'
          Dst:             openssl_asn1_str2chunk
    - functionName:    openssl_bn2chunk
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          145
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - BN_bn2bin
        - BN_num_bits
        - chunk_create
        - chunk_create_cat
        - chunk_free
        - chunk_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_util.c:233,11'
          Dst:             BN_num_bits
        - Src:             'openssl_util.c:233,11'
          Dst:             chunk_create
        - Src:             'openssl_util.c:234,6'
          Dst:             BN_bn2bin
        - Src:             'openssl_util.c:238,13'
          Dst:             chunk_length
        - Src:             'openssl_util.c:238,13'
          Dst:             chunk_create_cat
        - Src:             'openssl_util.c:242,2'
          Dst:             chunk_free
    - functionName:    BN_num_bits
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_bn2bin
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_bn_split
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - BN_bin2bn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_util.c:219,7'
          Dst:             BN_bin2bn
        - Src:             'openssl_util.c:220,4'
          Dst:             BN_bin2bn
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_bn_cat
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          119
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - BN_bn2bin
        - BN_num_bits
        - chunk_free
        - memset_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_util.c:180,2'
          Dst:             memset_noop
        - Src:             'openssl_util.c:183,17'
          Dst:             BN_num_bits
        - Src:             'openssl_util.c:184,7'
          Dst:             BN_bn2bin
        - Src:             'openssl_util.c:192,18'
          Dst:             BN_num_bits
        - Src:             'openssl_util.c:193,8'
          Dst:             BN_bn2bin
        - Src:             'openssl_util.c:201,2'
          Dst:             chunk_free
    - functionName:    openssl_wrap_private_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_PKEY_base_id
        - EVP_PKEY_free
        - openssl_ec_private_key_create
        - openssl_ed_private_key_create
        - openssl_rsa_private_key_create
      functionUses:    3
      BranchProfiles:
        - Branch String:   'openssl_util.c:145,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_util.c:145,11'
          Dst:             EVP_PKEY_base_id
        - Src:             'openssl_util.c:149,12'
          Dst:             openssl_rsa_private_key_create
        - Src:             'openssl_util.c:153,12'
          Dst:             openssl_ec_private_key_create
        - Src:             'openssl_util.c:160,12'
          Dst:             openssl_ed_private_key_create
        - Src:             'openssl_util.c:163,5'
          Dst:             EVP_PKEY_free
    - functionName:    openssl_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          242
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - i2d_PUBKEY
        - i2d_PublicKey
      functionUses:    3
      BranchProfiles:
        - Branch String:   'openssl_util.c:113,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_util.c:116,10'
          Dst:             i2d_PublicKey
        - Src:             'openssl_util.c:116,10'
          Dst:             chunk_create
        - Src:             'openssl_util.c:116,10'
          Dst:             i2d_PublicKey
        - Src:             'openssl_util.c:119,10'
          Dst:             i2d_PUBKEY
        - Src:             'openssl_util.c:119,10'
          Dst:             chunk_create
        - Src:             'openssl_util.c:119,10'
          Dst:             i2d_PUBKEY
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    openssl_compute_shared_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          121
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new
        - EVP_PKEY_derive
        - EVP_PKEY_derive_init
        - EVP_PKEY_derive_set_peer
        - chunk_clear
        - chunk_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_util.c:57,8'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'openssl_util.c:63,6'
          Dst:             EVP_PKEY_derive_init
        - Src:             'openssl_util.c:76,6'
          Dst:             EVP_PKEY_derive_set_peer
        - Src:             'openssl_util.c:81,6'
          Dst:             EVP_PKEY_derive
        - Src:             'openssl_util.c:86,12'
          Dst:             chunk_create
        - Src:             'openssl_util.c:88,6'
          Dst:             EVP_PKEY_derive
        - Src:             'openssl_util.c:90,3'
          Dst:             chunk_clear
        - Src:             'openssl_util.c:97,2'
          Dst:             EVP_PKEY_CTX_free
    - functionName:    EVP_PKEY_derive_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_derive_set_peer
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_derive
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_GENERAL_SUBTREE_value
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:272,1'
          Dst:             OPENSSL_sk_value
    - functionName:    OPENSSL_sk_value
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_GENERAL_SUBTREE_num
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:272,1'
          Dst:             OPENSSL_sk_num
    - functionName:    OPENSSL_sk_num
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_generalSubtrees
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1010
      functionLinenumberEnd: 1029
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          67
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - general_name2id
        - sk_GENERAL_SUBTREE_num
        - sk_GENERAL_SUBTREE_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:1015,18'
          Dst:             sk_GENERAL_SUBTREE_num
        - Src:             'openssl_x509.c:1017,13'
          Dst:             sk_GENERAL_SUBTREE_value
        - Src:             'openssl_x509.c:1018,8'
          Dst:             general_name2id
    - functionName:    general_name2id
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          236
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - OBJ_obj2nid
        - identification_create_from_encoding
        - openssl_asn1_str2chunk
        - openssl_x509_name2id
      functionUses:    5
      BranchProfiles:
        - Branch String:   'openssl_x509.c:210,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_x509.c:214,6'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_x509.c:213,11'
          Dst:             identification_create_from_encoding
        - Src:             'openssl_x509.c:217,6'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_x509.c:216,11'
          Dst:             identification_create_from_encoding
        - Src:             'openssl_x509.c:220,6'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_x509.c:219,11'
          Dst:             identification_create_from_encoding
        - Src:             'openssl_x509.c:223,20'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_x509.c:226,12'
          Dst:             identification_create_from_encoding
        - Src:             'openssl_x509.c:230,12'
          Dst:             identification_create_from_encoding
        - Src:             'openssl_x509.c:235,12'
          Dst:             identification_create_from_encoding
        - Src:             'openssl_x509.c:239,12'
          Dst:             identification_create_from_encoding
        - Src:             'openssl_x509.c:245,11'
          Dst:             openssl_x509_name2id
        - Src:             'openssl_x509.c:247,8'
          Dst:             OBJ_obj2nid
        - Src:             'openssl_x509.c:251,8'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_x509.c:250,12'
          Dst:             identification_create_from_encoding
    - functionName:    OBJ_obj2nid
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_IPAddressOrRange_value
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 778
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:778,1'
          Dst:             OPENSSL_sk_value
    - functionName:    sk_IPAddressOrRange_num
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 778
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:778,1'
          Dst:             OPENSSL_sk_num
    - functionName:    sk_IPAddressFamily_free
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:797,1'
          Dst:             OPENSSL_sk_free
    - functionName:    OPENSSL_sk_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_ipAddrBlock_ext_fam
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 926
      functionLinenumberEnd: 969
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          236
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - X509v3_addr_get_afi
        - X509v3_addr_get_range
        - chunk_create
        - sk_IPAddressOrRange_num
        - sk_IPAddressOrRange_value
        - traffic_selector_create_from_bytes
      functionUses:    1
      BranchProfiles:
        - Branch String:   'openssl_x509.c:940,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_x509.c:939,8'
          Dst:             X509v3_addr_get_afi
        - Src:             'openssl_x509.c:943,11'
          Dst:             chunk_create
        - Src:             'openssl_x509.c:944,9'
          Dst:             chunk_create
        - Src:             'openssl_x509.c:948,11'
          Dst:             chunk_create
        - Src:             'openssl_x509.c:949,9'
          Dst:             chunk_create
        - Src:             'openssl_x509.c:957,18'
          Dst:             sk_IPAddressOrRange_num
        - Src:             'openssl_x509.c:959,9'
          Dst:             sk_IPAddressOrRange_value
        - Src:             'openssl_x509.c:960,7'
          Dst:             X509v3_addr_get_range
        - Src:             'openssl_x509.c:962,9'
          Dst:             traffic_selector_create_from_bytes
    - functionName:    X509v3_addr_get_afi
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509v3_addr_get_range
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_IPAddressFamily_pop
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_pop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:797,1'
          Dst:             OPENSSL_sk_pop
    - functionName:    OPENSSL_sk_pop
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_IPAddressFamily_num
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:797,1'
          Dst:             OPENSSL_sk_num
    - functionName:    sk_IPAddressFamily_pop_free
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_pop_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:797,1'
          Dst:             OPENSSL_sk_pop_free
    - functionName:    OPENSSL_sk_pop_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_ASN1_OBJECT_pop_free
      functionSourceFile: '/usr/include/openssl/asn1.h'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_pop_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/asn1.h:536,1'
          Dst:             OPENSSL_sk_pop_free
    - functionName:    sk_ASN1_OBJECT_value
      functionSourceFile: '/usr/include/openssl/asn1.h'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/asn1.h:536,1'
          Dst:             OPENSSL_sk_value
    - functionName:    sk_ASN1_OBJECT_num
      functionSourceFile: '/usr/include/openssl/asn1.h'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/asn1.h:536,1'
          Dst:             OPENSSL_sk_num
    - functionName:    sk_GENERAL_NAME_free
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:166,1'
          Dst:             OPENSSL_sk_free
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_ACCESS_DESCRIPTION_free
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:170,1'
          Dst:             OPENSSL_sk_free
    - functionName:    sk_ACCESS_DESCRIPTION_value
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:170,1'
          Dst:             OPENSSL_sk_value
    - functionName:    sk_ACCESS_DESCRIPTION_num
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:170,1'
          Dst:             OPENSSL_sk_num
    - functionName:    parse_nameConstraints_ext
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1047
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - NAME_CONSTRAINTS_free
        - X509V3_EXT_d2i
        - parse_generalSubtrees
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:1040,26'
          Dst:             X509V3_EXT_d2i
        - Src:             'openssl_x509.c:1043,8'
          Dst:             parse_generalSubtrees
        - Src:             'openssl_x509.c:1044,5'
          Dst:             parse_generalSubtrees
        - Src:             'openssl_x509.c:1045,3'
          Dst:             NAME_CONSTRAINTS_free
    - functionName:    X509V3_EXT_d2i
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    NAME_CONSTRAINTS_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_ipAddrBlock_ext
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 976
      functionLinenumberEnd: 1002
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - IPAddressFamily_free
        - X509V3_EXT_d2i
        - X509v3_addr_is_canonical
        - parse_ipAddrBlock_ext_fam
        - sk_IPAddressFamily_free
        - sk_IPAddressFamily_num
        - sk_IPAddressFamily_pop
        - sk_IPAddressFamily_pop_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:980,39'
          Dst:             X509V3_EXT_d2i
        - Src:             'openssl_x509.c:986,7'
          Dst:             X509v3_addr_is_canonical
        - Src:             'openssl_x509.c:988,3'
          Dst:             sk_IPAddressFamily_pop_free
        - Src:             'openssl_x509.c:988,3'
          Dst:             IPAddressFamily_free
        - Src:             'openssl_x509.c:992,9'
          Dst:             sk_IPAddressFamily_num
        - Src:             'openssl_x509.c:994,9'
          Dst:             sk_IPAddressFamily_pop
        - Src:             'openssl_x509.c:995,3'
          Dst:             parse_ipAddrBlock_ext_fam
        - Src:             'openssl_x509.c:996,3'
          Dst:             IPAddressFamily_free
        - Src:             'openssl_x509.c:998,2'
          Dst:             sk_IPAddressFamily_free
    - functionName:    X509v3_addr_is_canonical
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    IPAddressFamily_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_extKeyUsage_ext
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 763
      functionLinenumberEnd: 791
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          91
      EdgeCount:       16
      CyclomaticComplexity: 3
      functionsReached:
        - ASN1_OBJECT_free
        - OBJ_obj2nid
        - X509V3_EXT_d2i
        - sk_ASN1_OBJECT_num
        - sk_ASN1_OBJECT_pop_free
        - sk_ASN1_OBJECT_value
      functionUses:    1
      BranchProfiles:
        - Branch String:   'openssl_x509.c:772,4'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_x509.c:767,10'
          Dst:             X509V3_EXT_d2i
        - Src:             'openssl_x509.c:770,19'
          Dst:             sk_ASN1_OBJECT_num
        - Src:             'openssl_x509.c:772,24'
          Dst:             sk_ASN1_OBJECT_value
        - Src:             'openssl_x509.c:772,12'
          Dst:             OBJ_obj2nid
        - Src:             'openssl_x509.c:787,3'
          Dst:             sk_ASN1_OBJECT_pop_free
        - Src:             'openssl_x509.c:787,3'
          Dst:             ASN1_OBJECT_free
    - functionName:    ASN1_OBJECT_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_keyUsage_ext
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 723
      functionLinenumberEnd: 756
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          135
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - ASN1_BIT_STRING_free
        - ASN1_STRING_get0_data
        - ASN1_STRING_length
        - X509V3_EXT_d2i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:726,10'
          Dst:             X509V3_EXT_d2i
        - Src:             'openssl_x509.c:729,24'
          Dst:             ASN1_STRING_get0_data
        - Src:             'openssl_x509.c:730,16'
          Dst:             ASN1_STRING_length
        - Src:             'openssl_x509.c:752,3'
          Dst:             ASN1_BIT_STRING_free
    - functionName:    ASN1_BIT_STRING_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_basicConstraints_ext
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 694
      functionLinenumberEnd: 716
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          95
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ASN1_INTEGER_get
        - BASIC_CONSTRAINTS_free
        - X509V3_EXT_d2i
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:698,36'
          Dst:             X509V3_EXT_d2i
        - Src:             'openssl_x509.c:708,14'
          Dst:             ASN1_INTEGER_get
        - Src:             'openssl_x509.c:712,3'
          Dst:             BASIC_CONSTRAINTS_free
    - functionName:    ASN1_INTEGER_get
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BASIC_CONSTRAINTS_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_generalNames_ext
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 687
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - GENERAL_NAME_free
        - X509V3_EXT_d2i
        - general_name2id
        - sk_GENERAL_NAME_free
        - sk_GENERAL_NAME_num
        - sk_GENERAL_NAME_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:668,10'
          Dst:             X509V3_EXT_d2i
        - Src:             'openssl_x509.c:674,8'
          Dst:             sk_GENERAL_NAME_num
        - Src:             'openssl_x509.c:677,10'
          Dst:             sk_GENERAL_NAME_value
        - Src:             'openssl_x509.c:678,8'
          Dst:             general_name2id
        - Src:             'openssl_x509.c:683,3'
          Dst:             GENERAL_NAME_free
        - Src:             'openssl_x509.c:685,2'
          Dst:             sk_GENERAL_NAME_free
    - functionName:    sk_GENERAL_NAME_num
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:166,1'
          Dst:             OPENSSL_sk_num
    - functionName:    sk_GENERAL_NAME_value
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:166,1'
          Dst:             OPENSSL_sk_value
    - functionName:    GENERAL_NAME_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_subjectKeyIdentifier_ext
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1075
      functionLinenumberEnd: 1088
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          118
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - X509_EXTENSION_get_data
        - chunk_create_clone
        - chunk_skip
        - openssl_asn1_str2chunk
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:1078,32'
          Dst:             X509_EXTENSION_get_data
        - Src:             'openssl_x509.c:1078,9'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_x509.c:1084,32'
          Dst:             chunk_skip
        - Src:             'openssl_x509.c:1084,32'
          Dst:             chunk_create_clone
    - functionName:    X509_EXTENSION_get_data
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_authKeyIdentifier_ext
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1055
      functionLinenumberEnd: 1068
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - AUTHORITY_KEYID_free
        - X509V3_EXT_d2i
        - chunk_create_clone
        - openssl_asn1_str2chunk
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:1058,28'
          Dst:             X509V3_EXT_d2i
        - Src:             'openssl_x509.c:1062,29'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_x509.c:1062,29'
          Dst:             chunk_create_clone
        - Src:             'openssl_x509.c:1064,3'
          Dst:             AUTHORITY_KEYID_free
    - functionName:    AUTHORITY_KEYID_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_authorityInfoAccess_ext
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 877
      functionLinenumberEnd: 917
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          144
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - ACCESS_DESCRIPTION_free
        - X509V3_EXT_d2i
        - asprintf
        - general_name2id
        - openssl_asn1_known_oid
        - sk_ACCESS_DESCRIPTION_free
        - sk_ACCESS_DESCRIPTION_num
        - sk_ACCESS_DESCRIPTION_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:884,10'
          Dst:             X509V3_EXT_d2i
        - Src:             'openssl_x509.c:889,8'
          Dst:             sk_ACCESS_DESCRIPTION_num
        - Src:             'openssl_x509.c:892,10'
          Dst:             sk_ACCESS_DESCRIPTION_value
        - Src:             'openssl_x509.c:895,8'
          Dst:             openssl_asn1_known_oid
        - Src:             'openssl_x509.c:897,10'
          Dst:             general_name2id
        - Src:             'openssl_x509.c:900,12'
          Dst:             asprintf
        - Src:             'openssl_x509.c:912,4'
          Dst:             ACCESS_DESCRIPTION_free
        - Src:             'openssl_x509.c:915,2'
          Dst:             sk_ACCESS_DESCRIPTION_free
    - functionName:    ACCESS_DESCRIPTION_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_X509_EXTENSION_value
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:85,1'
          Dst:             OPENSSL_sk_value
    - functionName:    sk_X509_EXTENSION_num
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:85,1'
          Dst:             OPENSSL_sk_num
    - functionName:    parse_extensions
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1094
      functionLinenumberEnd: 1180
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         38
      ICount:          264
      EdgeCount:       44
      CyclomaticComplexity: 8
      functionsReached:
        - OBJ_obj2nid
        - OBJ_obj2txt
        - X509_EXTENSION_get_critical
        - X509_EXTENSION_get_object
        - X509_get0_extensions
        - openssl_parse_crlDistributionPoints
        - parse_authKeyIdentifier_ext
        - parse_authorityInfoAccess_ext
        - parse_basicConstraints_ext
        - parse_extKeyUsage_ext
        - parse_generalNames_ext
        - parse_ipAddrBlock_ext
        - parse_keyUsage_ext
        - parse_nameConstraints_ext
        - parse_subjectKeyIdentifier_ext
        - sk_X509_EXTENSION_num
        - sk_X509_EXTENSION_value
      functionUses:    1
      BranchProfiles:
        - Branch String:   'openssl_x509.c:1110,4'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_x509.c:1099,15'
          Dst:             X509_get0_extensions
        - Src:             'openssl_x509.c:1102,9'
          Dst:             sk_X509_EXTENSION_num
        - Src:             'openssl_x509.c:1109,10'
          Dst:             sk_X509_EXTENSION_value
        - Src:             'openssl_x509.c:1110,24'
          Dst:             X509_EXTENSION_get_object
        - Src:             'openssl_x509.c:1110,12'
          Dst:             OBJ_obj2nid
        - Src:             'openssl_x509.c:1113,11'
          Dst:             parse_authorityInfoAccess_ext
        - Src:             'openssl_x509.c:1116,11'
          Dst:             parse_authKeyIdentifier_ext
        - Src:             'openssl_x509.c:1119,11'
          Dst:             parse_subjectKeyIdentifier_ext
        - Src:             'openssl_x509.c:1122,11'
          Dst:             parse_generalNames_ext
        - Src:             'openssl_x509.c:1125,11'
          Dst:             parse_generalNames_ext
        - Src:             'openssl_x509.c:1128,11'
          Dst:             parse_basicConstraints_ext
        - Src:             'openssl_x509.c:1131,11'
          Dst:             parse_keyUsage_ext
        - Src:             'openssl_x509.c:1135,11'
          Dst:             parse_extKeyUsage_ext
        - Src:             'openssl_x509.c:1138,11'
          Dst:             openssl_parse_crlDistributionPoints
        - Src:             'openssl_x509.c:1142,11'
          Dst:             parse_ipAddrBlock_ext
        - Src:             'openssl_x509.c:1146,11'
          Dst:             parse_nameConstraints_ext
        - Src:             'openssl_x509.c:1149,11'
          Dst:             X509_EXTENSION_get_critical
        - Src:             'openssl_x509.c:1157,10'
          Dst:             X509_EXTENSION_get_object
        - Src:             'openssl_x509.c:1156,7'
          Dst:             OBJ_obj2txt
    - functionName:    X509_get0_extensions
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_EXTENSION_get_object
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_parse_crlDistributionPoints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 870
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         43
      ICount:          284
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - DIST_POINT_free
        - X509V3_EXT_d2i
        - asprintf
        - general_name2id
        - sk_DIST_POINT_free
        - sk_DIST_POINT_num
        - sk_DIST_POINT_value
        - sk_GENERAL_NAME_num
        - sk_GENERAL_NAME_value
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:806,9'
          Dst:             X509V3_EXT_d2i
        - Src:             'openssl_x509.c:811,14'
          Dst:             sk_DIST_POINT_num
        - Src:             'openssl_x509.c:814,9'
          Dst:             sk_DIST_POINT_value
        - Src:             'openssl_x509.c:820,16'
          Dst:             sk_GENERAL_NAME_num
        - Src:             'openssl_x509.c:823,27'
          Dst:             sk_GENERAL_NAME_value
        - Src:             'openssl_x509.c:823,11'
          Dst:             general_name2id
        - Src:             'openssl_x509.c:827,13'
          Dst:             asprintf
        - Src:             'openssl_x509.c:836,22'
          Dst:             sk_GENERAL_NAME_num
        - Src:             'openssl_x509.c:840,11'
          Dst:             sk_GENERAL_NAME_value
        - Src:             'openssl_x509.c:839,19'
          Dst:             general_name2id
        - Src:             'openssl_x509.c:843,11'
          Dst:             strdup
        - Src:             'openssl_x509.c:865,4'
          Dst:             DIST_POINT_free
        - Src:             'openssl_x509.c:868,2'
          Dst:             sk_DIST_POINT_free
    - functionName:    X509_EXTENSION_get_critical
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    OBJ_obj2txt
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_DIST_POINT_num
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:205,1'
          Dst:             OPENSSL_sk_num
    - functionName:    sk_DIST_POINT_value
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:205,1'
          Dst:             OPENSSL_sk_value
    - functionName:    DIST_POINT_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_DIST_POINT_free
      functionSourceFile: '/usr/include/openssl/x509v3.h'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509v3.h:205,1'
          Dst:             OPENSSL_sk_free
    - functionName:    create_name_constraint_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_ipAddrBlock_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_ocsp_uri_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_crl_uri_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_constraint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       6
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_x509.c:302,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_authKeyIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_subjectKeyIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_flags
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 566
      functionLinenumberEnd: 568
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          103
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:553,10'
          Dst:             chunk_equals
        - Src:             'openssl_x509.c:559,10'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:528,15'
          Dst:             chunk_create_clone
    - functionName:    get_validity
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 501
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:510,7'
          Dst:             time
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          325
      EdgeCount:       54
      CyclomaticComplexity: 16
      functionsReached:
        - X509_get0_signature
        - chunk_create
        - chunk_equals
        - i2d_re_X509_tbs
        - openssl_asn1_str2chunk
        - signature_params_clone
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:454,21'
          Dst:             chunk_equals
        - Src:             'openssl_x509.c:474,8'
          Dst:             i2d_re_X509_tbs
        - Src:             'openssl_x509.c:474,8'
          Dst:             chunk_create
        - Src:             'openssl_x509.c:474,8'
          Dst:             i2d_re_X509_tbs
        - Src:             'openssl_x509.c:478,2'
          Dst:             X509_get0_signature
        - Src:             'openssl_x509.c:480,7'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_x509.c:487,13'
          Dst:             signature_params_clone
    - functionName:    i2d_re_X509_tbs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_get0_signature
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_subjectAltName_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_serial
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - X509_get_serialNumber
        - openssl_asn1_int2chunk
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:269,32'
          Dst:             X509_get_serialNumber
        - Src:             'openssl_x509.c:269,9'
          Dst:             openssl_asn1_int2chunk
    - functionName:    X509_get_serialNumber
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          225
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - chunk_equals
        - create_subjectAltName_enumerator
        - get_serial
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:375,7'
          Dst:             chunk_equals
        - Src:             'openssl_x509.c:380,4'
          Dst:             chunk_equals
        - Src:             'openssl_x509.c:389,20'
          Dst:             get_serial
        - Src:             'openssl_x509.c:389,7'
          Dst:             chunk_equals
        - Src:             'openssl_x509.c:395,15'
          Dst:             create_subjectAltName_enumerator
    - functionName:    get_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 654
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          148
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:612,2'
          Dst:             linked_list_create
        - Src:             'openssl_x509.c:612,2'
          Dst:             linked_list_create
        - Src:             'openssl_x509.c:612,2'
          Dst:             linked_list_create
        - Src:             'openssl_x509.c:612,2'
          Dst:             linked_list_create
        - Src:             'openssl_x509.c:612,2'
          Dst:             linked_list_create
        - Src:             'openssl_x509.c:612,2'
          Dst:             linked_list_create
        - Src:             'openssl_x509.c:612,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 573
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          223
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - X509_free
        - signature_params_destroy
        - x509_cdp_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x509.c:578,4'
          Dst:             X509_free
        - Src:             'openssl_x509.c:580,3'
          Dst:             signature_params_destroy
        - Src:             'openssl_x509.c:592,3'
          Dst:             x509_cdp_destroy
    - functionName:    X509_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_certificate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1186
      functionLinenumberEnd: 1303
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         70
      ICount:          633
      EdgeCount:       91
      CyclomaticComplexity: 23
      functionsReached:
        - X509_PUBKEY_get0_param
        - X509_get0_notAfter
        - X509_get0_notBefore
        - X509_get0_pubkey_bitstr
        - X509_get0_signature
        - X509_get0_tbs_sigalg
        - X509_get_X509_PUBKEY
        - X509_get_issuer_name
        - X509_get_subject_name
        - X509_get_version
        - chunk_create
        - chunk_equals
        - d2i_X509
        - i2d_X509_ALGOR
        - i2d_X509_PUBKEY
        - issued_by
        - openssl_asn1_known_oid
        - openssl_asn1_str2chunk
        - openssl_asn1_to_time
        - openssl_x509_name2id
        - parse_extensions
        - signature_params_parse
      functionUses:    1
      BranchProfiles:
        - Branch String:   'openssl_x509.c:1218,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_x509.c:1198,15'
          Dst:             d2i_X509
        - Src:             'openssl_x509.c:1203,6'
          Dst:             X509_get_version
        - Src:             'openssl_x509.c:1203,42'
          Dst:             X509_get_version
        - Src:             'openssl_x509.c:1210,39'
          Dst:             X509_get_subject_name
        - Src:             'openssl_x509.c:1210,18'
          Dst:             openssl_x509_name2id
        - Src:             'openssl_x509.c:1211,38'
          Dst:             X509_get_issuer_name
        - Src:             'openssl_x509.c:1211,17'
          Dst:             openssl_x509_name2id
        - Src:             'openssl_x509.c:1214,12'
          Dst:             X509_get_X509_PUBKEY
        - Src:             'openssl_x509.c:1213,7'
          Dst:             X509_PUBKEY_get0_param
        - Src:             'openssl_x509.c:1218,10'
          Dst:             openssl_asn1_known_oid
        - Src:             'openssl_x509.c:1227,29'
          Dst:             X509_get0_pubkey_bitstr
        - Src:             'openssl_x509.c:1227,6'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_x509.c:1233,12'
          Dst:             X509_get_X509_PUBKEY
        - Src:             'openssl_x509.c:1233,12'
          Dst:             i2d_X509_PUBKEY
        - Src:             'openssl_x509.c:1233,12'
          Dst:             chunk_create
        - Src:             'openssl_x509.c:1233,12'
          Dst:             X509_get_X509_PUBKEY
        - Src:             'openssl_x509.c:1233,12'
          Dst:             i2d_X509_PUBKEY
        - Src:             'openssl_x509.c:1244,12'
          Dst:             X509_get_X509_PUBKEY
        - Src:             'openssl_x509.c:1244,12'
          Dst:             i2d_X509_PUBKEY
        - Src:             'openssl_x509.c:1244,12'
          Dst:             chunk_create
        - Src:             'openssl_x509.c:1244,12'
          Dst:             X509_get_X509_PUBKEY
        - Src:             'openssl_x509.c:1244,12'
          Dst:             i2d_X509_PUBKEY
        - Src:             'openssl_x509.c:1259,41'
          Dst:             X509_get0_notBefore
        - Src:             'openssl_x509.c:1259,20'
          Dst:             openssl_asn1_to_time
        - Src:             'openssl_x509.c:1260,40'
          Dst:             X509_get0_notAfter
        - Src:             'openssl_x509.c:1260,19'
          Dst:             openssl_asn1_to_time
        - Src:             'openssl_x509.c:1264,2'
          Dst:             X509_get0_signature
        - Src:             'openssl_x509.c:1265,15'
          Dst:             i2d_X509_ALGOR
        - Src:             'openssl_x509.c:1265,15'
          Dst:             chunk_create
        - Src:             'openssl_x509.c:1265,15'
          Dst:             i2d_X509_ALGOR
        - Src:             'openssl_x509.c:1266,8'
          Dst:             X509_get0_tbs_sigalg
        - Src:             'openssl_x509.c:1267,19'
          Dst:             i2d_X509_ALGOR
        - Src:             'openssl_x509.c:1267,19'
          Dst:             chunk_create
        - Src:             'openssl_x509.c:1267,19'
          Dst:             i2d_X509_ALGOR
        - Src:             'openssl_x509.c:1268,7'
          Dst:             chunk_equals
        - Src:             'openssl_x509.c:1277,7'
          Dst:             signature_params_parse
        - Src:             'openssl_x509.c:1285,7'
          Dst:             parse_extensions
        - Src:             'openssl_x509.c:1298,6'
          Dst:             issued_by
    - functionName:    d2i_X509
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_get_version
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_get_subject_name
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_get_issuer_name
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_get_X509_PUBKEY
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_PUBKEY_get0_param
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_get0_pubkey_bitstr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i2d_X509_PUBKEY
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_get0_notBefore
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_get0_notAfter
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i2d_X509_ALGOR
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_get0_tbs_sigalg
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_x509_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x509.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1306
      functionLinenumberEnd: 1343
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          181
      EdgeCount:       33
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse_certificate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_x509.c:1312,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_x509.c:1332,10'
          Dst:             create_empty
        - Src:             'openssl_x509.c:1333,20'
          Dst:             chunk_create_clone
        - Src:             'openssl_x509.c:1335,7'
          Dst:             parse_certificate
        - Src:             'openssl_x509.c:1340,3'
          Dst:             destroy
    - functionName:    set_seed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_PKEY_free
        - EVP_PKEY_new_raw_private_key
        - map_key_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x_diffie_hellman.c:122,2'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_x_diffie_hellman.c:123,43'
          Dst:             map_key_type
        - Src:             'openssl_x_diffie_hellman.c:123,14'
          Dst:             EVP_PKEY_new_raw_private_key
    - functionName:    map_key_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          27
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'openssl_x_diffie_hellman.c:65,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    EVP_PKEY_new_raw_private_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_PKEY_free
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x_diffie_hellman.c:157,2'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_x_diffie_hellman.c:158,2'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_x_diffie_hellman.c:159,2'
          Dst:             chunk_clear
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_method
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          83
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - EVP_PKEY_get_raw_public_key
        - chunk_create
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x_diffie_hellman.c:102,7'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'openssl_x_diffie_hellman.c:107,11'
          Dst:             chunk_create
        - Src:             'openssl_x_diffie_hellman.c:109,7'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'openssl_x_diffie_hellman.c:111,3'
          Dst:             chunk_free
    - functionName:    EVP_PKEY_get_raw_public_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_PKEY_free
        - EVP_PKEY_new_raw_public_key
        - chunk_clear
        - key_exchange_check_pubkey_len
        - map_key_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x_diffie_hellman.c:79,7'
          Dst:             key_exchange_check_pubkey_len
        - Src:             'openssl_x_diffie_hellman.c:84,2'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_x_diffie_hellman.c:85,42'
          Dst:             map_key_type
        - Src:             'openssl_x_diffie_hellman.c:85,14'
          Dst:             EVP_PKEY_new_raw_public_key
        - Src:             'openssl_x_diffie_hellman.c:93,2'
          Dst:             chunk_clear
    - functionName:    EVP_PKEY_new_raw_public_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_shared_secret
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create_clone
        - openssl_compute_shared_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_x_diffie_hellman.c:138,4'
          Dst:             openssl_compute_shared_key
        - Src:             'openssl_x_diffie_hellman.c:144,12'
          Dst:             chunk_create_clone
    - functionName:    openssl_x_diffie_hellman_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_x_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          122
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new_id
        - EVP_PKEY_keygen
        - EVP_PKEY_keygen_init
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_x_diffie_hellman.c:172,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_x_diffie_hellman.c:175,10'
          Dst:             EVP_PKEY_CTX_new_id
        - Src:             'openssl_x_diffie_hellman.c:178,10'
          Dst:             EVP_PKEY_CTX_new_id
        - Src:             'openssl_x_diffie_hellman.c:185,3'
          Dst:             EVP_PKEY_keygen_init
        - Src:             'openssl_x_diffie_hellman.c:186,3'
          Dst:             EVP_PKEY_keygen
        - Src:             'openssl_x_diffie_hellman.c:190,3'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl_x_diffie_hellman.c:193,2'
          Dst:             EVP_PKEY_CTX_free
    - functionName:    EVP_PKEY_CTX_new_id
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_keygen_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_keygen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_MD_CTX_free
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_xof.c:149,2'
          Dst:             chunk_clear
        - Src:             'openssl_xof.c:151,2'
          Dst:             EVP_MD_CTX_free
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_seed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_clear
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_xof.c:138,2'
          Dst:             chunk_clear
        - Src:             'openssl_xof.c:139,15'
          Dst:             chunk_create_clone
    - functionName:    get_seed_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_MD_block_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_xof.c:129,29'
          Dst:             EVP_MD_block_size
    - functionName:    EVP_MD_block_size
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_block_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_MD_block_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_xof.c:123,9'
          Dst:             EVP_MD_block_size
    - functionName:    allocate_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - get_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_xof.c:116,11'
          Dst:             chunk_create
        - Src:             'openssl_xof.c:117,9'
          Dst:             get_bytes
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          104
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - EVP_DigestFinalXOF
        - chunk_clear
        - chunk_create
        - init_md
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_xof.c:98,6'
          Dst:             init_md
        - Src:             'openssl_xof.c:100,10'
          Dst:             chunk_create
        - Src:             'openssl_xof.c:101,7'
          Dst:             EVP_DigestFinalXOF
        - Src:             'openssl_xof.c:103,4'
          Dst:             memcpy_noop
        - Src:             'openssl_xof.c:107,3'
          Dst:             chunk_clear
    - functionName:    init_md
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_DigestInit_ex
        - EVP_DigestUpdate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_xof.c:77,9'
          Dst:             EVP_DigestInit_ex
        - Src:             'openssl_xof.c:78,6'
          Dst:             EVP_DigestUpdate
    - functionName:    EVP_DigestFinalXOF
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestInit_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_xof_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - EVP_MD_CTX_new
        - EVP_shake128
        - EVP_shake256
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_xof.c:163,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_xof.c:166,9'
          Dst:             EVP_shake128
        - Src:             'openssl_xof.c:169,9'
          Dst:             EVP_shake256
        - Src:             'openssl_xof.c:175,2'
          Dst:             EVP_MD_CTX_new
    - functionName:    EVP_shake128
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_shake256
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mgf1_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_hash_seed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mgf1_xof.c:224,2'
          Dst:             chunk_clear
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_seed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          162
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_clear
        - chunk_create
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mgf1_xof.c:192,2'
          Dst:             chunk_clear
        - Src:             'mgf1_xof.c:193,16'
          Dst:             chunk_create
        - Src:             'mgf1_xof.c:214,3'
          Dst:             memcpy_noop
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_seed_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_block_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - chunk_free
        - get_bytes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mgf1_xof.c:155,11'
          Dst:             chunk_create
        - Src:             'mgf1_xof.c:157,7'
          Dst:             get_bytes
        - Src:             'mgf1_xof.c:159,3'
          Dst:             chunk_free
    - functionName:    get_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          171
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - get_next_block
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mgf1_xof.c:121,3'
          Dst:             memcpy_noop
        - Src:             'mgf1_xof.c:130,8'
          Dst:             get_next_block
        - Src:             'mgf1_xof.c:141,8'
          Dst:             get_next_block
        - Src:             'mgf1_xof.c:145,3'
          Dst:             memcpy_noop
    - functionName:    get_next_block
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          82
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - htoun32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'mgf1_xof.c:95,2'
          Dst:             htoun32
    - functionName:    htoun32
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/../../../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/byteorder.h:132,9'
          Dst:             htonl
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mgf1_xof_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/mgf1/mgf1_xof.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          162
      EdgeCount:       17
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'mgf1_xof.c:243,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_features
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_name
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drbg_plugin_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_plugin.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/rngs/rng_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/rngs/rng_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          92
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - chunk_skip
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/rngs/rng_tester.c:58,11'
          Dst:             chunk_create
        - Src:             'crypto/rngs/rng_tester.c:59,2'
          Dst:             memcpy_noop
        - Src:             'crypto/rngs/rng_tester.c:60,18'
          Dst:             chunk_skip
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/rngs/rng_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_skip
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/rngs/rng_tester.c:44,2'
          Dst:             memcpy_noop
        - Src:             'crypto/rngs/rng_tester.c:45,18'
          Dst:             chunk_skip
    - functionName:    rng_tester_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/rngs/rng_tester.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    private_key_has_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/keys/private_key.c:73,4'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    private_key_belongs_to
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          79
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/keys/private_key.c:56,11'
          Dst:             chunk_equals
    - functionName:    private_key_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/keys/private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          88
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_equals
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/keys/private_key.c:37,11'
          Dst:             chunk_equals
    - functionName:    crl_is_newer
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/certificates/crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          91
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - certificate_is_newer
        - chunk_compare
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/certificates/crl.c:48,11'
          Dst:             chunk_compare
        - Src:             'credentials/certificates/crl.c:55,11'
          Dst:             certificate_is_newer
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/ocsp_response_wrapper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerator_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/ocsp_response_wrapper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/ocsp_response_wrapper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          249
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/ocsp_response_wrapper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          80
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ocsp_response_wrapper_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/sets/ocsp_response_wrapper.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    metadata_set_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - array_destroy_function
        - destroy_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_set.c:171,3'
          Dst:             array_destroy_function
        - Src:             'metadata/metadata_set.c:171,3'
          Dst:             destroy_entry
    - functionName:    destroy_entry
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    metadata_set_clone
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          107
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_count
        - array_create
        - array_get
        - array_insert
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_set.c:149,2'
          Dst:             array_count
        - Src:             'metadata/metadata_set.c:149,2'
          Dst:             array_create
        - Src:             'metadata/metadata_set.c:152,18'
          Dst:             array_count
        - Src:             'metadata/metadata_set.c:154,3'
          Dst:             array_get
        - Src:             'metadata/metadata_set.c:155,3'
          Dst:             strdup
        - Src:             'metadata/metadata_set.c:159,3'
          Dst:             array_insert
    - functionName:    metadata_set_get
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - array_bsearch
        - entry_find
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_set.c:128,13'
          Dst:             array_bsearch
        - Src:             'metadata/metadata_set.c:128,13'
          Dst:             entry_find
    - functionName:    entry_find
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - entry_sort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_set.c:63,9'
          Dst:             entry_sort
    - functionName:    entry_sort
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_set.c:55,9'
          Dst:             strcmp
    - functionName:    metadata_set_put
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          127
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - array_bsearch
        - array_insert_create
        - array_remove
        - array_sort
        - destroy_entry
        - entry_find
        - entry_sort
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'metadata/metadata_set.c:94,8'
          Dst:             array_bsearch
        - Src:             'metadata/metadata_set.c:94,8'
          Dst:             entry_find
        - Src:             'metadata/metadata_set.c:104,4'
          Dst:             array_remove
        - Src:             'metadata/metadata_set.c:105,4'
          Dst:             destroy_entry
        - Src:             'metadata/metadata_set.c:110,3'
          Dst:             strdup
        - Src:             'metadata/metadata_set.c:114,3'
          Dst:             array_insert_create
        - Src:             'metadata/metadata_set.c:115,3'
          Dst:             array_sort
        - Src:             'metadata/metadata_set.c:115,3'
          Dst:             entry_sort
    - functionName:    metadata_set_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/metadata/metadata_set.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - close
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream.c:263,2'
          Dst:             close
    - functionName:    get_file
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - close
        - dup
        - fdopen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream.c:246,7'
          Dst:             dup
        - Src:             'networking/streams/stream.c:251,9'
          Dst:             fdopen
        - Src:             'networking/streams/stream.c:254,3'
          Dst:             close
    - functionName:    dup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    on_write
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_watcher
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream.c:236,2'
          Dst:             add_watcher
    - functionName:    add_watcher
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - watch
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream.c:212,3'
          Dst:             watch
    - functionName:    watch
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          98
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'networking/streams/stream.c:171,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    write_all
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          66
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - write_
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream.c:147,9'
          Dst:             write_
        - Src:             'networking/streams/stream.c:154,4'
          Dst:             __errno_location
    - functionName:    write_
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          88
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream.c:121,10'
          Dst:             send
        - Src:             'networking/streams/stream.c:125,10'
          Dst:             send
        - Src:             'networking/streams/stream.c:126,21'
          Dst:             __errno_location
        - Src:             'networking/streams/stream.c:129,5'
          Dst:             __errno_location
        - Src:             'networking/streams/stream.c:132,20'
          Dst:             __errno_location
    - functionName:    on_read
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_watcher
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream.c:225,2'
          Dst:             add_watcher
    - functionName:    read_all
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          66
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - read_
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream.c:96,9'
          Dst:             read_
        - Src:             'networking/streams/stream.c:103,4'
          Dst:             __errno_location
    - functionName:    read_
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          88
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - recv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream.c:70,10'
          Dst:             recv
        - Src:             'networking/streams/stream.c:74,10'
          Dst:             recv
        - Src:             'networking/streams/stream.c:75,21'
          Dst:             __errno_location
        - Src:             'networking/streams/stream.c:78,5'
          Dst:             __errno_location
        - Src:             'networking/streams/stream.c:81,20'
          Dst:             __errno_location
    - functionName:    stream_create_from_fd
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          81
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - destroy_service
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_service.c:314,2'
          Dst:             destroy_service
    - functionName:    destroy_service
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - close
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_service.c:102,3'
          Dst:             close
    - functionName:    _cb_reduce_running
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          56
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy_async_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          116
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - close
        - destroy_service
        - watch
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_service.c:139,3'
          Dst:             watch
        - Src:             'networking/streams/stream_service.c:144,2'
          Dst:             destroy_service
        - Src:             'networking/streams/stream_service.c:148,3'
          Dst:             close
    - functionName:    watch
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          159
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - accept
        - accept_async
        - callback_job_cancel_thread
        - callback_job_create_with_prio
        - close
        - destroy_async_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_service.c:229,2'
          Dst:             accept
        - Src:             'networking/streams/stream_service.c:248,12'
          Dst:             callback_job_create_with_prio
        - Src:             'networking/streams/stream_service.c:248,12'
          Dst:             accept_async
        - Src:             'networking/streams/stream_service.c:248,12'
          Dst:             destroy_async_data
        - Src:             'networking/streams/stream_service.c:248,12'
          Dst:             callback_job_cancel_thread
        - Src:             'networking/streams/stream_service.c:256,4'
          Dst:             close
    - functionName:    accept
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    accept_async
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          136
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - set_blocking
        - stream_create_from_fd
        - thread_cleanup_pop
        - thread_cleanup_push
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_service.c:202,7'
          Dst:             set_blocking
        - Src:             'networking/streams/stream_service.c:208,11'
          Dst:             stream_create_from_fd
        - Src:             'networking/streams/stream_service.c:213,3'
          Dst:             thread_cleanup_push
        - Src:             'networking/streams/stream_service.c:214,3'
          Dst:             thread_cleanup_push
        - Src:             'networking/streams/stream_service.c:215,3'
          Dst:             thread_cleanup_pop
        - Src:             'networking/streams/stream_service.c:216,3'
          Dst:             thread_cleanup_pop
    - functionName:    set_blocking
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - fcntl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_service.c:162,14'
          Dst:             fcntl
        - Src:             'networking/streams/stream_service.c:164,6'
          Dst:             fcntl
    - functionName:    on_accept
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          171
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - watch
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_service.c:296,3'
          Dst:             watch
    - functionName:    stream_service_create_from_fd
      functionSourceFile: '/src/strongswan/src/libstrongswan/networking/streams/stream_service.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - close
        - condvar_create
        - mutex_create
        - set_blocking
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'networking/streams/stream_service.c:324,7'
          Dst:             set_blocking
        - Src:             'networking/streams/stream_service.c:326,3'
          Dst:             close
        - Src:             'networking/streams/stream_service.c:330,2'
          Dst:             mutex_create
        - Src:             'networking/streams/stream_service.c:330,2'
          Dst:             condvar_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memwipe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'rc2_crypter.c:312,2'
          Dst:             memwipe
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          234
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - memwipe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'rc2_crypter.c:305,2'
          Dst:             memwipe
    - functionName:    get_key_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_iv_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_block_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_block
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          431
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          172
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - decrypt_block
        - memcpy_noop
        - memxor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'rc2_crypter.c:200,16'
          Dst:             chunk_create
        - Src:             'rc2_crypter.c:210,4'
          Dst:             memcpy_noop
        - Src:             'rc2_crypter.c:212,3'
          Dst:             decrypt_block
        - Src:             'rc2_crypter.c:218,3'
          Dst:             memxor
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypt_block
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          423
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          152
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - encrypt_block
        - memcpy_noop
        - memxor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'rc2_crypter.c:238,16'
          Dst:             chunk_create
        - Src:             'rc2_crypter.c:247,4'
          Dst:             memcpy_noop
        - Src:             'rc2_crypter.c:249,3'
          Dst:             memxor
        - Src:             'rc2_crypter.c:250,3'
          Dst:             encrypt_block
    - functionName:    rc2_crypter_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/rc2/rc2_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          196
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_hash_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - SHA1Final
        - SHA1Update
        - reset
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1_hasher.c:207,2'
          Dst:             SHA1Update
        - Src:             'sha1_hasher.c:213,3'
          Dst:             SHA1Final
        - Src:             'sha1_hasher.c:214,3'
          Dst:             reset
    - functionName:    SHA1Update
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          133
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - SHA1Transform
        - memcpy_noop
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1_hasher.c:134,3'
          Dst:             memcpy_noop
        - Src:             'sha1_hasher.c:135,3'
          Dst:             SHA1Transform
        - Src:             'sha1_hasher.c:138,7'
          Dst:             SHA1Transform
        - Src:             'sha1_hasher.c:146,2'
          Dst:             memcpy_noop
    - functionName:    SHA1Final
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          110
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - SHA1Update
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1_hasher.c:165,2'
          Dst:             SHA1Update
        - Src:             'sha1_hasher.c:169,3'
          Dst:             SHA1Update
        - Src:             'sha1_hasher.c:171,2'
          Dst:             SHA1Update
    - functionName:    reset
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          34
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SHA1Transform
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          4649
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
        - memset_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1_hasher.c:77,2'
          Dst:             memcpy_noop
        - Src:             'sha1_hasher.c:114,2'
          Dst:             memset_noop
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - SHA1Final
        - SHA1Update
        - reset
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1_hasher.c:195,2'
          Dst:             SHA1Update
        - Src:             'sha1_hasher.c:198,3'
          Dst:             SHA1Final
        - Src:             'sha1_hasher.c:199,3'
          Dst:             reset
    - functionName:    sha1_hasher_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha1/sha1_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - reset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha1_hasher.c:256,2'
          Dst:             reset
    - functionName:    get_hash_size512
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_hash512
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - get_hash512
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:555,28'
          Dst:             chunk_create
        - Src:             'sha2_hasher.c:557,9'
          Dst:             get_hash512
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_hash512
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - reset512
        - sha512_final
        - sha512_write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:503,2'
          Dst:             sha512_write
        - Src:             'sha2_hasher.c:506,3'
          Dst:             sha512_final
        - Src:             'sha2_hasher.c:507,3'
          Dst:             reset512
    - functionName:    sha512_write
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          109
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - sha512_transform
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:353,5'
          Dst:             sha512_transform
        - Src:             'sha2_hasher.c:363,4'
          Dst:             sha512_transform
    - functionName:    sha512_final
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 424
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          252
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - sha512_transform
        - sha512_write
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:382,2'
          Dst:             sha512_write
        - Src:             'sha2_hasher.c:388,3'
          Dst:             sha512_write
        - Src:             'sha2_hasher.c:408,2'
          Dst:             sha512_transform
    - functionName:    reset512
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:457,2'
          Dst:             memcpy_noop
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sha512_transform
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          377
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_hash_size384
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 574
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_hash384
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - get_hash384
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:543,28'
          Dst:             chunk_create
        - Src:             'sha2_hasher.c:545,9'
          Dst:             get_hash384
    - functionName:    get_hash384
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 490
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - reset384
        - sha512_final
        - sha512_write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:491,2'
          Dst:             sha512_write
        - Src:             'sha2_hasher.c:494,3'
          Dst:             sha512_final
        - Src:             'sha2_hasher.c:495,3'
          Dst:             reset384
    - functionName:    reset384
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:447,2'
          Dst:             memcpy_noop
    - functionName:    get_hash_size256
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_hash256
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 526
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - get_hash256
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:531,28'
          Dst:             chunk_create
        - Src:             'sha2_hasher.c:533,9'
          Dst:             get_hash256
    - functionName:    get_hash256
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - reset256
        - sha256_final
        - sha256_write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:479,2'
          Dst:             sha256_write
        - Src:             'sha2_hasher.c:482,3'
          Dst:             sha256_final
        - Src:             'sha2_hasher.c:483,3'
          Dst:             reset256
    - functionName:    sha256_write
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          109
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - sha256_transform
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:209,5'
          Dst:             sha256_transform
        - Src:             'sha2_hasher.c:219,4'
          Dst:             sha256_transform
    - functionName:    sha256_final
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          162
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - sha256_transform
        - sha256_write
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:237,2'
          Dst:             sha256_write
        - Src:             'sha2_hasher.c:243,3'
          Dst:             sha256_write
        - Src:             'sha2_hasher.c:255,2'
          Dst:             sha256_transform
    - functionName:    reset256
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:438,2'
          Dst:             memcpy_noop
    - functionName:    sha256_transform
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          337
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 588
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_hash_size224
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_hash224
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 514
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - get_hash224
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:519,28'
          Dst:             chunk_create
        - Src:             'sha2_hasher.c:521,9'
          Dst:             get_hash224
    - functionName:    get_hash224
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - reset224
        - sha256_final
        - sha256_write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:467,2'
          Dst:             sha256_write
        - Src:             'sha2_hasher.c:470,3'
          Dst:             sha256_final
        - Src:             'sha2_hasher.c:471,3'
          Dst:             reset224
    - functionName:    reset224
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcpy_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sha2_hasher.c:429,2'
          Dst:             memcpy_noop
    - functionName:    sha2_hasher_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha2/sha2_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          200
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - reset224
        - reset256
        - reset384
        - reset512
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sha2_hasher.c:595,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sha2_hasher.c:612,4'
          Dst:             reset224
        - Src:             'sha2_hasher.c:630,4'
          Dst:             reset256
        - Src:             'sha2_hasher.c:648,4'
          Dst:             reset384
        - Src:             'sha2_hasher.c:666,4'
          Dst:             reset512
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reset
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          112
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - get_hash_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3_hasher.c:96,20'
          Dst:             get_hash_size
        - Src:             'sha3_hasher.c:96,20'
          Dst:             chunk_create
    - functionName:    get_hash_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'sha3_hasher.c:56,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          82
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_hash_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3_hasher.c:80,39'
          Dst:             get_hash_size
    - functionName:    sha3_hasher_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          102
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - get_hash_size
        - sha3_keccak_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sha3_hasher.c:119,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sha3_hasher.c:143,38'
          Dst:             get_hash_size
        - Src:             'sha3_hasher.c:143,17'
          Dst:             sha3_keccak_create
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_keccak.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memwipe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3_keccak.c:468,2'
          Dst:             memwipe
    - functionName:    squeeze
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_keccak.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          116
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - keccak_f1600_state_permute
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3_keccak.c:454,4'
          Dst:             keccak_f1600_state_permute
        - Src:             'sha3_keccak.c:458,3'
          Dst:             memcpy_noop
    - functionName:    keccak_f1600_state_permute
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_keccak.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          1061
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __uint64_identity
      functionSourceFile: '/usr/include/x86_64-linux-gnu/bits/uintn-identity.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    finalize
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_keccak.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          141
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __uint64_identity
        - keccak_f1600_state_permute
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3_keccak.c:424,3'
          Dst:             memset_noop
        - Src:             'sha3_keccak.c:438,29'
          Dst:             __uint64_identity
        - Src:             'sha3_keccak.c:441,2'
          Dst:             keccak_f1600_state_permute
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    absorb
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_keccak.c'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          164
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - keccak_f1600_state_permute
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3_keccak.c:389,3'
          Dst:             memcpy_noop
        - Src:             'sha3_keccak.c:402,4'
          Dst:             keccak_f1600_state_permute
    - functionName:    reset
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_keccak.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'sha3_keccak.c:371,5'
          Dst:             memset_noop
    - functionName:    get_rate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_keccak.c'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sha3_keccak_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sha3/sha3_keccak.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 501
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    set_seed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __gmpz_import
        - __gmpz_powm_sec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_diffie_hellman.c:143,2'
          Dst:             __gmpz_import
        - Src:             'gmp_diffie_hellman.c:144,2'
          Dst:             __gmpz_powm_sec
    - functionName:    get_method
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __gmpz_export
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_diffie_hellman.c:130,15'
          Dst:             __gmpz_export
    - functionName:    set_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          84
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - __gmpz_clear
        - __gmpz_cmp
        - __gmpz_cmp_ui
        - __gmpz_import
        - __gmpz_init
        - __gmpz_sub_ui
        - key_exchange_check_pubkey_len
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_diffie_hellman.c:92,7'
          Dst:             key_exchange_check_pubkey_len
        - Src:             'gmp_diffie_hellman.c:97,2'
          Dst:             __gmpz_init
        - Src:             'gmp_diffie_hellman.c:98,2'
          Dst:             __gmpz_sub_ui
        - Src:             'gmp_diffie_hellman.c:102,2'
          Dst:             __gmpz_import
        - Src:             'gmp_diffie_hellman.c:114,6'
          Dst:             __gmpz_cmp_ui
        - Src:             'gmp_diffie_hellman.c:115,3'
          Dst:             __gmpz_cmp
        - Src:             'gmp_diffie_hellman.c:119,3'
          Dst:             __gmpz_clear
        - Src:             'gmp_diffie_hellman.c:122,2'
          Dst:             __gmpz_clear
    - functionName:    get_shared_secret
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __gmpz_export
        - __gmpz_powm_sec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_diffie_hellman.c:189,3'
          Dst:             __gmpz_powm_sec
        - Src:             'gmp_diffie_hellman.c:193,16'
          Dst:             __gmpz_export
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __gmpz_clear
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_diffie_hellman.c:210,2'
          Dst:             __gmpz_clear
        - Src:             'gmp_diffie_hellman.c:211,2'
          Dst:             __gmpz_clear
        - Src:             'gmp_diffie_hellman.c:212,2'
          Dst:             __gmpz_clear
        - Src:             'gmp_diffie_hellman.c:213,2'
          Dst:             __gmpz_clear
        - Src:             'gmp_diffie_hellman.c:214,2'
          Dst:             __gmpz_clear
        - Src:             'gmp_diffie_hellman.c:215,2'
          Dst:             __gmpz_clear
    - functionName:    gmp_diffie_hellman_create_custom
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - create_generic
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_diffie_hellman.c:315,10'
          Dst:             create_generic
    - functionName:    create_generic
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - int
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          229
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - __gmpz_import
        - __gmpz_init
        - __gmpz_powm_sec
        - chunk_clear
        - destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_diffie_hellman.c:247,2'
          Dst:             __gmpz_init
        - Src:             'gmp_diffie_hellman.c:248,2'
          Dst:             __gmpz_init
        - Src:             'gmp_diffie_hellman.c:249,2'
          Dst:             __gmpz_init
        - Src:             'gmp_diffie_hellman.c:250,2'
          Dst:             __gmpz_init
        - Src:             'gmp_diffie_hellman.c:251,2'
          Dst:             __gmpz_init
        - Src:             'gmp_diffie_hellman.c:252,2'
          Dst:             __gmpz_init
        - Src:             'gmp_diffie_hellman.c:253,2'
          Dst:             __gmpz_import
        - Src:             'gmp_diffie_hellman.c:254,2'
          Dst:             __gmpz_import
        - Src:             'gmp_diffie_hellman.c:261,3'
          Dst:             destroy
        - Src:             'gmp_diffie_hellman.c:268,3'
          Dst:             destroy
        - Src:             'gmp_diffie_hellman.c:278,2'
          Dst:             __gmpz_import
        - Src:             'gmp_diffie_hellman.c:279,2'
          Dst:             chunk_clear
        - Src:             'gmp_diffie_hellman.c:283,2'
          Dst:             __gmpz_powm_sec
    - functionName:    gmp_diffie_hellman_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/gmp/gmp_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - create_generic
        - diffie_hellman_get_params
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'gmp_diffie_hellman.c:295,11'
          Dst:             diffie_hellman_get_params
        - Src:             'gmp_diffie_hellman.c:300,9'
          Dst:             create_generic
    - functionName:    allocate_nonce
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/nonce/nonce_nonceg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_nonce
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/nonce/nonce_nonceg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/nonce/nonce_nonceg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nonce_nonceg_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/nonce/nonce_nonceg.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'nonce_nonceg.c:80,3'
          Dst:             destroy
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hmac.c:135,2'
          Dst:             chunk_clear
        - Src:             'hmac.c:136,2'
          Dst:             chunk_clear
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          189
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - memcpy_noop
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hmac.c:102,2'
          Dst:             memset_noop
        - Src:             'hmac.c:116,3'
          Dst:             memcpy_noop
    - functionName:    get_mac_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_mac
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          170
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmac_signer_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hasher_algorithm_from_integrity
        - hmac_create
        - mac_signer_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hmac.c:213,21'
          Dst:             hasher_algorithm_from_integrity
        - Src:             'hmac.c:213,9'
          Dst:             hmac_create
        - Src:             'hmac.c:216,10'
          Dst:             mac_signer_create
    - functionName:    hmac_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          155
      EdgeCount:       15
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'hmac.c:157,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hmac_prf_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/hmac/hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hasher_algorithm_from_prf
        - hmac_create
        - mac_prf_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hmac.c:197,21'
          Dst:             hasher_algorithm_from_prf
        - Src:             'hmac.c:197,9'
          Dst:             hmac_create
        - Src:             'hmac.c:200,10'
          Dst:             mac_prf_create
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_bytes_prf_plus
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          228
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - memcpy_noop
        - memwipe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kdf_kdf.c:71,10'
          Dst:             chunk_create
        - Src:             'kdf_kdf.c:81,37'
          Dst:             chunk_create
        - Src:             'kdf_kdf.c:88,3'
          Dst:             memcpy_noop
        - Src:             'kdf_kdf.c:89,14'
          Dst:             chunk_create
        - Src:             'kdf_kdf.c:95,2'
          Dst:             memwipe
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kdf_kdf.c:169,2'
          Dst:             chunk_clear
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_param
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          174
      EdgeCount:       25
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_clear
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kdf_kdf.c:136,3'
          Branch Sides:    []
        - Branch String:   'kdf_kdf.c:149,2'
          Branch Sides:    []
      Callsites:
        - Src:             'kdf_kdf.c:157,4'
          Dst:             chunk_clear
        - Src:             'kdf_kdf.c:158,17'
          Dst:             chunk_create_clone
    - functionName:    allocate_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - chunk_free
        - get_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kdf_kdf.c:114,24'
          Dst:             get_length
        - Src:             'kdf_kdf.c:117,11'
          Dst:             chunk_create
        - Src:             'kdf_kdf.c:121,3'
          Dst:             chunk_free
    - functionName:    get_length
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kdf_kdf.c:102,17'
          Dst:             get_length
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kdf_kdf_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/kdf/kdf_kdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          153
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          58
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memwipe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'cmac.c:304,2'
          Dst:             memwipe
        - Src:             'cmac.c:306,2'
          Dst:             memwipe
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    bit_shift
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    derive_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          89
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - bit_shift
        - chunk_create
        - memset_noop
        - memxor
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cmac.c:234,8'
          Dst:             chunk_create
        - Src:             'cmac.c:235,3'
          Dst:             memset_noop
        - Src:             'cmac.c:237,3'
          Dst:             bit_shift
        - Src:             'cmac.c:238,3'
          Dst:             memxor
        - Src:             'cmac.c:242,3'
          Dst:             bit_shift
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          268
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - chunk_create
        - derive_key
        - get_mac
        - memcpy_noop
        - memset_noop
        - memwipe
        - set_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cmac.c:251,2'
          Dst:             memset_noop
        - Src:             'cmac.c:261,13'
          Dst:             chunk_create
        - Src:             'cmac.c:262,3'
          Dst:             memset_noop
        - Src:             'cmac.c:263,8'
          Dst:             set_key
        - Src:             'cmac.c:264,5'
          Dst:             get_mac
        - Src:             'cmac.c:282,7'
          Dst:             chunk_create
        - Src:             'cmac.c:283,2'
          Dst:             memset_noop
        - Src:             'cmac.c:284,6'
          Dst:             chunk_create
        - Src:             'cmac.c:285,2'
          Dst:             memset_noop
        - Src:             'cmac.c:291,2'
          Dst:             derive_key
        - Src:             'cmac.c:292,2'
          Dst:             memcpy_noop
        - Src:             'cmac.c:293,2'
          Dst:             derive_key
        - Src:             'cmac.c:294,2'
          Dst:             memcpy_noop
        - Src:             'cmac.c:295,2'
          Dst:             memwipe
    - functionName:    get_mac
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - final
        - update
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cmac.c:186,7'
          Dst:             update
        - Src:             'cmac.c:193,10'
          Dst:             final
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          302
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
        - chunk_skip
        - memcpy_noop
        - memset_noop
        - memxor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cmac.c:85,3'
          Dst:             memcpy_noop
        - Src:             'cmac.c:90,7'
          Dst:             chunk_create
        - Src:             'cmac.c:91,2'
          Dst:             memset_noop
        - Src:             'cmac.c:100,2'
          Dst:             memcpy_noop
        - Src:             'cmac.c:102,9'
          Dst:             chunk_skip
        - Src:             'cmac.c:103,2'
          Dst:             memxor
        - Src:             'cmac.c:104,33'
          Dst:             chunk_create
        - Src:             'cmac.c:112,3'
          Dst:             memcpy_noop
        - Src:             'cmac.c:113,10'
          Dst:             chunk_skip
        - Src:             'cmac.c:114,3'
          Dst:             memxor
        - Src:             'cmac.c:115,34'
          Dst:             chunk_create
        - Src:             'cmac.c:122,2'
          Dst:             memcpy_noop
    - functionName:    final
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          219
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
        - memcpy_noop
        - memset_noop
        - memxor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cmac.c:135,7'
          Dst:             chunk_create
        - Src:             'cmac.c:136,2'
          Dst:             memset_noop
        - Src:             'cmac.c:145,3'
          Dst:             memxor
        - Src:             'cmac.c:162,3'
          Dst:             memxor
        - Src:             'cmac.c:167,2'
          Dst:             memxor
        - Src:             'cmac.c:168,33'
          Dst:             chunk_create
        - Src:             'cmac.c:173,2'
          Dst:             memcpy_noop
        - Src:             'cmac.c:176,2'
          Dst:             memset_noop
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_mac_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmac_signer_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - cmac_create
        - mac_signer_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'cmac.c:384,2'
          Branch Sides:    []
      Callsites:
        - Src:             'cmac.c:387,11'
          Dst:             cmac_create
        - Src:             'cmac.c:395,10'
          Dst:             mac_signer_create
    - functionName:    cmac_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          136
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - memset_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cmac.c:349,2'
          Dst:             memset_noop
    - functionName:    cmac_prf_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/cmac/cmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - cmac_create
        - mac_prf_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'cmac.c:361,2'
          Branch Sides:    []
      Callsites:
        - Src:             'cmac.c:364,11'
          Dst:             cmac_create
        - Src:             'cmac.c:371,10'
          Dst:             mac_prf_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          58
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memwipe
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'xcbc.c:282,2'
          Dst:             memwipe
        - Src:             'xcbc.c:284,2'
          Dst:             memwipe
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          420
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - chunk_create
        - get_mac
        - memcpy_noop
        - memset_noop
        - memwipe
        - set_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'xcbc.c:223,2'
          Dst:             memset_noop
        - Src:             'xcbc.c:234,16'
          Dst:             chunk_create
        - Src:             'xcbc.c:235,3'
          Dst:             memset_noop
        - Src:             'xcbc.c:236,3'
          Dst:             memcpy_noop
        - Src:             'xcbc.c:240,16'
          Dst:             chunk_create
        - Src:             'xcbc.c:241,3'
          Dst:             memset_noop
        - Src:             'xcbc.c:242,8'
          Dst:             set_key
        - Src:             'xcbc.c:243,5'
          Dst:             get_mac
        - Src:             'xcbc.c:249,7'
          Dst:             chunk_create
        - Src:             'xcbc.c:250,7'
          Dst:             chunk_create
        - Src:             'xcbc.c:251,2'
          Dst:             memset_noop
        - Src:             'xcbc.c:261,2'
          Dst:             memset_noop
        - Src:             'xcbc.c:262,2'
          Dst:             memset_noop
        - Src:             'xcbc.c:263,2'
          Dst:             memset_noop
        - Src:             'xcbc.c:266,32'
          Dst:             chunk_create
        - Src:             'xcbc.c:267,32'
          Dst:             chunk_create
        - Src:             'xcbc.c:271,3'
          Dst:             memwipe
        - Src:             'xcbc.c:274,2'
          Dst:             memwipe
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_mac
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - final
        - update
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'xcbc.c:200,7'
          Dst:             update
        - Src:             'xcbc.c:207,10'
          Dst:             final
    - functionName:    update
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          318
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - chunk_skip
        - memcpy_noop
        - memset_noop
        - memxor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'xcbc.c:96,3'
          Dst:             memcpy_noop
        - Src:             'xcbc.c:101,7'
          Dst:             chunk_create
        - Src:             'xcbc.c:102,2'
          Dst:             memset_noop
        - Src:             'xcbc.c:110,2'
          Dst:             memcpy_noop
        - Src:             'xcbc.c:112,9'
          Dst:             chunk_skip
        - Src:             'xcbc.c:113,2'
          Dst:             memxor
        - Src:             'xcbc.c:114,35'
          Dst:             chunk_create
        - Src:             'xcbc.c:122,3'
          Dst:             memcpy_noop
        - Src:             'xcbc.c:123,10'
          Dst:             chunk_skip
        - Src:             'xcbc.c:124,3'
          Dst:             memxor
        - Src:             'xcbc.c:125,36'
          Dst:             chunk_create
        - Src:             'xcbc.c:133,2'
          Dst:             memcpy_noop
    - functionName:    final
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          246
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - memcpy_noop
        - memset_noop
        - memxor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'xcbc.c:146,7'
          Dst:             chunk_create
        - Src:             'xcbc.c:147,2'
          Dst:             memset_noop
        - Src:             'xcbc.c:156,3'
          Dst:             memxor
        - Src:             'xcbc.c:157,3'
          Dst:             memxor
        - Src:             'xcbc.c:178,3'
          Dst:             memxor
        - Src:             'xcbc.c:179,3'
          Dst:             memxor
        - Src:             'xcbc.c:181,35'
          Dst:             chunk_create
        - Src:             'xcbc.c:186,2'
          Dst:             memcpy_noop
        - Src:             'xcbc.c:189,2'
          Dst:             memset_noop
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_mac_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xcbc_signer_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - mac_signer_create
        - xcbc_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'xcbc.c:366,2'
          Branch Sides:    []
      Callsites:
        - Src:             'xcbc.c:369,11'
          Dst:             xcbc_create
        - Src:             'xcbc.c:373,11'
          Dst:             xcbc_create
        - Src:             'xcbc.c:381,10'
          Dst:             mac_signer_create
    - functionName:    xcbc_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          138
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - memset_noop
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'xcbc.c:328,2'
          Dst:             memset_noop
    - functionName:    xcbc_prf_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/xcbc/xcbc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - mac_prf_create
        - xcbc_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'xcbc.c:340,2'
          Branch Sides:    []
      Callsites:
        - Src:             'xcbc.c:343,11'
          Dst:             xcbc_create
        - Src:             'xcbc.c:346,11'
          Dst:             xcbc_create
        - Src:             'xcbc.c:353,10'
          Dst:             mac_prf_create
    - functionName:    build_authorityKeyIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 735
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          234
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_build_known_oid
        - asn1_integer
        - asn1_simple_object
        - asn1_wrap
        - build_directoryName
        - chunk_create_clone
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:723,30'
          Dst:             chunk_create_clone
        - Src:             'x509_ac.c:724,20'
          Dst:             asn1_simple_object
        - Src:             'x509_ac.c:728,24'
          Dst:             build_directoryName
        - Src:             'x509_ac.c:730,30'
          Dst:             asn1_integer
        - Src:             'x509_ac.c:733,5'
          Dst:             asn1_build_known_oid
        - Src:             'x509_ac.c:735,6'
          Dst:             asn1_wrap
        - Src:             'x509_ac.c:734,5'
          Dst:             asn1_wrap
        - Src:             'x509_ac.c:732,9'
          Dst:             asn1_wrap
    - functionName:    build_directoryName
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 589
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_simple_object
        - asn1_wrap
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:591,5'
          Dst:             asn1_simple_object
        - Src:             'x509_ac.c:590,9'
          Dst:             asn1_wrap
    - functionName:    build_attribute_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 642
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          56
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_build_known_oid
        - asn1_wrap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:644,5'
          Dst:             asn1_build_known_oid
        - Src:             'x509_ac.c:645,5'
          Dst:             asn1_wrap
        - Src:             'x509_ac.c:643,9'
          Dst:             asn1_wrap
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_extensions
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_wrap
        - build_authorityKeyIdentifier
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:750,5'
          Dst:             build_authorityKeyIdentifier
        - Src:             'x509_ac.c:749,9'
          Dst:             asn1_wrap
    - functionName:    build_attributes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          212
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_build_object
        - asn1_simple_object
        - asn1_wrap
        - build_attribute_type
        - memcpy_noop
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_ac.c:677,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ac.c:669,8'
          Dst:             asn1_build_object
        - Src:             'x509_ac.c:691,10'
          Dst:             asn1_simple_object
        - Src:             'x509_ac.c:693,3'
          Dst:             memcpy_noop
        - Src:             'x509_ac.c:701,6'
          Dst:             asn1_wrap
        - Src:             'x509_ac.c:700,5'
          Dst:             build_attribute_type
        - Src:             'x509_ac.c:699,9'
          Dst:             asn1_wrap
    - functionName:    build_attr_cert_validity
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_from_time
        - asn1_wrap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:634,5'
          Dst:             asn1_from_time
        - Src:             'x509_ac.c:635,5'
          Dst:             asn1_from_time
        - Src:             'x509_ac.c:633,9'
          Dst:             asn1_wrap
    - functionName:    build_v2_form
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          65
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_wrap
        - build_directoryName
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:624,5'
          Dst:             build_directoryName
        - Src:             'x509_ac.c:623,9'
          Dst:             asn1_wrap
    - functionName:    build_holder
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          177
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_integer
        - asn1_wrap
        - build_directoryName
        - identification_create_from_encoding
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:602,23'
          Dst:             identification_create_from_encoding
        - Src:             'x509_ac.c:610,4'
          Dst:             build_directoryName
        - Src:             'x509_ac.c:611,4'
          Dst:             asn1_integer
        - Src:             'x509_ac.c:609,3'
          Dst:             asn1_wrap
        - Src:             'x509_ac.c:612,3'
          Dst:             build_directoryName
        - Src:             'x509_ac.c:608,9'
          Dst:             asn1_wrap
    - functionName:    build_attr_cert_info
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 758
      functionLinenumberEnd: 767
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          92
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_integer
        - asn1_wrap
        - build_attr_cert_validity
        - build_attributes
        - build_extensions
        - build_holder
        - build_v2_form
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:761,5'
          Dst:             build_holder
        - Src:             'x509_ac.c:762,5'
          Dst:             build_v2_form
        - Src:             'x509_ac.c:764,5'
          Dst:             asn1_integer
        - Src:             'x509_ac.c:765,5'
          Dst:             build_attr_cert_validity
        - Src:             'x509_ac.c:766,5'
          Dst:             build_attributes
        - Src:             'x509_ac.c:767,5'
          Dst:             build_extensions
        - Src:             'x509_ac.c:759,9'
          Dst:             asn1_wrap
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    group_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_roleSyntax
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       8
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_parser_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_ac.c:254,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ac.c:249,11'
          Dst:             asn1_parser_create
    - functionName:    parse_groups
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          151
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_parser_create
        - chunk_create_clone
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_ac.c:305,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ac.c:301,11'
          Dst:             asn1_parser_create
        - Src:             'x509_ac.c:319,3'
          Dst:             chunk_create_clone
    - functionName:    parse_directoryName
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          125
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - linked_list_create
        - x509_parse_generalNames
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:194,9'
          Dst:             linked_list_create
        - Src:             'x509_ac.c:195,7'
          Dst:             x509_parse_generalNames
    - functionName:    _cb_attr_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 840
      functionLinenumberEnd: 859
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          131
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_printable
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:850,5'
          Dst:             chunk_printable
    - functionName:    create_group_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 863
      functionLinenumberEnd: 866
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:864,9'
          Dst:             enumerator_create_filter
    - functionName:    get_authKeyIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 834
      functionLinenumberEnd: 835
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_holderIssuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 829
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_holderSerial
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 818
      functionLinenumberEnd: 824
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip_zero
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_serial
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 812
      functionLinenumberEnd: 813
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_skip_zero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:813,9'
          Dst:             chunk_skip_zero
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 982
      functionLinenumberEnd: 984
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1017
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          88
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:1027,10'
          Dst:             chunk_equals
        - Src:             'x509_ac.c:1034,10'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1005
      functionLinenumberEnd: 1013
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:1008,15'
          Dst:             chunk_create_clone
    - functionName:    get_validity
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 989
      functionLinenumberEnd: 1000
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:990,28'
          Dst:             time
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 976
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 922
      functionLinenumberEnd: 972
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          213
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - chunk_equals
        - signature_params_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:946,5'
          Dst:             chunk_equals
        - Src:             'x509_ac.c:969,13'
          Dst:             signature_params_clone
    - functionName:    has_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 909
      functionLinenumberEnd: 917
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          90
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:912,3'
          Dst:             chunk_equals
    - functionName:    get_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 887
      functionLinenumberEnd: 888
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 893
      functionLinenumberEnd: 904
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 877
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 871
      functionLinenumberEnd: 872
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_ac
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 808
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          175
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - asn1_bitstring
        - asn1_wrap
        - build_attr_cert_info
        - hasher_signature_algorithm_to_oid
        - signature_params_build
        - signature_scheme_from_oid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:780,3'
          Dst:             hasher_signature_algorithm_to_oid
        - Src:             'x509_ac.c:780,3'
          Dst:             signature_scheme_from_oid
        - Src:             'x509_ac.c:790,7'
          Dst:             signature_params_build
        - Src:             'x509_ac.c:795,29'
          Dst:             build_attr_cert_info
        - Src:             'x509_ac.c:806,7'
          Dst:             asn1_bitstring
        - Src:             'x509_ac.c:803,19'
          Dst:             asn1_wrap
    - functionName:    add_groups_from_list
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1137
      functionLinenumberEnd: 1152
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          114
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - chunk_create_clone
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:1145,3'
          Dst:             strlen
        - Src:             'x509_ac.c:1145,3'
          Dst:             chunk_create
        - Src:             'x509_ac.c:1145,3'
          Dst:             chunk_create_clone
    - functionName:    x509_ac_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1158
      functionLinenumberEnd: 1218
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         64
      ICount:          470
      EdgeCount:       80
      CyclomaticComplexity: 18
      functionsReached:
        - add_groups_from_list
        - build_ac
        - chunk_create_clone
        - create_empty
        - destroy
        - signature_params_clone
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_ac.c:1165,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ac.c:1162,7'
          Dst:             create_empty
        - Src:             'x509_ac.c:1174,24'
          Dst:             chunk_create_clone
        - Src:             'x509_ac.c:1177,5'
          Dst:             add_groups_from_list
        - Src:             'x509_ac.c:1193,18'
          Dst:             signature_params_clone
        - Src:             'x509_ac.c:1201,5'
          Dst:             destroy
        - Src:             'x509_ac.c:1211,7'
          Dst:             build_ac
        - Src:             'x509_ac.c:1216,2'
          Dst:             destroy
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1064
      functionLinenumberEnd: 1095
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          123
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:1067,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1041
      functionLinenumberEnd: 1058
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          231
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - group_destroy
        - signature_params_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ac.c:1051,3'
          Dst:             group_destroy
        - Src:             'x509_ac.c:1052,3'
          Dst:             signature_params_destroy
    - functionName:    parse_certificate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 582
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         61
      ICount:          451
      EdgeCount:       69
      CyclomaticComplexity: 10
      functionsReached:
        - asn1_known_oid
        - asn1_parser_create
        - asn1_to_time
        - chunk_create_clone
        - chunk_skip
        - chunk_skip_zero
        - identification_create_from_encoding
        - parse_directoryName
        - parse_groups
        - parse_roleSyntax
        - signature_params_clear
        - signature_params_equal
        - signature_params_parse
        - x509_parse_authorityKeyIdentifier
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_ac.c:439,3'
          Branch Sides:    []
        - Branch String:   'x509_ac.c:500,5'
          Branch Sides:    []
        - Branch String:   'x509_ac.c:536,5'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ac.c:433,11'
          Dst:             asn1_parser_create
        - Src:             'x509_ac.c:455,10'
          Dst:             parse_directoryName
        - Src:             'x509_ac.c:463,22'
          Dst:             chunk_skip_zero
        - Src:             'x509_ac.c:462,26'
          Dst:             identification_create_from_encoding
        - Src:             'x509_ac.c:466,10'
          Dst:             parse_directoryName
        - Src:             'x509_ac.c:473,10'
          Dst:             parse_directoryName
        - Src:             'x509_ac.c:480,10'
          Dst:             signature_params_parse
        - Src:             'x509_ac.c:487,26'
          Dst:             chunk_create_clone
        - Src:             'x509_ac.c:490,23'
          Dst:             asn1_to_time
        - Src:             'x509_ac.c:493,22'
          Dst:             asn1_to_time
        - Src:             'x509_ac.c:496,12'
          Dst:             asn1_known_oid
        - Src:             'x509_ac.c:513,12'
          Dst:             parse_groups
        - Src:             'x509_ac.c:520,7'
          Dst:             parse_roleSyntax
        - Src:             'x509_ac.c:528,16'
          Dst:             asn1_known_oid
        - Src:             'x509_ac.c:543,9'
          Dst:             x509_parse_authorityKeyIdentifier
        - Src:             'x509_ac.c:559,10'
          Dst:             signature_params_parse
        - Src:             'x509_ac.c:564,10'
          Dst:             signature_params_equal
        - Src:             'x509_ac.c:571,23'
          Dst:             chunk_skip
        - Src:             'x509_ac.c:581,2'
          Dst:             signature_params_clear
    - functionName:    x509_ac_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1102
      functionLinenumberEnd: 1131
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          144
      EdgeCount:       28
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse_certificate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_ac.c:1107,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ac.c:1121,27'
          Dst:             create_empty
        - Src:             'x509_ac.c:1123,18'
          Dst:             chunk_create_clone
        - Src:             'x509_ac.c:1124,7'
          Dst:             parse_certificate
        - Src:             'x509_ac.c:1128,3'
          Dst:             destroy
    - functionName:    pad_len
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/utils/align.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    round_up
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/utils/align.h'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pad_len
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/align.h:58,16'
          Dst:             pad_len
    - functionName:    generate_ts
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2161
      functionLinenumberEnd: 2224
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          569
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - asn1_wrap
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - round_up
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:2169,12'
          Dst:             round_up
        - Src:             'x509_cert.c:2171,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2171,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2171,4'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2171,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2171,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2171,4'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2170,10'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2213,11'
          Dst:             round_up
        - Src:             'x509_cert.c:2215,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2215,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2215,4'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2215,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2215,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2215,4'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2214,9'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2218,11'
          Dst:             round_up
        - Src:             'x509_cert.c:2220,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2220,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2220,4'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2220,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2220,4'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2220,4'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2219,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2223,9'
          Dst:             asn1_wrap
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    policy_mapping_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cert_policy_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_address_object
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1219
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          104
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'x509_cert.c:1220,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_constraint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'x509_cert.c:275,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    parse_policyConstraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1159
      functionLinenumberEnd: 1185
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          103
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_parser_create
        - parse_constraint
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_cert.c:1170,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:1165,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:1173,30'
          Dst:             parse_constraint
        - Src:             'x509_cert.c:1176,29'
          Dst:             parse_constraint
    - functionName:    parse_policyMappings
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1098
      functionLinenumberEnd: 1135
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          215
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - asn1_parser_create
        - chunk_create_clone
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_cert.c:1110,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:1105,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:1119,20'
          Dst:             chunk_create_clone
        - Src:             'x509_cert.c:1125,21'
          Dst:             chunk_create_clone
    - functionName:    parse_certificatePolicies
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1034
      functionLinenumberEnd: 1075
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          208
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - asn1_known_oid
        - asn1_parser_create
        - chunk_create_clone
        - chunk_printable
        - strndup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_cert.c:1046,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:1041,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:1049,5'
          Dst:             chunk_create_clone
        - Src:             'x509_cert.c:1055,17'
          Dst:             asn1_known_oid
        - Src:             'x509_cert.c:1060,6'
          Dst:             chunk_printable
        - Src:             'x509_cert.c:1062,24'
          Dst:             strndup
    - functionName:    parse_nameConstraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 961
      functionLinenumberEnd: 1000
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          154
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_parser_create
        - parse_generalName
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_cert.c:973,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:968,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:976,10'
          Dst:             parse_generalName
        - Src:             'x509_cert.c:984,10'
          Dst:             parse_generalName
    - functionName:    parse_generalName
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          167
      EdgeCount:       31
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_parser_create
        - identification_create_from_encoding
        - parse_otherName
      functionUses:    4
      BranchProfiles:
        - Branch String:   'x509_cert.c:466,3'
          Branch Sides:    []
        - Branch String:   'x509_cert.c:481,5'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:459,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:500,10'
          Dst:             parse_otherName
        - Src:             'x509_cert.c:514,9'
          Dst:             identification_create_from_encoding
    - functionName:    parse_otherName
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          144
      EdgeCount:       22
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_known_oid
        - asn1_parse_simple_object
        - asn1_parser_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_cert.c:369,3'
          Branch Sides:    []
        - Branch String:   'x509_cert.c:375,5'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:364,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:372,11'
          Dst:             asn1_known_oid
        - Src:             'x509_cert.c:378,11'
          Dst:             asn1_parse_simple_object
        - Src:             'x509_cert.c:390,11'
          Dst:             asn1_parse_simple_object
    - functionName:    parse_ipAddrBlocks
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1262
      functionLinenumberEnd: 1336
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          239
      EdgeCount:       38
      CyclomaticComplexity: 9
      functionsReached:
        - asn1_parser_create
        - check_address_object
        - traffic_selector_create_from_rfc3779_format
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_cert.c:1275,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:1270,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:1300,10'
          Dst:             check_address_object
        - Src:             'x509_cert.c:1304,10'
          Dst:             traffic_selector_create_from_rfc3779_format
        - Src:             'x509_cert.c:1310,10'
          Dst:             check_address_object
        - Src:             'x509_cert.c:1317,10'
          Dst:             check_address_object
        - Src:             'x509_cert.c:1321,10'
          Dst:             traffic_selector_create_from_rfc3779_format
    - functionName:    parse_keyUsage
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 761
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          200
      EdgeCount:       44
      CyclomaticComplexity: 8
      functionsReached:
        - asn1_unwrap
        - chunk_skip
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_cert.c:739,6'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:724,6'
          Dst:             asn1_unwrap
        - Src:             'x509_cert.c:728,10'
          Dst:             chunk_skip
    - functionName:    parse_authorityInfoAccess
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 646
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          170
      EdgeCount:       25
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_known_oid
        - asn1_parser_create
        - gn_to_string
        - parse_generalName
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_cert.c:658,3'
          Branch Sides:    []
        - Branch String:   'x509_cert.c:665,5'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:653,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:661,20'
          Dst:             asn1_known_oid
        - Src:             'x509_cert.c:673,13'
          Dst:             parse_generalName
        - Src:             'x509_cert.c:682,9'
          Dst:             gn_to_string
    - functionName:    gn_to_string
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asprintf
        - chunk_free
        - chunk_printable
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:235,2'
          Dst:             chunk_printable
        - Src:             'x509_cert.c:236,8'
          Dst:             asprintf
        - Src:             'x509_cert.c:237,2'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_basicConstraints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          139
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_parser_create
        - parse_constraint
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_cert.c:316,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:311,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:329,32'
          Dst:             parse_constraint
    - functionName:    create_policy_mapping_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1954
      functionLinenumberEnd: 1955
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_cert_policy_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1948
      functionLinenumberEnd: 1949
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_name_constraint_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1938
      functionLinenumberEnd: 1944
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_ipAddrBlock_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1932
      functionLinenumberEnd: 1933
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_ocsp_uri_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1920
      functionLinenumberEnd: 1921
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_crl_uri_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1926
      functionLinenumberEnd: 1927
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_subjectAltName_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1914
      functionLinenumberEnd: 1915
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_constraint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1896
      functionLinenumberEnd: 1910
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_cert.c:1897,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_authKeyIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1890
      functionLinenumberEnd: 1891
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_subjectKeyIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1867
      functionLinenumberEnd: 1886
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip_zero
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_serial
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1861
      functionLinenumberEnd: 1862
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_skip_zero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:1862,9'
          Dst:             chunk_skip_zero
    - functionName:    get_flags
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1855
      functionLinenumberEnd: 1856
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1792
      functionLinenumberEnd: 1794
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1828
      functionLinenumberEnd: 1851
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:1842,10'
          Dst:             chunk_equals
        - Src:             'x509_cert.c:1848,10'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1816
      functionLinenumberEnd: 1824
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:1819,15'
          Dst:             chunk_create_clone
    - functionName:    get_validity
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1800
      functionLinenumberEnd: 1811
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:1801,28'
          Dst:             time
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1785
      functionLinenumberEnd: 1787
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1721
      functionLinenumberEnd: 1781
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          269
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - chunk_equals
        - signature_params_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:1733,15'
          Dst:             signature_params_clone
        - Src:             'x509_cert.c:1754,21'
          Dst:             chunk_equals
        - Src:             'x509_cert.c:1778,13'
          Dst:             signature_params_clone
    - functionName:    has_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1713
      functionLinenumberEnd: 1715
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1661
      functionLinenumberEnd: 1662
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1667
      functionLinenumberEnd: 1709
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          242
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - chunk_equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:1678,4'
          Dst:             chunk_equals
        - Src:             'x509_cert.c:1683,4'
          Dst:             chunk_equals
        - Src:             'x509_cert.c:1692,7'
          Dst:             chunk_equals
    - functionName:    get_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1655
      functionLinenumberEnd: 1656
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1649
      functionLinenumberEnd: 1650
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2275
      functionLinenumberEnd: 2685
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         181
      ICount:          2845
      EdgeCount:       244
      CyclomaticComplexity: 65
      functionsReached:
        - asn1_bitstring
        - asn1_build_known_oid
        - asn1_from_time
        - asn1_integer
        - asn1_simple_object
        - asn1_wrap
        - build_generalName
        - chunk_create
        - chunk_create_cat
        - chunk_free
        - chunk_length
        - create_cert_policy_enumerator
        - create_name_constraint_enumerator
        - create_policy_mapping_enumerator
        - generate_ts
        - hasher_signature_algorithm_to_oid
        - signature_params_build
        - signature_scheme_from_oid
        - strlen
        - time
        - x509_build_crlDistributionPoints
        - x509_build_subjectAltNames
        - x509_generate_eku_extension
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_cert.c:2456,4'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:2314,21'
          Dst:             time
        - Src:             'x509_cert.c:2324,3'
          Dst:             hasher_signature_algorithm_to_oid
        - Src:             'x509_cert.c:2324,3'
          Dst:             signature_scheme_from_oid
        - Src:             'x509_cert.c:2334,7'
          Dst:             signature_params_build
        - Src:             'x509_cert.c:2342,3'
          Dst:             chunk_free
        - Src:             'x509_cert.c:2347,20'
          Dst:             x509_build_subjectAltNames
        - Src:             'x509_cert.c:2349,26'
          Dst:             x509_build_crlDistributionPoints
        - Src:             'x509_cert.c:2359,9'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2361,31'
          Dst:             strlen
        - Src:             'x509_cert.c:2361,13'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2360,9'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2358,23'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2362,25'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2362,25'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2369,6'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2371,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2370,6'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2368,25'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2382,10'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2381,24'
          Dst:             asn1_integer
        - Src:             'x509_cert.c:2385,9'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2386,9'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2390,12'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2389,11'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2388,9'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2384,22'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2403,7'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2404,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2406,8'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2405,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2402,14'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2410,21'
          Dst:             x509_generate_eku_extension
        - Src:             'x509_cert.c:2421,10'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2423,11'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2422,10'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2420,27'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2441,8'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2444,10'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2443,9'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2442,8'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2440,24'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2459,14'
          Dst:             generate_ts
        - Src:             'x509_cert.c:2460,17'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2460,17'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2463,14'
          Dst:             generate_ts
        - Src:             'x509_cert.c:2464,17'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2464,17'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2475,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2477,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2474,15'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2482,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2484,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2481,15'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2487,7'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2489,8'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2488,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2486,18'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2500,16'
          Dst:             create_name_constraint_enumerator
        - Src:             'x509_cert.c:2503,44'
          Dst:             build_generalName
        - Src:             'x509_cert.c:2503,14'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2504,16'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2504,16'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2509,16'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2512,16'
          Dst:             create_name_constraint_enumerator
        - Src:             'x509_cert.c:2515,44'
          Dst:             build_generalName
        - Src:             'x509_cert.c:2515,14'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2516,15'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2516,15'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2521,15'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2525,8'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2527,9'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2526,8'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2524,21'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2535,16'
          Dst:             create_cert_policy_enumerator
        - Src:             'x509_cert.c:2543,7'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2546,12'
          Dst:             strlen
        - Src:             'x509_cert.c:2545,8'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2544,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2542,11'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2551,8'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2555,11'
          Dst:             strlen
        - Src:             'x509_cert.c:2554,10'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2553,9'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2552,8'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2550,14'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2559,13'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2562,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2561,12'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2563,19'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2563,19'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2568,8'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2570,9'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2569,8'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2567,18'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2577,16'
          Dst:             create_policy_mapping_enumerator
        - Src:             'x509_cert.c:2583,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2584,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2582,12'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2585,21'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2585,21'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2590,8'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2592,9'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2591,8'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2589,20'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2604,8'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2603,7'
          Dst:             asn1_integer
        - Src:             'x509_cert.c:2602,15'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2610,8'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2609,7'
          Dst:             asn1_integer
        - Src:             'x509_cert.c:2608,14'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2613,7'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2614,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2616,8'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2615,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2612,23'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2623,5'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2624,5'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2627,7'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2626,6'
          Dst:             asn1_integer
        - Src:             'x509_cert.c:2625,5'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2622,22'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2633,6'
          Dst:             asn1_simple_object
        - Src:             'x509_cert.c:2634,6'
          Dst:             asn1_simple_object
        - Src:             'x509_cert.c:2635,6'
          Dst:             asn1_simple_object
        - Src:             'x509_cert.c:2632,23'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2646,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2645,16'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2656,3'
          Dst:             asn1_simple_object
        - Src:             'x509_cert.c:2657,3'
          Dst:             asn1_integer
        - Src:             'x509_cert.c:2661,4'
          Dst:             asn1_from_time
        - Src:             'x509_cert.c:2662,4'
          Dst:             asn1_from_time
        - Src:             'x509_cert.c:2660,3'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2655,25'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2669,3'
          Dst:             chunk_free
        - Src:             'x509_cert.c:2674,11'
          Dst:             asn1_bitstring
        - Src:             'x509_cert.c:2672,19'
          Dst:             asn1_wrap
    - functionName:    x509_build_subjectAltNames
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2093
      functionLinenumberEnd: 2117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          151
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_build_known_oid
        - asn1_wrap
        - build_generalName
        - chunk_create_cat
        - chunk_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:2106,10'
          Dst:             build_generalName
        - Src:             'x509_cert.c:2107,21'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2107,21'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2112,7'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2114,8'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2113,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2111,9'
          Dst:             asn1_wrap
    - functionName:    x509_build_crlDistributionPoints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2123
      functionLinenumberEnd: 2158
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          248
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_build_known_oid
        - asn1_wrap
        - build_generalName
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:2141,8'
          Dst:             build_generalName
        - Src:             'x509_cert.c:2140,16'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2147,32'
          Dst:             strlen
        - Src:             'x509_cert.c:2147,9'
          Dst:             chunk_create
        - Src:             'x509_cert.c:2146,8'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2145,7'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2144,6'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2143,23'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2149,27'
          Dst:             chunk_length
        - Src:             'x509_cert.c:2149,27'
          Dst:             chunk_create_cat
        - Src:             'x509_cert.c:2155,5'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2157,6'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2156,5'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2154,9'
          Dst:             asn1_wrap
    - functionName:    x509_generate_eku_extension
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          234
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - asn1_build_known_oid
        - asn1_wrap
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:2237,16'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2241,16'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2245,21'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2249,17'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2253,22'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2260,9'
          Dst:             asn1_build_known_oid
        - Src:             'x509_cert.c:2262,10'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2261,9'
          Dst:             asn1_wrap
        - Src:             'x509_cert.c:2259,22'
          Dst:             asn1_wrap
    - functionName:    build_generalName
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2056
      functionLinenumberEnd: 2087
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          139
      EdgeCount:       19
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_wrap
        - chunk_create_clone
      functionUses:    4
      BranchProfiles:
        - Branch String:   'x509_cert.c:2059,2'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:2062,11'
          Dst:             chunk_create_clone
        - Src:             'x509_cert.c:2086,9'
          Dst:             asn1_wrap
    - functionName:    strdupnull
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:79,13'
          Dst:             strdup
    - functionName:    x509_cert_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2733
      functionLinenumberEnd: 2954
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         163
      ICount:          1454
      EdgeCount:       206
      CyclomaticComplexity: 45
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - generate
        - signature_params_clone
        - strdup
        - strdupnull
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_cert.c:2743,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:2740,9'
          Dst:             create_empty
        - Src:             'x509_cert.c:2788,6'
          Dst:             strdup
        - Src:             'x509_cert.c:2807,52'
          Dst:             strdup
        - Src:             'x509_cert.c:2875,6'
          Dst:             strdupnull
        - Src:             'x509_cert.c:2875,6'
          Dst:             strdupnull
        - Src:             'x509_cert.c:2875,6'
          Dst:             chunk_create_clone
        - Src:             'x509_cert.c:2895,6'
          Dst:             chunk_create_clone
        - Src:             'x509_cert.c:2895,6'
          Dst:             chunk_create_clone
        - Src:             'x509_cert.c:2927,26'
          Dst:             chunk_create_clone
        - Src:             'x509_cert.c:2931,20'
          Dst:             signature_params_clone
        - Src:             'x509_cert.c:2937,36'
          Dst:             chunk_create_clone
        - Src:             'x509_cert.c:2942,5'
          Dst:             destroy
        - Src:             'x509_cert.c:2948,18'
          Dst:             generate
        - Src:             'x509_cert.c:2952,2'
          Dst:             destroy
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2000
      functionLinenumberEnd: 2049
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          171
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:2003,2'
          Dst:             linked_list_create
        - Src:             'x509_cert.c:2003,2'
          Dst:             linked_list_create
        - Src:             'x509_cert.c:2003,2'
          Dst:             linked_list_create
        - Src:             'x509_cert.c:2003,2'
          Dst:             linked_list_create
        - Src:             'x509_cert.c:2003,2'
          Dst:             linked_list_create
        - Src:             'x509_cert.c:2003,2'
          Dst:             linked_list_create
        - Src:             'x509_cert.c:2003,2'
          Dst:             linked_list_create
        - Src:             'x509_cert.c:2003,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1960
      functionLinenumberEnd: 1994
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          231
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - cert_policy_destroy
        - chunk_free
        - policy_mapping_destroy
        - signature_params_destroy
        - x509_cdp_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:1965,3'
          Dst:             x509_cdp_destroy
        - Src:             'x509_cert.c:1974,3'
          Dst:             cert_policy_destroy
        - Src:             'x509_cert.c:1976,3'
          Dst:             policy_mapping_destroy
        - Src:             'x509_cert.c:1978,3'
          Dst:             signature_params_destroy
        - Src:             'x509_cert.c:1982,3'
          Dst:             chunk_free
        - Src:             'x509_cert.c:1983,3'
          Dst:             chunk_free
        - Src:             'x509_cert.c:1984,3'
          Dst:             chunk_free
        - Src:             'x509_cert.c:1985,3'
          Dst:             chunk_free
        - Src:             'x509_cert.c:1988,4'
          Dst:             chunk_free
        - Src:             'x509_cert.c:1989,4'
          Dst:             chunk_free
        - Src:             'x509_cert.c:1990,4'
          Dst:             chunk_free
    - functionName:    parse_certificate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1391
      functionLinenumberEnd: 1645
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         119
      ICount:          806
      EdgeCount:       149
      CyclomaticComplexity: 32
      functionsReached:
        - asn1_known_oid
        - asn1_parse_simple_object
        - asn1_parse_time
        - asn1_parser_create
        - chunk_free
        - chunk_skip
        - identification_create_from_encoding
        - parse_authorityInfoAccess
        - parse_basicConstraints
        - parse_certificatePolicies
        - parse_constraint
        - parse_ipAddrBlocks
        - parse_keyUsage
        - parse_nameConstraints
        - parse_policyConstraints
        - parse_policyMappings
        - signature_params_clear
        - signature_params_equal
        - signature_params_parse
        - x509_parse_authorityKeyIdentifier
        - x509_parse_crlDistributionPoints
        - x509_parse_eku_extension
        - x509_parse_generalNames
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_cert.c:1406,3'
          Branch Sides:    []
        - Branch String:   'x509_cert.c:1473,5'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:1400,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:1427,10'
          Dst:             signature_params_parse
        - Src:             'x509_cert.c:1434,20'
          Dst:             identification_create_from_encoding
        - Src:             'x509_cert.c:1438,23'
          Dst:             asn1_parse_time
        - Src:             'x509_cert.c:1441,22'
          Dst:             asn1_parse_time
        - Src:             'x509_cert.c:1444,21'
          Dst:             identification_create_from_encoding
        - Src:             'x509_cert.c:1465,16'
          Dst:             asn1_known_oid
        - Src:             'x509_cert.c:1476,12'
          Dst:             asn1_parse_simple_object
        - Src:             'x509_cert.c:1484,12'
          Dst:             x509_parse_generalNames
        - Src:             'x509_cert.c:1491,12'
          Dst:             parse_basicConstraints
        - Src:             'x509_cert.c:1497,12'
          Dst:             x509_parse_crlDistributionPoints
        - Src:             'x509_cert.c:1504,7'
          Dst:             chunk_free
        - Src:             'x509_cert.c:1505,33'
          Dst:             x509_parse_authorityKeyIdentifier
        - Src:             'x509_cert.c:1509,12'
          Dst:             parse_authorityInfoAccess
        - Src:             'x509_cert.c:1515,7'
          Dst:             parse_keyUsage
        - Src:             'x509_cert.c:1519,12'
          Dst:             x509_parse_eku_extension
        - Src:             'x509_cert.c:1525,12'
          Dst:             parse_ipAddrBlocks
        - Src:             'x509_cert.c:1531,12'
          Dst:             parse_nameConstraints
        - Src:             'x509_cert.c:1537,12'
          Dst:             parse_certificatePolicies
        - Src:             'x509_cert.c:1543,12'
          Dst:             parse_policyMappings
        - Src:             'x509_cert.c:1549,12'
          Dst:             parse_policyConstraints
        - Src:             'x509_cert.c:1555,12'
          Dst:             asn1_parse_simple_object
        - Src:             'x509_cert.c:1560,27'
          Dst:             parse_constraint
        - Src:             'x509_cert.c:1566,12'
          Dst:             asn1_parse_simple_object
        - Src:             'x509_cert.c:1587,10'
          Dst:             signature_params_parse
        - Src:             'x509_cert.c:1592,10'
          Dst:             signature_params_equal
        - Src:             'x509_cert.c:1599,23'
          Dst:             chunk_skip
        - Src:             'x509_cert.c:1609,2'
          Dst:             signature_params_clear
    - functionName:    x509_parse_generalNames
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 541
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          125
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_parser_create
        - parse_generalName
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:548,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:556,9'
          Dst:             parse_generalName
    - functionName:    x509_parse_crlDistributionPoints
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 892
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          157
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - add_cdps
        - asn1_parser_create
        - linked_list_create
        - x509_parse_generalNames
      functionUses:    2
      BranchProfiles:
        - Branch String:   'x509_cert.c:906,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:899,9'
          Dst:             linked_list_create
        - Src:             'x509_cert.c:900,12'
          Dst:             linked_list_create
        - Src:             'x509_cert.c:901,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:909,5'
          Dst:             add_cdps
        - Src:             'x509_cert.c:912,10'
          Dst:             x509_parse_generalNames
        - Src:             'x509_cert.c:919,10'
          Dst:             x509_parse_generalNames
        - Src:             'x509_cert.c:930,2'
          Dst:             add_cdps
    - functionName:    x509_parse_authorityKeyIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 624
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          113
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_parser_create
        - chunk_create_clone
      functionUses:    3
      BranchProfiles:
        - Branch String:   'x509_cert.c:607,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:602,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:610,25'
          Dst:             chunk_create_clone
    - functionName:    x509_parse_eku_extension
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 816
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          130
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_known_oid
        - asn1_parser_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'x509_cert.c:791,4'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:784,11'
          Dst:             asn1_parser_create
        - Src:             'x509_cert.c:791,12'
          Dst:             asn1_known_oid
    - functionName:    add_cdps
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 847
      functionLinenumberEnd: 885
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          173
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - gn_to_string
        - strdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_cert.c:855,7'
          Dst:             gn_to_string
        - Src:             'x509_cert.c:862,6'
          Dst:             strdup
    - functionName:    x509_cert_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2691
      functionLinenumberEnd: 2727
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          184
      EdgeCount:       33
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse_certificate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_cert.c:2697,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_cert.c:2715,31'
          Dst:             create_empty
        - Src:             'x509_cert.c:2717,20'
          Dst:             chunk_create_clone
        - Src:             'x509_cert.c:2719,7'
          Dst:             parse_certificate
        - Src:             'x509_cert.c:2724,3'
          Dst:             destroy
    - functionName:    revoked_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 573
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _cb_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          181
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_skip_zero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:375,14'
          Dst:             chunk_skip_zero
    - functionName:    chunk_skip_zero
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 427
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:425,9'
          Dst:             enumerator_create_filter
    - functionName:    create_delta_crl_uri_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_delta_crl
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_skip_zero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:409,16'
          Dst:             chunk_skip_zero
    - functionName:    get_authKeyIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_serial
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_skip_zero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:393,9'
          Dst:             chunk_skip_zero
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 567
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          87
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:558,10'
          Dst:             chunk_equals
        - Src:             'x509_crl.c:564,10'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 544
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:539,15'
          Dst:             chunk_create_clone
    - functionName:    get_validity
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:521,28'
          Dst:             time
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 506
      functionLinenumberEnd: 507
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 502
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          228
      EdgeCount:       38
      CyclomaticComplexity: 12
      functionsReached:
        - chunk_equals
        - signature_params_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:476,21'
          Dst:             chunk_equals
        - Src:             'x509_crl.c:499,13'
          Dst:             signature_params_clone
    - functionName:    has_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          90
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:446,3'
          Dst:             chunk_equals
    - functionName:    get_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 813
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          801
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - asn1_bitstring
        - asn1_build_known_oid
        - asn1_from_time
        - asn1_integer
        - asn1_simple_object
        - asn1_wrap
        - chunk_create_cat
        - chunk_create_clone
        - chunk_free
        - chunk_length
        - create_enumerator
        - hasher_signature_algorithm_to_oid
        - signature_params_build
        - signature_scheme_from_oid
        - x509_build_crlDistributionPoints
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:715,28'
          Dst:             chunk_create_clone
        - Src:             'x509_crl.c:720,3'
          Dst:             hasher_signature_algorithm_to_oid
        - Src:             'x509_crl.c:720,3'
          Dst:             signature_scheme_from_oid
        - Src:             'x509_crl.c:730,7'
          Dst:             signature_params_build
        - Src:             'x509_crl.c:735,15'
          Dst:             create_enumerator
        - Src:             'x509_crl.c:744,9'
          Dst:             asn1_build_known_oid
        - Src:             'x509_crl.c:746,10'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:745,9'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:743,8'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:742,16'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:750,8'
          Dst:             asn1_integer
        - Src:             'x509_crl.c:751,8'
          Dst:             asn1_from_time
        - Src:             'x509_crl.c:749,13'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:753,14'
          Dst:             chunk_length
        - Src:             'x509_crl.c:753,14'
          Dst:             chunk_create_cat
        - Src:             'x509_crl.c:757,26'
          Dst:             x509_build_crlDistributionPoints
        - Src:             'x509_crl.c:763,8'
          Dst:             asn1_build_known_oid
        - Src:             'x509_crl.c:764,8'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:767,9'
          Dst:             asn1_integer
        - Src:             'x509_crl.c:766,8'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:762,20'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:773,6'
          Dst:             asn1_simple_object
        - Src:             'x509_crl.c:774,6'
          Dst:             asn1_simple_object
        - Src:             'x509_crl.c:775,6'
          Dst:             asn1_simple_object
        - Src:             'x509_crl.c:772,23'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:781,8'
          Dst:             asn1_build_known_oid
        - Src:             'x509_crl.c:784,10'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:783,9'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:782,8'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:780,7'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:787,8'
          Dst:             asn1_build_known_oid
        - Src:             'x509_crl.c:789,9'
          Dst:             asn1_integer
        - Src:             'x509_crl.c:788,8'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:786,7'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:779,6'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:778,15'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:797,8'
          Dst:             asn1_from_time
        - Src:             'x509_crl.c:798,8'
          Dst:             asn1_from_time
        - Src:             'x509_crl.c:799,8'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:793,22'
          Dst:             asn1_wrap
        - Src:             'x509_crl.c:805,3'
          Dst:             chunk_free
        - Src:             'x509_crl.c:811,8'
          Dst:             asn1_bitstring
        - Src:             'x509_crl.c:808,19'
          Dst:             asn1_wrap
    - functionName:    read_revoked
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 694
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          92
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:687,3'
          Dst:             chunk_create_clone
    - functionName:    x509_crl_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         80
      ICount:          622
      EdgeCount:       100
      CyclomaticComplexity: 22
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - generate
        - read_revoked
        - signature_params_clone
        - strdup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_crl.c:831,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_crl.c:825,8'
          Dst:             create_empty
        - Src:             'x509_crl.c:847,22'
          Dst:             chunk_create_clone
        - Src:             'x509_crl.c:851,19'
          Dst:             signature_params_clone
        - Src:             'x509_crl.c:857,5'
          Dst:             read_revoked
        - Src:             'x509_crl.c:861,26'
          Dst:             chunk_create_clone
        - Src:             'x509_crl.c:873,6'
          Dst:             strdup
        - Src:             'x509_crl.c:883,35'
          Dst:             chunk_create_clone
        - Src:             'x509_crl.c:888,5'
          Dst:             destroy
        - Src:             'x509_crl.c:895,3'
          Dst:             generate
        - Src:             'x509_crl.c:899,2'
          Dst:             destroy
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 637
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          116
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:609,2'
          Dst:             linked_list_create
        - Src:             'x509_crl.c:609,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 600
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          131
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - revoked_destroy
        - signature_params_destroy
        - x509_cdp_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_crl.c:583,3'
          Dst:             revoked_destroy
        - Src:             'x509_crl.c:584,3'
          Dst:             x509_cdp_destroy
        - Src:             'x509_crl.c:586,3'
          Dst:             signature_params_destroy
    - functionName:    parse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         71
      ICount:          514
      EdgeCount:       85
      CyclomaticComplexity: 16
      functionsReached:
        - asn1_known_oid
        - asn1_length
        - asn1_parse_simple_object
        - asn1_parse_time
        - asn1_parser_create
        - chunk_create_clone
        - chunk_free
        - chunk_skip
        - identification_create_from_encoding
        - signature_params_clear
        - signature_params_equal
        - signature_params_parse
        - x509_parse_authorityKeyIdentifier
        - x509_parse_crlDistributionPoints
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_crl.c:225,3'
          Branch Sides:    []
        - Branch String:   'x509_crl.c:275,5'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_crl.c:219,11'
          Dst:             asn1_parser_create
        - Src:             'x509_crl.c:235,10'
          Dst:             signature_params_parse
        - Src:             'x509_crl.c:242,20'
          Dst:             identification_create_from_encoding
        - Src:             'x509_crl.c:246,24'
          Dst:             asn1_parse_time
        - Src:             'x509_crl.c:249,24'
          Dst:             asn1_parse_time
        - Src:             'x509_crl.c:256,23'
          Dst:             chunk_create_clone
        - Src:             'x509_crl.c:257,21'
          Dst:             asn1_parse_time
        - Src:             'x509_crl.c:273,20'
          Dst:             asn1_known_oid
        - Src:             'x509_crl.c:281,9'
          Dst:             asn1_length
        - Src:             'x509_crl.c:290,7'
          Dst:             chunk_free
        - Src:             'x509_crl.c:292,8'
          Dst:             x509_parse_authorityKeyIdentifier
        - Src:             'x509_crl.c:296,12'
          Dst:             asn1_parse_simple_object
        - Src:             'x509_crl.c:304,12'
          Dst:             x509_parse_crlDistributionPoints
        - Src:             'x509_crl.c:311,12'
          Dst:             asn1_parse_simple_object
        - Src:             'x509_crl.c:334,10'
          Dst:             signature_params_parse
        - Src:             'x509_crl.c:339,10'
          Dst:             signature_params_equal
        - Src:             'x509_crl.c:347,23'
          Dst:             chunk_skip
        - Src:             'x509_crl.c:357,2'
          Dst:             signature_params_clear
    - functionName:    x509_crl_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 644
      functionLinenumberEnd: 673
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          144
      EdgeCount:       28
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_crl.c:649,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_crl.c:663,29'
          Dst:             create_empty
        - Src:             'x509_crl.c:665,19'
          Dst:             chunk_create_clone
        - Src:             'x509_crl.c:666,7'
          Dst:             parse
        - Src:             'x509_crl.c:670,3'
          Dst:             destroy
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip_zero
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_OCSPRequest
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         58
      ICount:          490
      EdgeCount:       70
      CyclomaticComplexity: 14
      functionsReached:
        - asn1_known_oid
        - asn1_parse_algorithmIdentifier
        - asn1_parse_simple_object
        - asn1_parser_create
        - chunk_create_clone
        - chunk_skip
        - chunk_skip_zero
        - hasher_algorithm_from_oid
        - identification_create_from_encoding
        - signature_params_parse
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_ocsp_request.c:395,3'
          Branch Sides:    []
        - Branch String:   'x509_ocsp_request.c:435,5'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_request.c:389,11'
          Dst:             asn1_parser_create
        - Src:             'x509_ocsp_request.c:402,23'
          Dst:             identification_create_from_encoding
        - Src:             'x509_ocsp_request.c:410,8'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'x509_ocsp_request.c:409,30'
          Dst:             hasher_algorithm_from_oid
        - Src:             'x509_ocsp_request.c:418,31'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_request.c:421,30'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_request.c:424,29'
          Dst:             chunk_skip_zero
        - Src:             'x509_ocsp_request.c:424,29'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_request.c:427,16'
          Dst:             asn1_known_oid
        - Src:             'x509_ocsp_request.c:438,12'
          Dst:             asn1_parse_simple_object
        - Src:             'x509_ocsp_request.c:443,21'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_request.c:446,12'
          Dst:             asn1_parse_simple_object
        - Src:             'x509_ocsp_request.c:467,10'
          Dst:             signature_params_parse
        - Src:             'x509_ocsp_request.c:475,23'
          Dst:             chunk_skip
    - functionName:    _cb_req_cert_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:123,2'
          Dst:             chunk_free
        - Src:             'x509_ocsp_request.c:124,2'
          Dst:             chunk_free
        - Src:             'x509_ocsp_request.c:125,2'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_acceptableResponses
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_wrap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:231,9'
          Dst:             asn1_wrap
    - functionName:    build_nonce
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          160
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - asn1_simple_object
        - asn1_wrap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:223,6'
          Dst:             asn1_simple_object
        - Src:             'x509_ocsp_request.c:222,5'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_request.c:221,9'
          Dst:             asn1_wrap
    - functionName:    build_Request
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          98
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_algorithmIdentifier
        - asn1_integer
        - asn1_simple_object
        - asn1_wrap
        - hasher_algorithm_to_oid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:176,6'
          Dst:             hasher_algorithm_to_oid
        - Src:             'x509_ocsp_request.c:175,5'
          Dst:             asn1_algorithmIdentifier
        - Src:             'x509_ocsp_request.c:177,5'
          Dst:             asn1_simple_object
        - Src:             'x509_ocsp_request.c:178,5'
          Dst:             asn1_simple_object
        - Src:             'x509_ocsp_request.c:179,5'
          Dst:             asn1_integer
        - Src:             'x509_ocsp_request.c:174,4'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_request.c:173,9'
          Dst:             asn1_wrap
    - functionName:    build_requestExtensions
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_wrap
        - build_acceptableResponses
        - build_nonce
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:243,6'
          Dst:             build_nonce
        - Src:             'x509_ocsp_request.c:244,6'
          Dst:             build_acceptableResponses
        - Src:             'x509_ocsp_request.c:242,5'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_request.c:241,9'
          Dst:             asn1_wrap
    - functionName:    build_requestList
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          104
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_wrap
        - build_Request
        - chunk_create_cat
        - chunk_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:194,13'
          Dst:             build_Request
        - Src:             'x509_ocsp_request.c:195,10'
          Dst:             chunk_length
        - Src:             'x509_ocsp_request.c:195,10'
          Dst:             chunk_create_cat
        - Src:             'x509_ocsp_request.c:199,9'
          Dst:             asn1_wrap
    - functionName:    build_requestorName
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          121
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_simple_object
        - asn1_wrap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:160,6'
          Dst:             asn1_simple_object
        - Src:             'x509_ocsp_request.c:159,10'
          Dst:             asn1_wrap
    - functionName:    build_optionalSignature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          182
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_algorithmIdentifier
        - asn1_bitstring
        - asn1_wrap
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_ocsp_request.c:268,2'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_request.c:294,6'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_request.c:293,11'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_request.c:298,6'
          Dst:             asn1_algorithmIdentifier
        - Src:             'x509_ocsp_request.c:299,6'
          Dst:             asn1_bitstring
        - Src:             'x509_ocsp_request.c:297,5'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_request.c:296,9'
          Dst:             asn1_wrap
    - functionName:    build_tbsRequest
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_wrap
        - build_requestExtensions
        - build_requestList
        - build_requestorName
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:253,5'
          Dst:             build_requestorName
        - Src:             'x509_ocsp_request.c:254,5'
          Dst:             build_requestList
        - Src:             'x509_ocsp_request.c:255,5'
          Dst:             build_requestExtensions
        - Src:             'x509_ocsp_request.c:252,9'
          Dst:             asn1_wrap
    - functionName:    _cb_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 656
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          210
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_request_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 688
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:689,9'
          Dst:             enumerator_create_filter
    - functionName:    get_signer_cert
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_nonce
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 644
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 622
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 593
      functionLinenumberEnd: 616
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:607,10'
          Dst:             chunk_equals
        - Src:             'x509_ocsp_request.c:613,10'
          Dst:             chunk_equals
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:584,15'
          Dst:             chunk_create_clone
    - functionName:    get_validity
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 574
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 568
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          139
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - signature_params_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:560,13'
          Dst:             signature_params_clone
    - functionName:    has_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 698
      functionLinenumberEnd: 727
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          95
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:701,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 627
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          151
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_free
        - signature_params_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:634,3'
          Dst:             signature_params_destroy
        - Src:             'x509_ocsp_request.c:636,3'
          Dst:             chunk_free
        - Src:             'x509_ocsp_request.c:637,3'
          Dst:             chunk_free
    - functionName:    load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 857
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse_OCSPRequest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:848,9'
          Dst:             create_empty
        - Src:             'x509_ocsp_request.c:849,19'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_request.c:851,7'
          Dst:             parse_OCSPRequest
        - Src:             'x509_ocsp_request.c:853,3'
          Dst:             destroy
    - functionName:    x509_ocsp_request_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 863
      functionLinenumberEnd: 885
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          100
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - load
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_ocsp_request.c:868,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_request.c:882,10'
          Dst:             load
    - functionName:    build_OCSPRequest
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_wrap
        - build_optionalSignature
        - build_tbsRequest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_request.c:310,15'
          Dst:             build_tbsRequest
        - Src:             'x509_ocsp_request.c:313,23'
          Dst:             build_optionalSignature
        - Src:             'x509_ocsp_request.c:315,9'
          Dst:             asn1_wrap
    - functionName:    x509_ocsp_request_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_request.c'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 839
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         59
      ICount:          595
      EdgeCount:       74
      CyclomaticComplexity: 17
      functionsReached:
        - build_OCSPRequest
        - chunk_create_clone
        - chunk_free
        - create_empty
        - destroy
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_ocsp_request.c:746,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_request.c:742,9'
          Dst:             create_empty
        - Src:             'x509_ocsp_request.c:760,6'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_request.c:825,30'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_request.c:826,30'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_request.c:829,3'
          Dst:             chunk_free
        - Src:             'x509_ocsp_request.c:831,20'
          Dst:             build_OCSPRequest
        - Src:             'x509_ocsp_request.c:837,2'
          Dst:             destroy
    - functionName:    chunk_skip_zero
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_singleResponse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          354
      EdgeCount:       47
      CyclomaticComplexity: 9
      functionsReached:
        - asn1_parse_algorithmIdentifier
        - asn1_parser_create
        - asn1_to_time
        - chunk_create_clone
        - chunk_skip_zero
        - ocsp_single_response_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_ocsp_response.c:400,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_response.c:390,13'
          Dst:             ocsp_single_response_create
        - Src:             'x509_ocsp_response.c:395,11'
          Dst:             asn1_parser_create
        - Src:             'x509_ocsp_response.c:403,31'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'x509_ocsp_response.c:407,32'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_response.c:410,31'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_response.c:413,30'
          Dst:             chunk_skip_zero
        - Src:             'x509_ocsp_response.c:413,30'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_response.c:422,32'
          Dst:             asn1_to_time
        - Src:             'x509_ocsp_response.c:434,28'
          Dst:             asn1_to_time
        - Src:             'x509_ocsp_response.c:437,28'
          Dst:             asn1_to_time
    - functionName:    parse_responses
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 498
      functionLinenumberEnd: 526
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_parser_create
        - parse_singleResponse
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_ocsp_response.c:509,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_response.c:504,11'
          Dst:             asn1_parser_create
        - Src:             'x509_ocsp_response.c:512,10'
          Dst:             parse_singleResponse
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_basicOCSPResponse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 670
      functionLinenumberEnd: 768
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          373
      EdgeCount:       50
      CyclomaticComplexity: 10
      functionsReached:
        - asn1_known_oid
        - asn1_parse_simple_object
        - asn1_parser_create
        - asn1_to_time
        - chunk_create_clone
        - chunk_free
        - chunk_skip
        - identification_create_from_encoding
        - parse_responses
        - signature_params_parse
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_ocsp_response.c:685,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_response.c:680,11'
          Dst:             asn1_parser_create
        - Src:             'x509_ocsp_response.c:703,25'
          Dst:             identification_create_from_encoding
        - Src:             'x509_ocsp_response.c:708,25'
          Dst:             identification_create_from_encoding
        - Src:             'x509_ocsp_response.c:713,24'
          Dst:             asn1_to_time
        - Src:             'x509_ocsp_response.c:720,16'
          Dst:             asn1_known_oid
        - Src:             'x509_ocsp_response.c:728,6'
          Dst:             asn1_parse_simple_object
        - Src:             'x509_ocsp_response.c:731,6'
          Dst:             chunk_free
        - Src:             'x509_ocsp_response.c:732,20'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_response.c:737,10'
          Dst:             signature_params_parse
        - Src:             'x509_ocsp_response.c:745,23'
          Dst:             chunk_skip
        - Src:             'x509_ocsp_response.c:766,13'
          Dst:             parse_responses
    - functionName:    parse_OCSPResponse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 817
      functionLinenumberEnd: 869
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          146
      EdgeCount:       39
      CyclomaticComplexity: 21
      functionsReached:
        - asn1_known_oid
        - asn1_parser_create
        - parse_basicOCSPResponse
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_ocsp_response.c:828,3'
          Branch Sides:    []
        - Branch String:   'x509_ocsp_response.c:836,5'
          Branch Sides:    []
        - Branch String:   'x509_ocsp_response.c:851,5'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_response.c:824,11'
          Dst:             asn1_parser_create
        - Src:             'x509_ocsp_response.c:848,20'
          Dst:             asn1_known_oid
        - Src:             'x509_ocsp_response.c:854,17'
          Dst:             parse_basicOCSPResponse
    - functionName:    build_singleResponse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          267
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_algorithmIdentifier
        - asn1_from_time
        - asn1_integer
        - asn1_simple_object
        - asn1_wrap
        - hasher_algorithm_to_oid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_ocsp_response.c:293,2'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_response.c:288,6'
          Dst:             hasher_algorithm_to_oid
        - Src:             'x509_ocsp_response.c:287,5'
          Dst:             asn1_algorithmIdentifier
        - Src:             'x509_ocsp_response.c:289,5'
          Dst:             asn1_simple_object
        - Src:             'x509_ocsp_response.c:290,5'
          Dst:             asn1_simple_object
        - Src:             'x509_ocsp_response.c:291,5'
          Dst:             asn1_integer
        - Src:             'x509_ocsp_response.c:286,11'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:296,17'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:301,8'
          Dst:             asn1_from_time
        - Src:             'x509_ocsp_response.c:304,9'
          Dst:             asn1_simple_object
        - Src:             'x509_ocsp_response.c:303,8'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:300,17'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:309,17'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:315,7'
          Dst:             asn1_from_time
        - Src:             'x509_ocsp_response.c:314,16'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:322,5'
          Dst:             asn1_from_time
        - Src:             'x509_ocsp_response.c:319,9'
          Dst:             asn1_wrap
    - functionName:    build_responses
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          104
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_wrap
        - build_singleResponse
        - chunk_create_cat
        - chunk_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:474,21'
          Dst:             build_singleResponse
        - Src:             'x509_ocsp_response.c:475,15'
          Dst:             chunk_length
        - Src:             'x509_ocsp_response.c:475,15'
          Dst:             chunk_create_cat
        - Src:             'x509_ocsp_response.c:479,9'
          Dst:             asn1_wrap
    - functionName:    build_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 570
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_tbsResponseData
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 533
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          162
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_build_known_oid
        - asn1_from_time
        - asn1_simple_object
        - asn1_wrap
        - build_responses
        - time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:537,22'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:540,21'
          Dst:             time
        - Src:             'x509_ocsp_response.c:545,10'
          Dst:             asn1_build_known_oid
        - Src:             'x509_ocsp_response.c:547,11'
          Dst:             asn1_simple_object
        - Src:             'x509_ocsp_response.c:546,10'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:544,9'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:543,8'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:542,23'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:552,5'
          Dst:             asn1_from_time
        - Src:             'x509_ocsp_response.c:553,5'
          Dst:             build_responses
        - Src:             'x509_ocsp_response.c:550,9'
          Dst:             asn1_wrap
    - functionName:    build_basicOCSPResponse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 577
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          170
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - asn1_bitstring
        - asn1_wrap
        - build_signature
        - build_tbsResponseData
        - signature_params_build
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:584,7'
          Dst:             signature_params_build
        - Src:             'x509_ocsp_response.c:588,20'
          Dst:             build_tbsResponseData
        - Src:             'x509_ocsp_response.c:590,7'
          Dst:             build_signature
        - Src:             'x509_ocsp_response.c:608,6'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:607,11'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:613,7'
          Dst:             asn1_bitstring
        - Src:             'x509_ocsp_response.c:611,19'
          Dst:             asn1_wrap
    - functionName:    _cb_filter
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          212
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_response_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_filter
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:261,9'
          Dst:             enumerator_create_filter
    - functionName:    create_cert_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_status
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          339
      EdgeCount:       45
      CyclomaticComplexity: 12
      functionsReached:
        - chunk_equals
        - hasher_algorithm_from_oid
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_ocsp_response.c:164,4'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_response.c:150,8'
          Dst:             chunk_equals
        - Src:             'x509_ocsp_response.c:174,6'
          Dst:             chunk_equals
        - Src:             'x509_ocsp_response.c:186,8'
          Dst:             hasher_algorithm_from_oid
        - Src:             'x509_ocsp_response.c:194,9'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    get_nonce
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ocsp_status
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1015
      functionLinenumberEnd: 1017
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 988
      functionLinenumberEnd: 1011
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:1002,10'
          Dst:             chunk_equals
        - Src:             'x509_ocsp_response.c:1008,10'
          Dst:             chunk_equals
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 976
      functionLinenumberEnd: 984
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:979,15'
          Dst:             chunk_create_clone
    - functionName:    get_validity
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 959
      functionLinenumberEnd: 970
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:960,28'
          Dst:             time
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 952
      functionLinenumberEnd: 953
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 897
      functionLinenumberEnd: 948
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          295
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - chunk_equals
        - signature_params_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:913,5'
          Dst:             chunk_equals
        - Src:             'x509_ocsp_response.c:945,13'
          Dst:             signature_params_clone
    - functionName:    has_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 886
      functionLinenumberEnd: 892
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 880
      functionLinenumberEnd: 881
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 874
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1043
      functionLinenumberEnd: 1077
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          110
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:1046,2'
          Dst:             linked_list_create
        - Src:             'x509_ocsp_response.c:1046,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1022
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          141
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - signature_params_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:1032,3'
          Dst:             signature_params_destroy
    - functionName:    load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1177
      functionLinenumberEnd: 1189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse_OCSPResponse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:1180,9'
          Dst:             create_empty
        - Src:             'x509_ocsp_response.c:1181,19'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_response.c:1183,7'
          Dst:             parse_OCSPResponse
        - Src:             'x509_ocsp_response.c:1185,3'
          Dst:             destroy
    - functionName:    x509_ocsp_response_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1196
      functionLinenumberEnd: 1218
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          100
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - load
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_ocsp_response.c:1201,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_response.c:1215,10'
          Dst:             load
    - functionName:    build_OCSPResponse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 794
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          129
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_build_known_oid
        - asn1_simple_object
        - asn1_wrap
        - build_basicOCSPResponse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_ocsp_response.c:781,8'
          Dst:             build_basicOCSPResponse
        - Src:             'x509_ocsp_response.c:787,9'
          Dst:             asn1_build_known_oid
        - Src:             'x509_ocsp_response.c:788,9'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:786,8'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:785,19'
          Dst:             asn1_wrap
        - Src:             'x509_ocsp_response.c:791,5'
          Dst:             asn1_simple_object
        - Src:             'x509_ocsp_response.c:790,9'
          Dst:             asn1_wrap
    - functionName:    x509_ocsp_response_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_ocsp_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1084
      functionLinenumberEnd: 1171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         59
      ICount:          463
      EdgeCount:       73
      CyclomaticComplexity: 16
      functionsReached:
        - build_OCSPResponse
        - chunk_create_clone
        - create_empty
        - destroy
        - hasher_signature_algorithm_to_oid
        - signature_params_clone
        - signature_scheme_from_oid
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_ocsp_response.c:1097,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_ocsp_response.c:1093,9'
          Dst:             create_empty
        - Src:             'x509_ocsp_response.c:1128,20'
          Dst:             signature_params_clone
        - Src:             'x509_ocsp_response.c:1132,19'
          Dst:             chunk_create_clone
        - Src:             'x509_ocsp_response.c:1153,4'
          Dst:             hasher_signature_algorithm_to_oid
        - Src:             'x509_ocsp_response.c:1153,4'
          Dst:             signature_scheme_from_oid
        - Src:             'x509_ocsp_response.c:1165,19'
          Dst:             build_OCSPResponse
        - Src:             'x509_ocsp_response.c:1169,2'
          Dst:             destroy
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_challengePassword
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 526
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - asn1_length
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_pkcs10.c:515,6'
          Dst:             asn1_length
    - functionName:    parse_extension_request
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          163
      EdgeCount:       25
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_known_oid
        - asn1_parse_simple_object
        - asn1_parser_create
        - x509_parse_eku_extension
        - x509_parse_generalNames
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_pkcs10.c:444,3'
          Branch Sides:    []
        - Branch String:   'x509_pkcs10.c:455,5'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_pkcs10.c:437,11'
          Dst:             asn1_parser_create
        - Src:             'x509_pkcs10.c:447,16'
          Dst:             asn1_known_oid
        - Src:             'x509_pkcs10.c:458,12'
          Dst:             x509_parse_generalNames
        - Src:             'x509_pkcs10.c:465,12'
          Dst:             asn1_parse_simple_object
        - Src:             'x509_pkcs10.c:473,12'
          Dst:             x509_parse_eku_extension
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    replace_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          160
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create_clone
        - chunk_free
        - generate
        - signature_params_clone
        - signature_params_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_pkcs10.c:395,22'
          Dst:             chunk_create_clone
        - Src:             'x509_pkcs10.c:396,28'
          Dst:             chunk_create_clone
        - Src:             'x509_pkcs10.c:398,2'
          Dst:             chunk_free
        - Src:             'x509_pkcs10.c:399,2'
          Dst:             signature_params_destroy
        - Src:             'x509_pkcs10.c:400,17'
          Dst:             signature_params_clone
        - Src:             'x509_pkcs10.c:403,6'
          Dst:             generate
    - functionName:    generate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          502
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - asn1_bitstring
        - asn1_build_known_oid
        - asn1_is_printablestring
        - asn1_simple_object
        - asn1_wrap
        - chunk_free
        - hasher_signature_algorithm_to_oid
        - signature_params_build
        - signature_scheme_from_oid
        - x509_build_subjectAltNames
        - x509_generate_eku_extension
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_pkcs10.c:301,3'
          Dst:             hasher_signature_algorithm_to_oid
        - Src:             'x509_pkcs10.c:301,3'
          Dst:             signature_scheme_from_oid
        - Src:             'x509_pkcs10.c:311,7'
          Dst:             signature_params_build
        - Src:             'x509_pkcs10.c:319,3'
          Dst:             chunk_free
        - Src:             'x509_pkcs10.c:324,20'
          Dst:             x509_build_subjectAltNames
        - Src:             'x509_pkcs10.c:330,5'
          Dst:             asn1_build_known_oid
        - Src:             'x509_pkcs10.c:332,6'
          Dst:             asn1_simple_object
        - Src:             'x509_pkcs10.c:331,5'
          Dst:             asn1_wrap
        - Src:             'x509_pkcs10.c:329,17'
          Dst:             asn1_wrap
        - Src:             'x509_pkcs10.c:337,21'
          Dst:             x509_generate_eku_extension
        - Src:             'x509_pkcs10.c:343,5'
          Dst:             asn1_build_known_oid
        - Src:             'x509_pkcs10.c:345,6'
          Dst:             asn1_wrap
        - Src:             'x509_pkcs10.c:344,5'
          Dst:             asn1_wrap
        - Src:             'x509_pkcs10.c:342,22'
          Dst:             asn1_wrap
        - Src:             'x509_pkcs10.c:353,17'
          Dst:             asn1_is_printablestring
        - Src:             'x509_pkcs10.c:357,5'
          Dst:             asn1_build_known_oid
        - Src:             'x509_pkcs10.c:359,6'
          Dst:             asn1_simple_object
        - Src:             'x509_pkcs10.c:358,5'
          Dst:             asn1_wrap
        - Src:             'x509_pkcs10.c:356,23'
          Dst:             asn1_wrap
        - Src:             'x509_pkcs10.c:363,15'
          Dst:             asn1_wrap
        - Src:             'x509_pkcs10.c:366,35'
          Dst:             asn1_wrap
        - Src:             'x509_pkcs10.c:374,3'
          Dst:             chunk_free
        - Src:             'x509_pkcs10.c:381,11'
          Dst:             asn1_bitstring
        - Src:             'x509_pkcs10.c:378,19'
          Dst:             asn1_wrap
    - functionName:    create_subjectAltName_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strcaseeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:55,32'
          Dst:             strcasecmp
    - functionName:    get_flags
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          96
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - strcaseeq
        - strndup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_pkcs10.c:254,13'
          Dst:             strndup
        - Src:             'x509_pkcs10.c:256,7'
          Dst:             strcaseeq
        - Src:             'x509_pkcs10.c:260,12'
          Dst:             strcaseeq
        - Src:             'x509_pkcs10.c:264,12'
          Dst:             strcaseeq
        - Src:             'x509_pkcs10.c:268,12'
          Dst:             strcaseeq
    - functionName:    get_challengePassword
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_pkcs10.c:223,10'
          Dst:             chunk_equals
        - Src:             'x509_pkcs10.c:229,10'
          Dst:             chunk_equals
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_pkcs10.c:200,15'
          Dst:             chunk_create_clone
    - functionName:    get_validity
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          38
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          114
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - signature_params_clone
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_pkcs10.c:168,13'
          Dst:             signature_params_clone
    - functionName:    has_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    x509_pkcs10_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 820
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         58
      ICount:          450
      EdgeCount:       71
      CyclomaticComplexity: 15
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - generate
        - signature_params_clone
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_pkcs10.c:764,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_pkcs10.c:761,9'
          Dst:             create_empty
        - Src:             'x509_pkcs10.c:790,31'
          Dst:             chunk_create_clone
        - Src:             'x509_pkcs10.c:793,25'
          Dst:             chunk_create_clone
        - Src:             'x509_pkcs10.c:800,20'
          Dst:             signature_params_clone
        - Src:             'x509_pkcs10.c:808,5'
          Dst:             destroy
        - Src:             'x509_pkcs10.c:814,18'
          Dst:             generate
        - Src:             'x509_pkcs10.c:818,2'
          Dst:             destroy
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 682
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          108
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_pkcs10.c:685,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 676
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          124
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_free
        - signature_params_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'x509_pkcs10.c:663,3'
          Dst:             signature_params_destroy
        - Src:             'x509_pkcs10.c:666,3'
          Dst:             chunk_free
        - Src:             'x509_pkcs10.c:669,4'
          Dst:             chunk_free
        - Src:             'x509_pkcs10.c:670,4'
          Dst:             chunk_free
        - Src:             'x509_pkcs10.c:671,4'
          Dst:             chunk_free
        - Src:             'x509_pkcs10.c:672,4'
          Dst:             chunk_free
    - functionName:    parse_certificate_request
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 561
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         40
      ICount:          289
      EdgeCount:       47
      CyclomaticComplexity: 9
      functionsReached:
        - asn1_known_oid
        - asn1_parser_create
        - chunk_skip
        - identification_create_from_encoding
        - issued_by
        - parse_challengePassword
        - parse_extension_request
        - signature_params_parse
      functionUses:    1
      BranchProfiles:
        - Branch String:   'x509_pkcs10.c:574,3'
          Branch Sides:    []
        - Branch String:   'x509_pkcs10.c:603,5'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_pkcs10.c:568,11'
          Dst:             asn1_parser_create
        - Src:             'x509_pkcs10.c:588,21'
          Dst:             identification_create_from_encoding
        - Src:             'x509_pkcs10.c:600,16'
          Dst:             asn1_known_oid
        - Src:             'x509_pkcs10.c:606,12'
          Dst:             parse_extension_request
        - Src:             'x509_pkcs10.c:612,12'
          Dst:             parse_challengePassword
        - Src:             'x509_pkcs10.c:623,10'
          Dst:             signature_params_parse
        - Src:             'x509_pkcs10.c:630,23'
          Dst:             chunk_skip
        - Src:             'x509_pkcs10.c:643,7'
          Dst:             issued_by
    - functionName:    x509_pkcs10_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/x509/x509_pkcs10.c'
      linkageType:     InternalLinkage
      functionLinenumber: 719
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          147
      EdgeCount:       28
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse_certificate_request
      functionUses:    0
      BranchProfiles:
        - Branch String:   'x509_pkcs10.c:724,3'
          Branch Sides:    []
      Callsites:
        - Src:             'x509_pkcs10.c:739,33'
          Dst:             create_empty
        - Src:             'x509_pkcs10.c:741,20'
          Dst:             chunk_create_clone
        - Src:             'x509_pkcs10.c:743,7'
          Dst:             parse_certificate_request
        - Src:             'x509_pkcs10.c:747,3'
          Dst:             destroy
    - functionName:    _cb_crl_fetch_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_fetcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_fetcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    fetch_ocsp
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_fetcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          271
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_equals_const
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_fetcher.c:243,3'
          Dst:             chunk_free
        - Src:             'revocation_fetcher.c:244,3'
          Dst:             chunk_free
        - Src:             'revocation_fetcher.c:247,2'
          Dst:             chunk_free
        - Src:             'revocation_fetcher.c:252,2'
          Dst:             chunk_free
        - Src:             'revocation_fetcher.c:268,4'
          Dst:             chunk_equals_const
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    do_crl_fetch
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_fetcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          75
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_fetcher.c:103,3'
          Dst:             chunk_free
        - Src:             'revocation_fetcher.c:108,2'
          Dst:             chunk_free
    - functionName:    start_crl_fetch
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_fetcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          125
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - do_crl_fetch
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_fetcher.c:127,8'
          Dst:             do_crl_fetch
        - Src:             'revocation_fetcher.c:136,20'
          Dst:             time_monotonic
    - functionName:    wait_for_crl
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_fetcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          129
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - time_monotonic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_fetcher.c:156,41'
          Dst:             time_monotonic
    - functionName:    fetch_crl
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_fetcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          128
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - condvar_create
        - start_crl_fetch
        - strdup
        - wait_for_crl
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_fetcher.c:189,3'
          Dst:             strdup
        - Src:             'revocation_fetcher.c:189,3'
          Dst:             condvar_create
        - Src:             'revocation_fetcher.c:197,9'
          Dst:             wait_for_crl
        - Src:             'revocation_fetcher.c:201,9'
          Dst:             start_crl_fetch
    - functionName:    revocation_fetcher_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/revocation/revocation_fetcher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hashtable_create
        - hashtable_equals_str
        - hashtable_hash_str
        - mutex_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'revocation_fetcher.c:302,2'
          Dst:             mutex_create
        - Src:             'revocation_fetcher.c:302,2'
          Dst:             hashtable_create
        - Src:             'revocation_fetcher.c:302,2'
          Dst:             hashtable_hash_str
        - Src:             'revocation_fetcher.c:302,2'
          Dst:             hashtable_equals_str
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_validity
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          116
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pubkey_cert.c:165,28'
          Dst:             time
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          107
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - public_key_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pubkey_cert.c:129,7'
          Dst:             public_key_equals
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pubkey_cert.c:144,15'
          Dst:             equals
    - functionName:    has_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    has_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          115
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pubkey_cert.c:96,5'
          Dst:             chunk_equals
    - functionName:    get_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pubkey_cert_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          138
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - identification_create_from_encoding
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pubkey_cert.c:214,2'
          Dst:             identification_create_from_encoding
        - Src:             'pubkey_cert.c:244,19'
          Dst:             identification_create_from_encoding
        - Src:             'pubkey_cert.c:248,19'
          Dst:             identification_create_from_encoding
    - functionName:    pubkey_cert_wrap
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pubkey/pubkey_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         47
      ICount:          304
      EdgeCount:       56
      CyclomaticComplexity: 11
      functionsReached:
        - pubkey_cert_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pubkey_cert.c:268,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pubkey_cert.c:310,10'
          Dst:             pubkey_cert_create
    - functionName:    is_ec_private_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          88
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - asn1_parse_integer_uint64
        - asn1_unwrap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs1_builder.c:281,9'
          Dst:             asn1_unwrap
        - Src:             'pkcs1_builder.c:282,6'
          Dst:             asn1_unwrap
        - Src:             'pkcs1_builder.c:283,6'
          Dst:             asn1_parse_integer_uint64
        - Src:             'pkcs1_builder.c:284,6'
          Dst:             asn1_unwrap
        - Src:             'pkcs1_builder.c:285,6'
          Dst:             asn1_unwrap
        - Src:             'pkcs1_builder.c:286,6'
          Dst:             asn1_unwrap
        - Src:             'pkcs1_builder.c:287,21'
          Dst:             asn1_unwrap
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_rsa_private_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          175
      EdgeCount:       29
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_parser_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'pkcs1_builder.c:215,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs1_builder.c:210,11'
          Dst:             asn1_parser_create
    - functionName:    parse_private_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_ec_private_key
        - parse_rsa_private_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs1_builder.c:296,6'
          Dst:             is_ec_private_key
        - Src:             'pkcs1_builder.c:301,9'
          Dst:             parse_rsa_private_key
    - functionName:    pkcs1_private_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 2
      functionsReached:
        - parse_private_key
        - parse_rsa_private_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pkcs1_builder.c:345,3'
          Branch Sides:    []
        - Branch String:   'pkcs1_builder.c:357,2'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs1_builder.c:360,11'
          Dst:             parse_private_key
        - Src:             'pkcs1_builder.c:362,11'
          Dst:             parse_rsa_private_key
    - functionName:    parse_rsa_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          103
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_parser_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs1_builder.c:145,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs1_builder.c:141,11'
          Dst:             asn1_parser_create
    - functionName:    parse_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          235
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - asn1_parse_algorithmIdentifier
        - asn1_parser_create
        - chunk_skip
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs1_builder.c:54,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs1_builder.c:50,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs1_builder.c:58,15'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'pkcs1_builder.c:102,15'
          Dst:             chunk_skip
    - functionName:    pkcs1_public_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 2
      functionsReached:
        - parse_public_key
        - parse_rsa_public_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pkcs1_builder.c:313,3'
          Branch Sides:    []
        - Branch String:   'pkcs1_builder.c:325,2'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs1_builder.c:328,11'
          Dst:             parse_public_key
        - Src:             'pkcs1_builder.c:330,11'
          Dst:             parse_rsa_public_key
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_pubkey
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs1_encoder.c:122,3'
          Dst:             chunk_free
        - Src:             'pkcs1_encoder.c:128,2'
          Dst:             chunk_free
    - functionName:    build_priv
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          150
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_integer
        - asn1_wrap
        - cred_encoding_args
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs1_encoder.c:90,6'
          Dst:             cred_encoding_args
        - Src:             'pkcs1_encoder.c:98,7'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:99,7'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:100,7'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:101,7'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:102,7'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:103,7'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:104,7'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:105,7'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:96,15'
          Dst:             asn1_wrap
    - functionName:    build_pub_modulus
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create_clone
        - cred_encoding_args
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs1_encoder.c:69,6'
          Dst:             cred_encoding_args
        - Src:             'pkcs1_encoder.c:77,15'
          Dst:             chunk_create_clone
    - functionName:    build_pub_info
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          110
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_algorithmIdentifier
        - asn1_bitstring
        - asn1_integer
        - asn1_wrap
        - cred_encoding_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs1_encoder.c:48,6'
          Dst:             cred_encoding_args
        - Src:             'pkcs1_encoder.c:52,7'
          Dst:             asn1_algorithmIdentifier
        - Src:             'pkcs1_encoder.c:55,9'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:56,9'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:54,8'
          Dst:             asn1_wrap
        - Src:             'pkcs1_encoder.c:53,7'
          Dst:             asn1_bitstring
        - Src:             'pkcs1_encoder.c:51,15'
          Dst:             asn1_wrap
    - functionName:    build_pub
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          74
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_integer
        - asn1_wrap
        - cred_encoding_args
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs1_encoder.c:30,6'
          Dst:             cred_encoding_args
        - Src:             'pkcs1_encoder.c:34,7'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:35,7'
          Dst:             asn1_integer
        - Src:             'pkcs1_encoder.c:33,15'
          Dst:             asn1_wrap
    - functionName:    build_sha1
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - build_pub
        - hash_pubkey
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs1_encoder.c:153,6'
          Dst:             build_pub
        - Src:             'pkcs1_encoder.c:155,10'
          Dst:             hash_pubkey
    - functionName:    build_info_sha1
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - build_pub_info
        - hash_pubkey
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs1_encoder.c:139,6'
          Dst:             build_pub_info
        - Src:             'pkcs1_encoder.c:141,10'
          Dst:             hash_pubkey
    - functionName:    pkcs1_encoder_encode
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs1/pkcs1_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          76
      EdgeCount:       21
      CyclomaticComplexity: 12
      functionsReached:
        - build_info_sha1
        - build_priv
        - build_pub
        - build_pub_info
        - build_pub_modulus
        - build_sha1
      functionUses:    2
      BranchProfiles:
        - Branch String:   'pkcs1_encoder.c:166,2'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs1_encoder.c:169,11'
          Dst:             build_info_sha1
        - Src:             'pkcs1_encoder.c:171,11'
          Dst:             build_sha1
        - Src:             'pkcs1_encoder.c:173,11'
          Dst:             build_pub
        - Src:             'pkcs1_encoder.c:175,11'
          Dst:             build_pub_info
        - Src:             'pkcs1_encoder.c:177,11'
          Dst:             build_pub_modulus
        - Src:             'pkcs1_encoder.c:179,11'
          Dst:             build_priv
    - functionName:    attribute_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_attributes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    attribute_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_attributes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_attributes.c:89,2'
          Dst:             chunk_create_clone
    - functionName:    add_attribute
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_attributes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - attribute_create
        - chunk_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_attributes.c:182,11'
          Dst:             attribute_create
        - Src:             'pkcs7_attributes.c:183,2'
          Dst:             chunk_free
        - Src:             'pkcs7_attributes.c:186,2'
          Dst:             chunk_free
    - functionName:    get_attribute
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_attributes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          94
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - asn1_unwrap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_attributes.c:171,19'
          Dst:             asn1_unwrap
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmp_attributes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_attributes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_compare
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_attributes.c:102,9'
          Dst:             chunk_compare
    - functionName:    build_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_attributes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          167
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - array_create
        - array_destroy
        - array_get
        - array_insert
        - array_sort
        - asn1_build_known_oid
        - asn1_build_object
        - asn1_wrap
        - cmp_attributes
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_attributes.c:118,11'
          Dst:             array_create
        - Src:             'pkcs7_attributes.c:124,9'
          Dst:             asn1_build_known_oid
        - Src:             'pkcs7_attributes.c:125,9'
          Dst:             asn1_wrap
        - Src:             'pkcs7_attributes.c:123,11'
          Dst:             asn1_wrap
        - Src:             'pkcs7_attributes.c:126,3'
          Dst:             array_insert
        - Src:             'pkcs7_attributes.c:131,2'
          Dst:             array_sort
        - Src:             'pkcs7_attributes.c:131,2'
          Dst:             cmp_attributes
        - Src:             'pkcs7_attributes.c:133,8'
          Dst:             asn1_build_object
        - Src:             'pkcs7_attributes.c:136,3'
          Dst:             array_get
        - Src:             'pkcs7_attributes.c:137,3'
          Dst:             memcpy_noop
        - Src:             'pkcs7_attributes.c:141,2'
          Dst:             array_destroy
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_attributes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - build_encoding
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_attributes.c:149,3'
          Dst:             build_encoding
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_attributes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - attribute_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_attributes.c:192,2'
          Dst:             attribute_destroy
    - functionName:    parse_attributes
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_attributes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          120
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_known_oid
        - asn1_parser_create
        - attribute_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs7_attributes.c:251,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs7_attributes.c:246,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs7_attributes.c:254,11'
          Dst:             asn1_known_oid
        - Src:             'pkcs7_attributes.c:260,15'
          Dst:             attribute_create
    - functionName:    pkcs7_attributes_create_from_chunk
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_attributes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
        - destroy
        - parse_attributes
        - pkcs7_attributes_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_attributes.c:279,38'
          Dst:             pkcs7_attributes_create
        - Src:             'pkcs7_attributes.c:280,19'
          Dst:             chunk_create_clone
        - Src:             'pkcs7_attributes.c:281,7'
          Dst:             parse_attributes
        - Src:             'pkcs7_attributes.c:283,3'
          Dst:             destroy
    - functionName:    pkcs7_attributes_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_attributes.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_attributes.c:205,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_data.c:81,10'
          Dst:             chunk_create_clone
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          77
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_unwrap
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_data.c:70,6'
          Dst:             asn1_unwrap
        - Src:             'pkcs7_data.c:72,11'
          Dst:             chunk_create_clone
    - functionName:    create_signature_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_data.c:54,9'
          Dst:             enumerator_create_empty
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pkcs7_data_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          157
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_build_known_oid
        - asn1_wrap
        - create_empty
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pkcs7_data.c:140,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs7_data.c:155,10'
          Dst:             create_empty
        - Src:             'pkcs7_data.c:157,19'
          Dst:             asn1_wrap
        - Src:             'pkcs7_data.c:159,8'
          Dst:             asn1_build_known_oid
        - Src:             'pkcs7_data.c:160,8'
          Dst:             asn1_wrap
        - Src:             'pkcs7_data.c:158,20'
          Dst:             asn1_wrap
    - functionName:    pkcs7_data_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          94
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
        - create_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_data.c:122,31'
          Dst:             create_empty
        - Src:             'pkcs7_data.c:124,19'
          Dst:             chunk_create_clone
        - Src:             'pkcs7_data.c:125,18'
          Dst:             chunk_create_clone
    - functionName:    build_issuerAndSerialNumber
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          103
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_integer
        - asn1_wrap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_enveloped_data.c:474,7'
          Dst:             asn1_integer
        - Src:             'pkcs7_enveloped_data.c:472,9'
          Dst:             asn1_wrap
    - functionName:    encrypt_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          76
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_random
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          75
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    remove_padding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          90
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          206
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - encryption_algorithm_from_oid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_enveloped_data.c:134,8'
          Dst:             encryption_algorithm_from_oid
    - functionName:    find_private
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          152
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - identification_create_from_encoding
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_enveloped_data.c:106,11'
          Dst:             identification_create_from_encoding
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_enveloped_data.c:363,10'
          Dst:             chunk_create_clone
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_enveloped_data.c:354,11'
          Dst:             chunk_create_clone
    - functionName:    create_signature_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - enumerator_create_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_enveloped_data.c:346,9'
          Dst:             enumerator_create_empty
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_clear
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_enveloped_data.c:370,2'
          Dst:             chunk_clear
    - functionName:    generate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          443
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - asn1_algorithmIdentifier
        - asn1_build_known_oid
        - asn1_wrap
        - build_issuerAndSerialNumber
        - chunk_clear
        - chunk_create
        - chunk_free
        - encrypt_key
        - encryption_algorithm_to_oid
        - get_random
        - memcpy_noop
        - memset_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_enveloped_data.c:489,12'
          Dst:             encryption_algorithm_to_oid
        - Src:             'pkcs7_enveloped_data.c:504,7'
          Dst:             get_random
        - Src:             'pkcs7_enveloped_data.c:512,7'
          Dst:             get_random
        - Src:             'pkcs7_enveloped_data.c:522,12'
          Dst:             chunk_create
        - Src:             'pkcs7_enveloped_data.c:523,2'
          Dst:             memcpy_noop
        - Src:             'pkcs7_enveloped_data.c:524,2'
          Dst:             memset_noop
        - Src:             'pkcs7_enveloped_data.c:532,3'
          Dst:             chunk_clear
        - Src:             'pkcs7_enveloped_data.c:533,3'
          Dst:             chunk_free
        - Src:             'pkcs7_enveloped_data.c:539,7'
          Dst:             encrypt_key
        - Src:             'pkcs7_enveloped_data.c:542,3'
          Dst:             chunk_clear
        - Src:             'pkcs7_enveloped_data.c:543,3'
          Dst:             chunk_free
        - Src:             'pkcs7_enveloped_data.c:544,3'
          Dst:             chunk_free
        - Src:             'pkcs7_enveloped_data.c:547,2'
          Dst:             chunk_clear
        - Src:             'pkcs7_enveloped_data.c:550,5'
          Dst:             asn1_build_known_oid
        - Src:             'pkcs7_enveloped_data.c:551,5'
          Dst:             asn1_wrap
        - Src:             'pkcs7_enveloped_data.c:549,31'
          Dst:             asn1_wrap
        - Src:             'pkcs7_enveloped_data.c:554,5'
          Dst:             asn1_build_known_oid
        - Src:             'pkcs7_enveloped_data.c:556,5'
          Dst:             asn1_wrap
        - Src:             'pkcs7_enveloped_data.c:553,25'
          Dst:             asn1_wrap
        - Src:             'pkcs7_enveloped_data.c:560,5'
          Dst:             build_issuerAndSerialNumber
        - Src:             'pkcs7_enveloped_data.c:561,5'
          Dst:             asn1_algorithmIdentifier
        - Src:             'pkcs7_enveloped_data.c:562,5'
          Dst:             asn1_wrap
        - Src:             'pkcs7_enveloped_data.c:558,18'
          Dst:             asn1_wrap
        - Src:             'pkcs7_enveloped_data.c:565,3'
          Dst:             asn1_build_known_oid
        - Src:             'pkcs7_enveloped_data.c:569,5'
          Dst:             asn1_wrap
        - Src:             'pkcs7_enveloped_data.c:567,4'
          Dst:             asn1_wrap
        - Src:             'pkcs7_enveloped_data.c:566,3'
          Dst:             asn1_wrap
        - Src:             'pkcs7_enveloped_data.c:564,19'
          Dst:             asn1_wrap
    - functionName:    pkcs7_enveloped_data_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 621
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          242
      EdgeCount:       46
      CyclomaticComplexity: 10
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - generate
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pkcs7_enveloped_data.c:588,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs7_enveloped_data.c:611,10'
          Dst:             create_empty
        - Src:             'pkcs7_enveloped_data.c:613,19'
          Dst:             chunk_create_clone
        - Src:             'pkcs7_enveloped_data.c:614,7'
          Dst:             generate
        - Src:             'pkcs7_enveloped_data.c:618,3'
          Dst:             destroy
    - functionName:    parse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          370
      EdgeCount:       77
      CyclomaticComplexity: 19
      functionsReached:
        - asn1_known_oid
        - asn1_parse_algorithmIdentifier
        - asn1_parse_simple_object
        - asn1_parser_create
        - decrypt
        - find_private
        - identification_create_from_encoding
        - remove_padding
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs7_enveloped_data.c:235,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs7_enveloped_data.c:228,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs7_enveloped_data.c:258,15'
          Dst:             identification_create_from_encoding
        - Src:             'pkcs7_enveloped_data.c:265,15'
          Dst:             identification_create_from_encoding
        - Src:             'pkcs7_enveloped_data.c:270,9'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'pkcs7_enveloped_data.c:281,9'
          Dst:             asn1_known_oid
        - Src:             'pkcs7_enveloped_data.c:288,11'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'pkcs7_enveloped_data.c:289,10'
          Dst:             asn1_parse_simple_object
        - Src:             'pkcs7_enveloped_data.c:314,12'
          Dst:             find_private
        - Src:             'pkcs7_enveloped_data.c:320,7'
          Dst:             decrypt
        - Src:             'pkcs7_enveloped_data.c:324,7'
          Dst:             remove_padding
    - functionName:    pkcs7_enveloped_data_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_enveloped_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_enveloped_data.c:404,41'
          Dst:             create_empty
        - Src:             'pkcs7_enveloped_data.c:406,19'
          Dst:             chunk_create_clone
        - Src:             'pkcs7_enveloped_data.c:407,7'
          Dst:             parse
        - Src:             'pkcs7_enveloped_data.c:409,3'
          Dst:             destroy
    - functionName:    parse_contentInfo
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_generic.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          188
      EdgeCount:       31
      CyclomaticComplexity: 7
      functionsReached:
        - asn1_known_oid
        - asn1_parser_create
        - pkcs7_data_load
        - pkcs7_encrypted_data_load
        - pkcs7_enveloped_data_load
        - pkcs7_signed_data_load
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs7_generic.c:81,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs7_generic.c:55,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs7_generic.c:62,11'
          Dst:             asn1_known_oid
        - Src:             'pkcs7_generic.c:84,12'
          Dst:             pkcs7_data_load
        - Src:             'pkcs7_generic.c:86,12'
          Dst:             pkcs7_signed_data_load
        - Src:             'pkcs7_generic.c:88,12'
          Dst:             pkcs7_enveloped_data_load
        - Src:             'pkcs7_generic.c:90,12'
          Dst:             pkcs7_encrypted_data_load
    - functionName:    pkcs7_generic_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_generic.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          136
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached:
        - parse_contentInfo
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pkcs7_generic.c:106,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs7_generic.c:126,10'
          Dst:             parse_contentInfo
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    decrypt_private_key_pw
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/pkcs8_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          86
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_clear
        - is_asn1
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs8_builder.c:138,7'
          Dst:             is_asn1
        - Src:             'pkcs8_builder.c:140,3'
          Dst:             chunk_clear
        - Src:             'pkcs8_builder.c:146,2'
          Dst:             chunk_clear
    - functionName:    decrypt_private_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/pkcs8_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          116
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - decrypt_private_key_pw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs8_builder.c:161,16'
          Dst:             decrypt_private_key_pw
        - Src:             'pkcs8_builder.c:171,17'
          Dst:             decrypt_private_key_pw
    - functionName:    parse_private_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/pkcs8_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          197
      EdgeCount:       26
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_parse_algorithmIdentifier
        - asn1_parser_create
        - chunk_equals
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs8_builder.c:58,3'
          Branch Sides:    []
        - Branch String:   'pkcs8_builder.c:65,5'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs8_builder.c:53,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs8_builder.c:62,15'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'pkcs8_builder.c:102,7'
          Dst:             chunk_equals
    - functionName:    parse_encrypted_private_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/pkcs8_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          116
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_parser_create
        - decrypt_private_key
        - pkcs5_from_algorithmIdentifier
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs8_builder.c:210,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs8_builder.c:206,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs8_builder.c:214,13'
          Dst:             pkcs5_from_algorithmIdentifier
        - Src:             'pkcs8_builder.c:224,11'
          Dst:             decrypt_private_key
    - functionName:    pkcs8_private_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs8/pkcs8_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          109
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - parse_encrypted_private_key
        - parse_private_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pkcs8_builder.c:246,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs8_builder.c:259,8'
          Dst:             parse_encrypted_private_key
        - Src:             'pkcs8_builder.c:262,9'
          Dst:             parse_private_key
    - functionName:    add_certificate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          154
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - asn1_known_oid
        - asn1_parse_simple_object
        - asn1_parser_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs12_decode.c:134,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs12_decode.c:129,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs12_decode.c:137,11'
          Dst:             asn1_known_oid
        - Src:             'pkcs12_decode.c:142,6'
          Dst:             asn1_parse_simple_object
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_safe_contents
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          167
      EdgeCount:       20
      CyclomaticComplexity: 2
      functionsReached:
        - add_certificate
        - asn1_known_oid
        - asn1_parser_create
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs12_decode.c:205,3'
          Branch Sides:    []
        - Branch String:   'pkcs12_decode.c:212,5'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs12_decode.c:200,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs12_decode.c:208,11'
          Dst:             asn1_known_oid
        - Src:             'pkcs12_decode.c:216,7'
          Dst:             add_certificate
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_mac_pw
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          170
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - chunk_equals_const
        - memwipe
        - pkcs12_derive_key
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs12_decode.c:334,8'
          Dst:             chunk_create
        - Src:             'pkcs12_decode.c:335,15'
          Dst:             chunk_create
        - Src:             'pkcs12_decode.c:337,6'
          Dst:             pkcs12_derive_key
        - Src:             'pkcs12_decode.c:340,3'
          Dst:             chunk_equals_const
        - Src:             'pkcs12_decode.c:344,2'
          Dst:             memwipe
    - functionName:    parse_authenticated_safe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          173
      EdgeCount:       25
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_parser_create
        - chunk_clear
        - parse_safe_contents
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs12_decode.c:277,3'
          Branch Sides:    []
        - Branch String:   'pkcs12_decode.c:291,5'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs12_decode.c:273,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs12_decode.c:307,10'
          Dst:             parse_safe_contents
        - Src:             'pkcs12_decode.c:310,6'
          Dst:             chunk_clear
        - Src:             'pkcs12_decode.c:313,5'
          Dst:             chunk_clear
    - functionName:    verify_mac
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          179
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
        - hasher_algorithm_to_integrity
        - strlen
        - verify_mac_pw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs12_decode.c:360,9'
          Dst:             hasher_algorithm_to_integrity
        - Src:             'pkcs12_decode.c:367,6'
          Dst:             verify_mac_pw
        - Src:             'pkcs12_decode.c:368,60'
          Dst:             strlen
        - Src:             'pkcs12_decode.c:368,60'
          Dst:             chunk_create
        - Src:             'pkcs12_decode.c:368,3'
          Dst:             verify_mac_pw
        - Src:             'pkcs12_decode.c:378,7'
          Dst:             verify_mac_pw
    - functionName:    parse_digest_info
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          108
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_parse_algorithmIdentifier
        - asn1_parser_create
        - hasher_algorithm_from_oid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs12_decode.c:418,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs12_decode.c:413,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs12_decode.c:423,15'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'pkcs12_decode.c:426,13'
          Dst:             hasher_algorithm_from_oid
    - functionName:    create_key_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_cert_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pkcs12_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mem_cred_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs12_decode.c:89,2'
          Dst:             mem_cred_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_PFX
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          304
      EdgeCount:       52
      CyclomaticComplexity: 13
      functionsReached:
        - asn1_parse_integer_uint64
        - asn1_parser_create
        - chunk_free
        - parse_authenticated_safe
        - parse_digest_info
        - verify_mac
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs12_decode.c:480,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs12_decode.c:476,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs12_decode.c:489,10'
          Dst:             parse_digest_info
        - Src:             'pkcs12_decode.c:503,31'
          Dst:             asn1_parse_integer_uint64
        - Src:             'pkcs12_decode.c:529,9'
          Dst:             verify_mac
        - Src:             'pkcs12_decode.c:554,13'
          Dst:             parse_authenticated_safe
        - Src:             'pkcs12_decode.c:559,2'
          Dst:             chunk_free
    - functionName:    pkcs12_decode
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs12/pkcs12_decode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          153
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - destroy
        - parse_PFX
        - pkcs12_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pkcs12_decode.c:573,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs12_decode.c:593,10'
          Dst:             pkcs12_create
        - Src:             'pkcs12_decode.c:594,7'
          Dst:             parse_PFX
        - Src:             'pkcs12_decode.c:598,3'
          Dst:             destroy
    - functionName:    decrypt_not_allowed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sign_not_allowed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_rsa_private_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          129
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - pgp_read_mpi
        - pgp_read_scalar
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_builder.c:83,8'
          Dst:             pgp_read_mpi
        - Src:             'pgp_builder.c:88,7'
          Dst:             pgp_read_scalar
        - Src:             'pgp_builder.c:106,8'
          Dst:             pgp_read_mpi
    - functionName:    parse_private_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          216
      EdgeCount:       41
      CyclomaticComplexity: 7
      functionsReached:
        - pgp_read_packet
        - pgp_read_scalar
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pgp_builder.c:154,2'
          Branch Sides:    []
        - Branch String:   'pgp_builder.c:176,2'
          Branch Sides:    []
      Callsites:
        - Src:             'pgp_builder.c:146,7'
          Dst:             pgp_read_packet
        - Src:             'pgp_builder.c:150,7'
          Dst:             pgp_read_scalar
        - Src:             'pgp_builder.c:157,9'
          Dst:             pgp_read_scalar
        - Src:             'pgp_builder.c:168,7'
          Dst:             pgp_read_scalar
        - Src:             'pgp_builder.c:172,7'
          Dst:             pgp_read_scalar
    - functionName:    pgp_private_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 2
      functionsReached:
        - parse_private_key
        - parse_rsa_private_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pgp_builder.c:251,3'
          Branch Sides:    []
        - Branch String:   'pgp_builder.c:263,2'
          Branch Sides:    []
      Callsites:
        - Src:             'pgp_builder.c:266,11'
          Dst:             parse_private_key
        - Src:             'pgp_builder.c:268,11'
          Dst:             parse_rsa_private_key
    - functionName:    parse_rsa_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - pgp_read_mpi
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_builder.c:62,8'
          Dst:             pgp_read_mpi
    - functionName:    parse_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - pgp_read_scalar
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pgp_builder.c:37,2'
          Branch Sides:    []
      Callsites:
        - Src:             'pgp_builder.c:33,7'
          Dst:             pgp_read_scalar
    - functionName:    pgp_public_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 2
      functionsReached:
        - parse_public_key
        - parse_rsa_public_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pgp_builder.c:219,3'
          Branch Sides:    []
        - Branch String:   'pgp_builder.c:231,2'
          Branch Sides:    []
      Callsites:
        - Src:             'pgp_builder.c:234,11'
          Dst:             parse_public_key
        - Src:             'pgp_builder.c:236,11'
          Dst:             parse_rsa_public_key
    - functionName:    get_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          102
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_cert.c:205,10'
          Dst:             chunk_equals
        - Src:             'pgp_cert.c:211,10'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_cert.c:182,15'
          Dst:             chunk_create_clone
    - functionName:    get_validity
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          132
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_cert.c:151,7'
          Dst:             time
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          91
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_cert.c:104,9'
          Dst:             chunk_equals
    - functionName:    get_subject
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_user_id
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - identification_create_from_encoding
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_cert.c:403,18'
          Dst:             identification_create_from_encoding
    - functionName:    parse_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          103
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - pgp_read_scalar
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_cert.c:360,7'
          Dst:             pgp_read_scalar
        - Src:             'pgp_cert.c:373,8'
          Dst:             pgp_read_scalar
        - Src:             'pgp_cert.c:381,8'
          Dst:             pgp_read_scalar
        - Src:             'pgp_cert.c:385,8'
          Dst:             pgp_read_scalar
        - Src:             'pgp_cert.c:386,5'
          Dst:             pgp_read_scalar
    - functionName:    parse_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          302
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - chunk_create_clone
        - pgp_read_scalar
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pgp_cert.c:279,2'
          Branch Sides:    []
      Callsites:
        - Src:             'pgp_cert.c:275,7'
          Dst:             pgp_read_scalar
        - Src:             'pgp_cert.c:282,9'
          Dst:             pgp_read_scalar
        - Src:             'pgp_cert.c:283,6'
          Dst:             pgp_read_scalar
        - Src:             'pgp_cert.c:289,9'
          Dst:             pgp_read_scalar
        - Src:             'pgp_cert.c:347,23'
          Dst:             chunk_create_clone
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pgp_cert_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          217
      EdgeCount:       44
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse_public_key
        - parse_signature
        - parse_user_id
        - pgp_read_packet
      functionUses:    0
      BranchProfiles:
        - Branch String:   'pgp_cert.c:419,3'
          Branch Sides:    []
        - Branch String:   'pgp_cert.c:441,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pgp_cert.c:432,9'
          Dst:             create_empty
        - Src:             'pgp_cert.c:433,19'
          Dst:             chunk_create_clone
        - Src:             'pgp_cert.c:436,8'
          Dst:             pgp_read_packet
        - Src:             'pgp_cert.c:438,4'
          Dst:             destroy
        - Src:             'pgp_cert.c:444,10'
          Dst:             parse_public_key
        - Src:             'pgp_cert.c:446,6'
          Dst:             destroy
        - Src:             'pgp_cert.c:451,10'
          Dst:             parse_signature
        - Src:             'pgp_cert.c:453,6'
          Dst:             destroy
        - Src:             'pgp_cert.c:458,10'
          Dst:             parse_user_id
        - Src:             'pgp_cert.c:460,6'
          Dst:             destroy
        - Src:             'pgp_cert.c:474,2'
          Dst:             destroy
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_cert.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          84
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_v3_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          182
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - chunk_skip
        - cred_encoding_args
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_encoder.c:30,6'
          Dst:             cred_encoding_args
        - Src:             'pgp_encoder.c:43,8'
          Dst:             chunk_skip
        - Src:             'pgp_encoder.c:47,8'
          Dst:             chunk_skip
    - functionName:    pgp_encoder_encode
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 7
      functionsReached:
        - build_v3_fingerprint
      functionUses:    2
      BranchProfiles:
        - Branch String:   'pgp_encoder.c:67,2'
          Branch Sides:    []
      Callsites:
        - Src:             'pgp_encoder.c:70,11'
          Dst:             build_v3_fingerprint
    - functionName:    pgp_old_packet_length
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_skip
        - pgp_read_scalar
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_utils.c:131,10'
          Dst:             chunk_skip
        - Src:             'pgp_utils.c:137,9'
          Dst:             pgp_read_scalar
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pgp_read_scalar
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_skip
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_utils.c:89,11'
          Dst:             chunk_skip
    - functionName:    pgp_read_packet
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          128
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
        - chunk_skip
        - pgp_old_packet_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_utils.c:169,7'
          Dst:             pgp_old_packet_length
        - Src:             'pgp_utils.c:174,10'
          Dst:             chunk_create
        - Src:             'pgp_utils.c:175,10'
          Dst:             chunk_skip
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pgp_read_mpi
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pgp/pgp_utils.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          81
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - chunk_skip
        - pgp_read_scalar
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'pgp_utils.c:102,7'
          Dst:             pgp_read_scalar
        - Src:             'pgp_utils.c:113,9'
          Dst:             chunk_create
        - Src:             'pgp_utils.c:114,10'
          Dst:             chunk_skip
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_rsa_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/dnskey_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          144
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_skip
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dnskey_builder.c:99,10'
          Dst:             chunk_skip
        - Src:             'dnskey_builder.c:104,10'
          Dst:             chunk_skip
        - Src:             'dnskey_builder.c:112,6'
          Dst:             chunk_skip
    - functionName:    parse_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/dnskey_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          94
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_skip
      functionUses:    1
      BranchProfiles:
        - Branch String:   'dnskey_builder.c:67,2'
          Branch Sides:    []
      Callsites:
        - Src:             'dnskey_builder.c:65,9'
          Dst:             chunk_skip
    - functionName:    dnskey_public_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/dnskey_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          119
      EdgeCount:       22
      CyclomaticComplexity: 3
      functionsReached:
        - parse_public_key
        - parse_rsa_public_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'dnskey_builder.c:128,3'
          Branch Sides:    []
        - Branch String:   'dnskey_builder.c:144,2'
          Branch Sides:    []
      Callsites:
        - Src:             'dnskey_builder.c:147,11'
          Dst:             parse_public_key
        - Src:             'dnskey_builder.c:149,11'
          Dst:             parse_rsa_public_key
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htoun16
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/../../../../src/libstrongswan/utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/byteorder.h:118,9'
          Dst:             htons
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_pub
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/dnskey_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          226
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - chunk_free
        - chunk_skip
        - chunk_to_base64
        - cred_encoding_args
        - htoun16
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'dnskey_encoder.c:30,6'
          Dst:             cred_encoding_args
        - Src:             'dnskey_encoder.c:36,8'
          Dst:             chunk_skip
        - Src:             'dnskey_encoder.c:40,8'
          Dst:             chunk_skip
        - Src:             'dnskey_encoder.c:47,13'
          Dst:             chunk_create
        - Src:             'dnskey_encoder.c:54,13'
          Dst:             chunk_create
        - Src:             'dnskey_encoder.c:56,4'
          Dst:             htoun16
        - Src:             'dnskey_encoder.c:66,3'
          Dst:             memcpy_noop
        - Src:             'dnskey_encoder.c:68,3'
          Dst:             memcpy_noop
        - Src:             'dnskey_encoder.c:69,15'
          Dst:             chunk_to_base64
        - Src:             'dnskey_encoder.c:70,3'
          Dst:             chunk_free
    - functionName:    dnskey_encoder_encode
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/dnskey/dnskey_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 7
      functionsReached:
        - build_pub
      functionUses:    2
      BranchProfiles:
        - Branch String:   'dnskey_encoder.c:83,2'
          Branch Sides:    []
      Callsites:
        - Src:             'dnskey_encoder.c:86,11'
          Dst:             build_pub
    - functionName:    load_from_stream
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          161
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - chunk_create
        - chunk_free
        - chunk_from_base64
        - enumerator_create_token
        - fclose
        - fgets
        - parse_public_key
        - strlen
        - strpfx
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sshkey_builder.c:171,20'
          Dst:             fgets
        - Src:             'sshkey_builder.c:173,8'
          Dst:             strpfx
        - Src:             'sshkey_builder.c:173,36'
          Dst:             strpfx
        - Src:             'sshkey_builder.c:174,5'
          Dst:             strpfx
        - Src:             'sshkey_builder.c:174,37'
          Dst:             strpfx
        - Src:             'sshkey_builder.c:178,16'
          Dst:             enumerator_create_token
        - Src:             'sshkey_builder.c:182,29'
          Dst:             strlen
        - Src:             'sshkey_builder.c:182,29'
          Dst:             chunk_create
        - Src:             'sshkey_builder.c:182,11'
          Dst:             chunk_from_base64
        - Src:             'sshkey_builder.c:187,13'
          Dst:             parse_public_key
        - Src:             'sshkey_builder.c:188,4'
          Dst:             chunk_free
        - Src:             'sshkey_builder.c:191,2'
          Dst:             fclose
    - functionName:    strpfx
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - strneq
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:47,27'
          Dst:             strlen
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:47,9'
          Dst:             strneq
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          484
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - asn1_bitstring
        - asn1_build_known_oid
        - asn1_wrap
        - bio_reader_create
        - chunk_create
        - chunk_equals
        - chunk_free
        - parse_ec_identifier
        - strlen
        - strpfx
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sshkey_builder.c:71,11'
          Dst:             bio_reader_create
        - Src:             'sshkey_builder.c:78,27'
          Dst:             strlen
        - Src:             'sshkey_builder.c:78,27'
          Dst:             chunk_create
        - Src:             'sshkey_builder.c:78,6'
          Dst:             chunk_equals
        - Src:             'sshkey_builder.c:93,32'
          Dst:             strlen
        - Src:             'sshkey_builder.c:93,32'
          Dst:             chunk_create
        - Src:             'sshkey_builder.c:93,11'
          Dst:             chunk_equals
        - Src:             'sshkey_builder.c:107,32'
          Dst:             strlen
        - Src:             'sshkey_builder.c:107,32'
          Dst:             chunk_create
        - Src:             'sshkey_builder.c:107,11'
          Dst:             chunk_equals
        - Src:             'sshkey_builder.c:122,5'
          Dst:             strpfx
        - Src:             'sshkey_builder.c:129,12'
          Dst:             bio_reader_create
        - Src:             'sshkey_builder.c:137,9'
          Dst:             parse_ec_identifier
        - Src:             'sshkey_builder.c:148,8'
          Dst:             asn1_build_known_oid
        - Src:             'sshkey_builder.c:147,7'
          Dst:             asn1_wrap
        - Src:             'sshkey_builder.c:149,7'
          Dst:             asn1_bitstring
        - Src:             'sshkey_builder.c:146,13'
          Dst:             asn1_wrap
        - Src:             'sshkey_builder.c:152,3'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    parse_ec_identifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          172
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - asn1_build_known_oid
        - asn1_oid_from_string
        - asn1_wrap
        - chunk_create
        - chunk_equals
        - snprintf
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sshkey_builder.c:38,31'
          Dst:             strlen
        - Src:             'sshkey_builder.c:38,31'
          Dst:             chunk_create
        - Src:             'sshkey_builder.c:38,6'
          Dst:             chunk_equals
        - Src:             'sshkey_builder.c:40,9'
          Dst:             asn1_build_known_oid
        - Src:             'sshkey_builder.c:42,36'
          Dst:             strlen
        - Src:             'sshkey_builder.c:42,36'
          Dst:             chunk_create
        - Src:             'sshkey_builder.c:42,11'
          Dst:             chunk_equals
        - Src:             'sshkey_builder.c:44,9'
          Dst:             asn1_build_known_oid
        - Src:             'sshkey_builder.c:46,36'
          Dst:             strlen
        - Src:             'sshkey_builder.c:46,36'
          Dst:             chunk_create
        - Src:             'sshkey_builder.c:46,11'
          Dst:             chunk_equals
        - Src:             'sshkey_builder.c:48,9'
          Dst:             asn1_build_known_oid
        - Src:             'sshkey_builder.c:54,7'
          Dst:             snprintf
        - Src:             'sshkey_builder.c:57,35'
          Dst:             asn1_oid_from_string
        - Src:             'sshkey_builder.c:57,10'
          Dst:             asn1_wrap
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    strneq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:39,32'
          Dst:             strncmp
    - functionName:    sshkey_certificate_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          167
      EdgeCount:       32
      CyclomaticComplexity: 7
      functionsReached:
        - load_from_file
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sshkey_builder.c:281,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sshkey_builder.c:300,23'
          Dst:             load_from_file
    - functionName:    load_from_file
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fopen
        - load_from_stream
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'sshkey_builder.c:217,11'
          Dst:             fopen
        - Src:             'sshkey_builder.c:223,9'
          Dst:             load_from_stream
    - functionName:    load_from_blob
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fmemopen
        - load_from_stream
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'sshkey_builder.c:202,11'
          Dst:             fmemopen
        - Src:             'sshkey_builder.c:207,9'
          Dst:             load_from_stream
    - functionName:    fmemopen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sshkey_public_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          181
      EdgeCount:       36
      CyclomaticComplexity: 8
      functionsReached:
        - load_from_blob
        - load_from_file
        - parse_public_key
      functionUses:    0
      BranchProfiles:
        - Branch String:   'sshkey_builder.c:236,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sshkey_builder.c:256,10'
          Dst:             parse_public_key
        - Src:             'sshkey_builder.c:260,10'
          Dst:             load_from_file
        - Src:             'sshkey_builder.c:264,10'
          Dst:             load_from_blob
    - functionName:    chunk_skip_zero
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    write_ec_identifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          106
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_oid_to_string
        - chunk_create
        - snprintf
        - strdup
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sshkey_encoder.c:33,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sshkey_encoder.c:36,12'
          Dst:             strdup
        - Src:             'sshkey_encoder.c:39,12'
          Dst:             strdup
        - Src:             'sshkey_encoder.c:42,12'
          Dst:             strdup
        - Src:             'sshkey_encoder.c:45,12'
          Dst:             asn1_oid_to_string
        - Src:             'sshkey_encoder.c:48,15'
          Dst:             snprintf
        - Src:             'sshkey_encoder.c:51,32'
          Dst:             strlen
        - Src:             'sshkey_encoder.c:51,32'
          Dst:             chunk_create
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          428
      EdgeCount:       51
      CyclomaticComplexity: 14
      functionsReached:
        - asn1_known_oid
        - asn1_parse_algorithmIdentifier
        - asn1_unwrap
        - bio_writer_create
        - chunk_create
        - chunk_skip
        - chunk_skip_zero
        - chunk_to_base64
        - cred_encoding_args
        - strlen
        - write_ec_identifier
      functionUses:    1
      BranchProfiles:
        - Branch String:   'sshkey_encoder.c:89,3'
          Branch Sides:    []
      Callsites:
        - Src:             'sshkey_encoder.c:64,6'
          Dst:             cred_encoding_args
        - Src:             'sshkey_encoder.c:67,12'
          Dst:             bio_writer_create
        - Src:             'sshkey_encoder.c:68,32'
          Dst:             strlen
        - Src:             'sshkey_encoder.c:68,32'
          Dst:             chunk_create
        - Src:             'sshkey_encoder.c:72,15'
          Dst:             chunk_to_base64
        - Src:             'sshkey_encoder.c:76,11'
          Dst:             cred_encoding_args
        - Src:             'sshkey_encoder.c:84,7'
          Dst:             asn1_unwrap
        - Src:             'sshkey_encoder.c:88,9'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'sshkey_encoder.c:100,7'
          Dst:             asn1_unwrap
        - Src:             'sshkey_encoder.c:101,4'
          Dst:             asn1_unwrap
        - Src:             'sshkey_encoder.c:105,12'
          Dst:             bio_writer_create
        - Src:             'sshkey_encoder.c:106,32'
          Dst:             strlen
        - Src:             'sshkey_encoder.c:106,32'
          Dst:             chunk_create
        - Src:             'sshkey_encoder.c:107,32'
          Dst:             chunk_skip
        - Src:             'sshkey_encoder.c:108,15'
          Dst:             chunk_to_base64
        - Src:             'sshkey_encoder.c:112,11'
          Dst:             cred_encoding_args
        - Src:             'sshkey_encoder.c:119,7'
          Dst:             asn1_unwrap
        - Src:             'sshkey_encoder.c:123,9'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'sshkey_encoder.c:125,4'
          Dst:             asn1_unwrap
        - Src:             'sshkey_encoder.c:129,9'
          Dst:             asn1_known_oid
        - Src:             'sshkey_encoder.c:134,7'
          Dst:             asn1_unwrap
        - Src:             'sshkey_encoder.c:135,4'
          Dst:             asn1_unwrap
        - Src:             'sshkey_encoder.c:139,12'
          Dst:             bio_writer_create
        - Src:             'sshkey_encoder.c:140,3'
          Dst:             write_ec_identifier
        - Src:             'sshkey_encoder.c:141,3'
          Dst:             write_ec_identifier
        - Src:             'sshkey_encoder.c:143,7'
          Dst:             chunk_skip_zero
        - Src:             'sshkey_encoder.c:145,15'
          Dst:             chunk_to_base64
    - functionName:    sshkey_encoder_encode
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/sshkey/sshkey_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 7
      functionsReached:
        - build_public_key
      functionUses:    2
      BranchProfiles:
        - Branch String:   'sshkey_encoder.c:155,2'
          Branch Sides:    []
      Callsites:
        - Src:             'sshkey_encoder.c:158,11'
          Dst:             build_public_key
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    strneq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:39,32'
          Dst:             strncmp
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    present
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_skip
        - strlen
        - strneq
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_builder.c:46,14'
          Dst:             strlen
        - Src:             'pem_builder.c:48,24'
          Dst:             strneq
        - Src:             'pem_builder.c:50,9'
          Dst:             chunk_skip
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pem_decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          458
      EdgeCount:       62
      CyclomaticComplexity: 19
      functionsReached:
        - chunk_clear
        - memcpy_noop
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_builder.c:120,2'
          Dst:             memcpy_noop
        - Src:             'pem_builder.c:131,3'
          Dst:             memcpy_noop
        - Src:             'pem_builder.c:141,3'
          Dst:             memwipe
        - Src:             'pem_builder.c:150,3'
          Dst:             memwipe
        - Src:             'pem_builder.c:157,3'
          Dst:             memwipe
        - Src:             'pem_builder.c:161,2'
          Dst:             memcpy_noop
        - Src:             'pem_builder.c:162,2'
          Dst:             chunk_clear
        - Src:             'pem_builder.c:163,2'
          Dst:             memwipe
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    find_boundary
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          116
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_skip
        - present
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_builder.c:63,7'
          Dst:             present
        - Src:             'pem_builder.c:64,4'
          Dst:             present
        - Src:             'pem_builder.c:69,10'
          Dst:             chunk_skip
        - Src:             'pem_builder.c:75,7'
          Dst:             present
    - functionName:    pem_to_bin
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         95
      ICount:          538
      EdgeCount:       128
      CyclomaticComplexity: 35
      functionsReached:
        - chunk_clear
        - chunk_create_clone
        - chunk_from_base64
        - chunk_from_hex
        - eat_whitespace
        - extract_parameter_value
        - extract_token
        - fetchline
        - find_boundary
        - match
        - memchr
        - memcpy_noop
        - pem_decrypt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_builder.c:219,9'
          Dst:             fetchline
        - Src:             'pem_builder.c:223,8'
          Dst:             find_boundary
        - Src:             'pem_builder.c:231,8'
          Dst:             find_boundary
        - Src:             'pem_builder.c:239,9'
          Dst:             memchr
        - Src:             'pem_builder.c:259,11'
          Dst:             extract_parameter_value
        - Src:             'pem_builder.c:264,9'
          Dst:             match
        - Src:             'pem_builder.c:268,14'
          Dst:             match
        - Src:             'pem_builder.c:272,11'
          Dst:             extract_token
        - Src:             'pem_builder.c:276,10'
          Dst:             match
        - Src:             'pem_builder.c:281,15'
          Dst:             match
        - Src:             'pem_builder.c:286,15'
          Dst:             match
        - Src:             'pem_builder.c:291,15'
          Dst:             match
        - Src:             'pem_builder.c:302,11'
          Dst:             eat_whitespace
        - Src:             'pem_builder.c:306,11'
          Dst:             chunk_from_hex
        - Src:             'pem_builder.c:314,10'
          Dst:             extract_token
        - Src:             'pem_builder.c:334,12'
          Dst:             chunk_from_base64
        - Src:             'pem_builder.c:366,11'
          Dst:             chunk_create_clone
        - Src:             'pem_builder.c:367,12'
          Dst:             pem_decrypt
        - Src:             'pem_builder.c:370,4'
          Dst:             memcpy_noop
        - Src:             'pem_builder.c:373,3'
          Dst:             chunk_clear
    - functionName:    is_ber_indefinite_length
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          87
      EdgeCount:       16
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pem_builder.c:390,3'
          Branch Sides:    []
      Callsites:       []
    - functionName:    load_from_file
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_map
        - chunk_unmap_clear
        - load_from_blob
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_builder.c:462,10'
          Dst:             chunk_map
        - Src:             'pem_builder.c:468,9'
          Dst:             load_from_blob
        - Src:             'pem_builder.c:469,2'
          Dst:             chunk_unmap_clear
    - functionName:    load_from_blob
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          217
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - chunk_clear
        - chunk_create_clone
        - is_asn1
        - is_ber_indefinite_length
        - pem_to_bin
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_builder.c:415,9'
          Dst:             chunk_create_clone
        - Src:             'pem_builder.c:416,7'
          Dst:             is_ber_indefinite_length
        - Src:             'pem_builder.c:416,42'
          Dst:             is_asn1
        - Src:             'pem_builder.c:418,7'
          Dst:             pem_to_bin
        - Src:             'pem_builder.c:420,4'
          Dst:             chunk_clear
        - Src:             'pem_builder.c:449,2'
          Dst:             chunk_clear
    - functionName:    pem_container_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 548
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pem_load
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_builder.c:548,9'
          Dst:             pem_load
    - functionName:    pem_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 477
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          216
      EdgeCount:       40
      CyclomaticComplexity: 8
      functionsReached:
        - load_from_blob
        - load_from_file
      functionUses:    4
      BranchProfiles:
        - Branch String:   'pem_builder.c:485,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pem_builder.c:510,10'
          Dst:             load_from_blob
        - Src:             'pem_builder.c:514,10'
          Dst:             load_from_file
    - functionName:    pem_certificate_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pem_load
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_builder.c:540,9'
          Dst:             pem_load
    - functionName:    pem_public_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pem_load
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_builder.c:532,9'
          Dst:             pem_load
    - functionName:    pem_private_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_builder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 524
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pem_load
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pem_builder.c:524,9'
          Dst:             pem_load
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pem_encoder_encode
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pem/pem_encoder.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          395
      EdgeCount:       66
      CyclomaticComplexity: 18
      functionsReached:
        - chunk_clear
        - chunk_create
        - chunk_to_base64
        - cred_encoding_args
        - snprintf
        - strlen
      functionUses:    2
      BranchProfiles:
        - Branch String:   'pem_encoder.c:35,2'
          Branch Sides:    []
      Callsites:
        - Src:             'pem_encoder.c:40,8'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:42,5'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:44,5'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:50,8'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:65,8'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:71,8'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:88,8'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:94,8'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:102,8'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:108,8'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:114,8'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:120,8'
          Dst:             cred_encoding_args
        - Src:             'pem_encoder.c:133,14'
          Dst:             strlen
        - Src:             'pem_encoder.c:133,14'
          Dst:             chunk_create
        - Src:             'pem_encoder.c:138,12'
          Dst:             snprintf
        - Src:             'pem_encoder.c:147,15'
          Dst:             chunk_create
        - Src:             'pem_encoder.c:150,15'
          Dst:             chunk_to_base64
        - Src:             'pem_encoder.c:158,2'
          Dst:             chunk_clear
        - Src:             'pem_encoder.c:161,12'
          Dst:             snprintf
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_aead.c:233,2'
          Dst:             chunk_clear
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_key_size
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_aead.c:221,17'
          Dst:             get_key_size
        - Src:             'openssl_aead.c:225,2'
          Dst:             memcpy_noop
        - Src:             'openssl_aead.c:226,2'
          Dst:             memcpy_noop
    - functionName:    get_key_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_iv_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_iv_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_icv_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_block_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_CIPHER_block_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_aead.c:191,9'
          Dst:             EVP_CIPHER_block_size
    - functionName:    EVP_CIPHER_block_size
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          131
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
        - chunk_free
        - crypt_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_aead.c:177,12'
          Dst:             chunk_create
        - Src:             'openssl_aead.c:180,10'
          Dst:             crypt_data
        - Src:             'openssl_aead.c:183,3'
          Dst:             chunk_free
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    crypt_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          285
      EdgeCount:       61
      CyclomaticComplexity: 18
      functionsReached:
        - EVP_CIPHER_CTX_ctrl
        - EVP_CIPHER_CTX_free
        - EVP_CIPHER_CTX_new
        - EVP_CIPHER_CTX_set_padding
        - EVP_CIPHER_flags
        - EVP_CipherFinal_ex
        - EVP_CipherInit_ex
        - EVP_CipherUpdate
        - memcpy_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_aead.c:97,2'
          Dst:             memcpy_noop
        - Src:             'openssl_aead.c:98,2'
          Dst:             memcpy_noop
        - Src:             'openssl_aead.c:100,8'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'openssl_aead.c:101,2'
          Dst:             EVP_CIPHER_CTX_set_padding
        - Src:             'openssl_aead.c:102,7'
          Dst:             EVP_CipherInit_ex
        - Src:             'openssl_aead.c:103,4'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'openssl_aead.c:108,15'
          Dst:             EVP_CIPHER_flags
        - Src:             'openssl_aead.c:109,4'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'openssl_aead.c:115,7'
          Dst:             EVP_CipherInit_ex
        - Src:             'openssl_aead.c:119,6'
          Dst:             EVP_CIPHER_flags
        - Src:             'openssl_aead.c:120,4'
          Dst:             EVP_CipherUpdate
        - Src:             'openssl_aead.c:124,20'
          Dst:             EVP_CipherUpdate
        - Src:             'openssl_aead.c:129,7'
          Dst:             EVP_CipherUpdate
        - Src:             'openssl_aead.c:130,4'
          Dst:             EVP_CipherFinal_ex
        - Src:             'openssl_aead.c:134,14'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'openssl_aead.c:142,2'
          Dst:             EVP_CIPHER_CTX_free
    - functionName:    EVP_CIPHER_CTX_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_set_padding
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CipherInit_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_ctrl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_flags
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CipherUpdate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CipherFinal_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          86
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - crypt_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_aead.c:155,16'
          Dst:             chunk_create
        - Src:             'openssl_aead.c:158,9'
          Dst:             crypt_data
    - functionName:    openssl_aead_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_aead.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          349
      EdgeCount:       111
      CyclomaticComplexity: 57
      functionsReached:
        - EVP_aes_128_ccm
        - EVP_aes_128_gcm
        - EVP_aes_192_ccm
        - EVP_aes_192_gcm
        - EVP_aes_256_ccm
        - EVP_aes_256_gcm
        - EVP_chacha20_poly1305
        - chunk_create
        - iv_gen_seq_create
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_aead.c:261,2'
          Branch Sides:    []
        - Branch String:   'openssl_aead.c:283,2'
          Branch Sides:    []
        - Branch String:   'openssl_aead.c:288,4'
          Branch Sides:    []
        - Branch String:   'openssl_aead.c:311,4'
          Branch Sides:    []
        - Branch String:   'openssl_aead.c:334,4'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_aead.c:294,21'
          Dst:             EVP_aes_128_gcm
        - Src:             'openssl_aead.c:297,21'
          Dst:             EVP_aes_192_gcm
        - Src:             'openssl_aead.c:300,21'
          Dst:             EVP_aes_256_gcm
        - Src:             'openssl_aead.c:317,21'
          Dst:             EVP_aes_128_ccm
        - Src:             'openssl_aead.c:320,21'
          Dst:             EVP_aes_192_ccm
        - Src:             'openssl_aead.c:323,21'
          Dst:             EVP_aes_256_ccm
        - Src:             'openssl_aead.c:340,21'
          Dst:             EVP_chacha20_poly1305
        - Src:             'openssl_aead.c:366,14'
          Dst:             chunk_create
        - Src:             'openssl_aead.c:367,17'
          Dst:             iv_gen_seq_create
    - functionName:    EVP_aes_128_gcm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_192_gcm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_256_gcm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_128_ccm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_192_ccm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_256_ccm
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_chacha20_poly1305
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_integer_ext
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          119
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - X509_EXTENSION_get_data
        - chunk_create_clone
        - chunk_skip
        - openssl_asn1_str2chunk
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:502,33'
          Dst:             X509_EXTENSION_get_data
        - Src:             'openssl_crl.c:502,10'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_crl.c:506,11'
          Dst:             chunk_skip
        - Src:             'openssl_crl.c:508,10'
          Dst:             chunk_create_clone
    - functionName:    parse_authKeyIdentifier_ext
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 493
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - AUTHORITY_KEYID_free
        - X509V3_EXT_d2i
        - chunk_create_clone
        - openssl_asn1_str2chunk
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:483,29'
          Dst:             X509V3_EXT_d2i
        - Src:             'openssl_crl.c:487,29'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_crl.c:487,29'
          Dst:             chunk_create_clone
        - Src:             'openssl_crl.c:489,3'
          Dst:             AUTHORITY_KEYID_free
    - functionName:    sk_X509_EXTENSION_value
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:85,1'
          Dst:             OPENSSL_sk_value
    - functionName:    sk_X509_EXTENSION_num
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:85,1'
          Dst:             OPENSSL_sk_num
    - functionName:    parse_extensions
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          157
      EdgeCount:       29
      CyclomaticComplexity: 6
      functionsReached:
        - OBJ_obj2nid
        - X509_CRL_get0_extensions
        - X509_EXTENSION_get_critical
        - X509_EXTENSION_get_object
        - openssl_parse_crlDistributionPoints
        - parse_authKeyIdentifier_ext
        - parse_integer_ext
        - sk_X509_EXTENSION_num
        - sk_X509_EXTENSION_value
      functionUses:    1
      BranchProfiles:
        - Branch String:   'openssl_crl.c:532,4'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_crl.c:524,15'
          Dst:             X509_CRL_get0_extensions
        - Src:             'openssl_crl.c:527,9'
          Dst:             sk_X509_EXTENSION_num
        - Src:             'openssl_crl.c:530,10'
          Dst:             sk_X509_EXTENSION_value
        - Src:             'openssl_crl.c:532,24'
          Dst:             X509_EXTENSION_get_object
        - Src:             'openssl_crl.c:532,12'
          Dst:             OBJ_obj2nid
        - Src:             'openssl_crl.c:535,11'
          Dst:             parse_authKeyIdentifier_ext
        - Src:             'openssl_crl.c:538,11'
          Dst:             parse_integer_ext
        - Src:             'openssl_crl.c:541,11'
          Dst:             parse_integer_ext
        - Src:             'openssl_crl.c:544,11'
          Dst:             openssl_parse_crlDistributionPoints
        - Src:             'openssl_crl.c:547,11'
          Dst:             X509_EXTENSION_get_critical
    - functionName:    X509_CRL_get0_extensions
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_X509_REVOKED_value
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:224,1'
          Dst:             OPENSSL_sk_value
    - functionName:    crl_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          225
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - ASN1_STRING_free
        - ASN1_STRING_get0_data
        - ASN1_STRING_length
        - ASN1_STRING_type
        - X509_REVOKED_get0_revocationDate
        - X509_REVOKED_get0_serialNumber
        - X509_REVOKED_get_ext_d2i
        - openssl_asn1_int2chunk
        - openssl_asn1_to_time
        - sk_X509_REVOKED_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:177,13'
          Dst:             sk_X509_REVOKED_value
        - Src:             'openssl_crl.c:181,10'
          Dst:             X509_REVOKED_get0_serialNumber
        - Src:             'openssl_crl.c:180,14'
          Dst:             openssl_asn1_int2chunk
        - Src:             'openssl_crl.c:186,10'
          Dst:             X509_REVOKED_get0_revocationDate
        - Src:             'openssl_crl.c:185,12'
          Dst:             openssl_asn1_to_time
        - Src:             'openssl_crl.c:191,13'
          Dst:             X509_REVOKED_get_ext_d2i
        - Src:             'openssl_crl.c:195,9'
          Dst:             ASN1_STRING_type
        - Src:             'openssl_crl.c:196,6'
          Dst:             ASN1_STRING_length
        - Src:             'openssl_crl.c:198,17'
          Dst:             ASN1_STRING_get0_data
        - Src:             'openssl_crl.c:200,5'
          Dst:             ASN1_STRING_free
    - functionName:    X509_REVOKED_get0_serialNumber
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_REVOKED_get0_revocationDate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_REVOKED_get_ext_d2i
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN1_STRING_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_X509_REVOKED_num
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:224,1'
          Dst:             OPENSSL_sk_num
    - functionName:    create_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - X509_CRL_get_REVOKED
        - enumerator_create_empty
        - sk_X509_REVOKED_num
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:214,2'
          Dst:             X509_CRL_get_REVOKED
        - Src:             'openssl_crl.c:225,10'
          Dst:             enumerator_create_empty
        - Src:             'openssl_crl.c:227,20'
          Dst:             sk_X509_REVOKED_num
    - functionName:    X509_CRL_get_REVOKED
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_delta_crl_uri_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_delta_crl
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_skip_zero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:244,16'
          Dst:             chunk_skip_zero
    - functionName:    chunk_skip_zero
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_authKeyIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_serial
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_skip_zero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:234,9'
          Dst:             chunk_skip_zero
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:398,10'
          Dst:             chunk_equals
        - Src:             'openssl_crl.c:405,10'
          Dst:             chunk_equals
    - functionName:    chunk_equals
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - memeq
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:361,22'
          Dst:             memeq
    - functionName:    memeq
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:35,9'
          Dst:             memcmp
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 376
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:379,15'
          Dst:             chunk_create_clone
    - functionName:    get_validity
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:361,28'
          Dst:             time
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    issued_by
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          297
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - X509_CRL_get0_signature
        - chunk_create
        - chunk_equals
        - i2d_re_X509_CRL_tbs
        - openssl_asn1_str2chunk
        - signature_params_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:315,21'
          Dst:             chunk_equals
        - Src:             'openssl_crl.c:335,8'
          Dst:             i2d_re_X509_CRL_tbs
        - Src:             'openssl_crl.c:335,8'
          Dst:             chunk_create
        - Src:             'openssl_crl.c:335,8'
          Dst:             i2d_re_X509_CRL_tbs
        - Src:             'openssl_crl.c:339,2'
          Dst:             X509_CRL_get0_signature
        - Src:             'openssl_crl.c:341,7'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_crl.c:346,13'
          Dst:             signature_params_clone
    - functionName:    i2d_re_X509_CRL_tbs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_CRL_get0_signature
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    has_subject_or_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:279,3'
          Dst:             chunk_equals
    - functionName:    get_subject_or_issuer
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 472
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          101
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - linked_list_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:445,2'
          Dst:             linked_list_create
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 419
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          109
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - X509_CRL_free
        - signature_params_destroy
        - x509_cdp_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:424,4'
          Dst:             X509_CRL_free
        - Src:             'openssl_crl.c:426,3'
          Dst:             signature_params_destroy
        - Src:             'openssl_crl.c:427,3'
          Dst:             x509_cdp_destroy
    - functionName:    X509_CRL_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_crl
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          178
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - X509_CRL_get0_lastUpdate
        - X509_CRL_get0_nextUpdate
        - X509_CRL_get0_signature
        - X509_CRL_get_issuer
        - chunk_create
        - d2i_X509_CRL
        - i2d_X509_ALGOR
        - openssl_asn1_to_time
        - openssl_x509_name2id
        - parse_extensions
        - signature_params_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crl.c:579,14'
          Dst:             d2i_X509_CRL
        - Src:             'openssl_crl.c:585,2'
          Dst:             X509_CRL_get0_signature
        - Src:             'openssl_crl.c:586,15'
          Dst:             i2d_X509_ALGOR
        - Src:             'openssl_crl.c:586,15'
          Dst:             chunk_create
        - Src:             'openssl_crl.c:586,15'
          Dst:             i2d_X509_ALGOR
        - Src:             'openssl_crl.c:588,7'
          Dst:             signature_params_parse
        - Src:             'openssl_crl.c:596,38'
          Dst:             X509_CRL_get_issuer
        - Src:             'openssl_crl.c:596,17'
          Dst:             openssl_x509_name2id
        - Src:             'openssl_crl.c:601,42'
          Dst:             X509_CRL_get0_lastUpdate
        - Src:             'openssl_crl.c:601,21'
          Dst:             openssl_asn1_to_time
        - Src:             'openssl_crl.c:602,42'
          Dst:             X509_CRL_get0_nextUpdate
        - Src:             'openssl_crl.c:602,21'
          Dst:             openssl_asn1_to_time
        - Src:             'openssl_crl.c:604,9'
          Dst:             parse_extensions
    - functionName:    d2i_X509_CRL
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_CRL_get_issuer
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_CRL_get0_lastUpdate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_CRL_get0_nextUpdate
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_crl_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 611
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          144
      EdgeCount:       28
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse_crl
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_crl.c:616,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_crl.c:630,33'
          Dst:             create_empty
        - Src:             'openssl_crl.c:632,20'
          Dst:             chunk_create_clone
        - Src:             'openssl_crl.c:633,7'
          Dst:             parse_crl
        - Src:             'openssl_crl.c:637,3'
          Dst:             destroy
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crypter.c:198,2'
          Dst:             chunk_clear
        - Src:             'openssl_crypter.c:199,2'
          Dst:             chunk_clear
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_key_size
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crypter.c:186,17'
          Dst:             get_key_size
        - Src:             'openssl_crypter.c:190,2'
          Dst:             memcpy_noop
        - Src:             'openssl_crypter.c:191,2'
          Dst:             memcpy_noop
    - functionName:    get_key_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_iv_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_CIPHER_iv_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crypter.c:174,9'
          Dst:             EVP_CIPHER_iv_length
    - functionName:    EVP_CIPHER_iv_length
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_block_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_CIPHER_block_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crypter.c:164,9'
          Dst:             EVP_CIPHER_block_size
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - crypt_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crypter.c:152,9'
          Dst:             crypt_data
    - functionName:    crypt_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          259
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - EVP_CIPHER_CTX_free
        - EVP_CIPHER_CTX_new
        - EVP_CIPHER_CTX_set_key_length
        - EVP_CIPHER_CTX_set_padding
        - EVP_CIPHER_iv_length
        - EVP_CipherFinal_ex
        - EVP_CipherInit_ex
        - EVP_CipherUpdate
        - chunk_create
        - memcpy_noop
        - memset_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crypter.c:110,16'
          Dst:             EVP_CIPHER_iv_length
        - Src:             'openssl_crypter.c:115,3'
          Dst:             memset_noop
        - Src:             'openssl_crypter.c:116,3'
          Dst:             memcpy_noop
        - Src:             'openssl_crypter.c:117,3'
          Dst:             memcpy_noop
        - Src:             'openssl_crypter.c:131,10'
          Dst:             chunk_create
        - Src:             'openssl_crypter.c:134,8'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'openssl_crypter.c:135,6'
          Dst:             EVP_CipherInit_ex
        - Src:             'openssl_crypter.c:136,3'
          Dst:             EVP_CIPHER_CTX_set_padding
        - Src:             'openssl_crypter.c:137,3'
          Dst:             EVP_CIPHER_CTX_set_key_length
        - Src:             'openssl_crypter.c:138,3'
          Dst:             EVP_CipherInit_ex
        - Src:             'openssl_crypter.c:139,3'
          Dst:             EVP_CipherUpdate
        - Src:             'openssl_crypter.c:141,3'
          Dst:             EVP_CipherFinal_ex
        - Src:             'openssl_crypter.c:145,2'
          Dst:             EVP_CIPHER_CTX_free
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CIPHER_CTX_set_key_length
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - crypt_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_crypter.c:158,9'
          Dst:             crypt_data
    - functionName:    lookup_algorithm
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          103
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_crypter_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_crypter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         66
      ICount:          428
      EdgeCount:       129
      CyclomaticComplexity: 65
      functionsReached:
        - EVP_des_ecb
        - EVP_enc_null
        - EVP_get_cipherbyname
        - chunk_create
        - lookup_algorithm
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_crypter.c:226,2'
          Branch Sides:    []
        - Branch String:   'openssl_crypter.c:233,4'
          Branch Sides:    []
        - Branch String:   'openssl_crypter.c:253,4'
          Branch Sides:    []
        - Branch String:   'openssl_crypter.c:274,4'
          Branch Sides:    []
        - Branch String:   'openssl_crypter.c:294,4'
          Branch Sides:    []
        - Branch String:   'openssl_crypter.c:314,4'
          Branch Sides:    []
        - Branch String:   'openssl_crypter.c:334,4'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_crypter.c:229,19'
          Dst:             EVP_enc_null
        - Src:             'openssl_crypter.c:239,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:242,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:245,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:259,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:262,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:265,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:280,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:283,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:286,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:300,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:303,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:306,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:320,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:323,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:326,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:340,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:343,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:346,21'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:357,19'
          Dst:             EVP_des_ecb
        - Src:             'openssl_crypter.c:364,11'
          Dst:             lookup_algorithm
        - Src:             'openssl_crypter.c:371,19'
          Dst:             EVP_get_cipherbyname
        - Src:             'openssl_crypter.c:383,14'
          Dst:             chunk_create
        - Src:             'openssl_crypter.c:384,16'
          Dst:             chunk_create
    - functionName:    EVP_enc_null
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_get_cipherbyname
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_des_ecb
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_seed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - BN_bin2bn
        - DH_generate_key
        - DH_set0_key
        - chunk_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_diffie_hellman.c:263,12'
          Dst:             BN_bin2bn
        - Src:             'openssl_diffie_hellman.c:266,8'
          Dst:             DH_set0_key
        - Src:             'openssl_diffie_hellman.c:270,3'
          Dst:             chunk_clear
        - Src:             'openssl_diffie_hellman.c:271,10'
          Dst:             DH_generate_key
    - functionName:    DH_set0_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    DH_generate_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_method
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BN_bn2bin
        - BN_num_bits
        - DH_get0_key
        - DH_size
        - chunk_create
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_diffie_hellman.c:110,11'
          Dst:             DH_size
        - Src:             'openssl_diffie_hellman.c:110,11'
          Dst:             chunk_create
        - Src:             'openssl_diffie_hellman.c:111,2'
          Dst:             memset_noop
        - Src:             'openssl_diffie_hellman.c:112,2'
          Dst:             DH_get0_key
        - Src:             'openssl_diffie_hellman.c:113,46'
          Dst:             BN_num_bits
        - Src:             'openssl_diffie_hellman.c:113,2'
          Dst:             BN_bn2bin
    - functionName:    DH_size
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DH_get0_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          58
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - BN_bin2bn
        - chunk_clear
        - key_exchange_check_pubkey_len
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_diffie_hellman.c:157,7'
          Dst:             key_exchange_check_pubkey_len
        - Src:             'openssl_diffie_hellman.c:174,7'
          Dst:             BN_bin2bn
        - Src:             'openssl_diffie_hellman.c:179,2'
          Dst:             chunk_clear
    - functionName:    get_shared_secret
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          159
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - DH_compute_key
        - DH_size
        - chunk_clear
        - chunk_copy_pad
        - chunk_create
        - memset_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_diffie_hellman.c:135,25'
          Dst:             DH_size
        - Src:             'openssl_diffie_hellman.c:135,25'
          Dst:             chunk_create
        - Src:             'openssl_diffie_hellman.c:136,3'
          Dst:             memset_noop
        - Src:             'openssl_diffie_hellman.c:137,9'
          Dst:             DH_compute_key
        - Src:             'openssl_diffie_hellman.c:141,4'
          Dst:             chunk_clear
        - Src:             'openssl_diffie_hellman.c:147,27'
          Dst:             DH_size
        - Src:             'openssl_diffie_hellman.c:147,27'
          Dst:             chunk_create
        - Src:             'openssl_diffie_hellman.c:147,12'
          Dst:             chunk_copy_pad
    - functionName:    DH_compute_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BN_clear_free
        - DH_free
        - chunk_clear
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_diffie_hellman.c:286,2'
          Dst:             BN_clear_free
        - Src:             'openssl_diffie_hellman.c:287,2'
          Dst:             DH_free
        - Src:             'openssl_diffie_hellman.c:289,2'
          Dst:             chunk_clear
    - functionName:    BN_clear_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DH_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_diffie_hellman_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          279
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - BN_bin2bn
        - BN_free
        - BN_new
        - DH_generate_key
        - DH_new
        - DH_set0_pqg
        - DH_set_length
        - destroy
        - diffie_hellman_get_params
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_diffie_hellman.c:325,7'
          Dst:             BN_bin2bn
        - Src:             'openssl_diffie_hellman.c:326,7'
          Dst:             BN_bin2bn
        - Src:             'openssl_diffie_hellman.c:330,37'
          Dst:             diffie_hellman_get_params
        - Src:             'openssl_diffie_hellman.c:333,4'
          Dst:             destroy
        - Src:             'openssl_diffie_hellman.c:336,7'
          Dst:             BN_bin2bn
        - Src:             'openssl_diffie_hellman.c:337,7'
          Dst:             BN_bin2bn
        - Src:             'openssl_diffie_hellman.c:388,13'
          Dst:             DH_new
        - Src:             'openssl_diffie_hellman.c:389,18'
          Dst:             BN_new
        - Src:             'openssl_diffie_hellman.c:390,7'
          Dst:             DH_set0_pqg
        - Src:             'openssl_diffie_hellman.c:392,3'
          Dst:             BN_free
        - Src:             'openssl_diffie_hellman.c:393,3'
          Dst:             BN_free
        - Src:             'openssl_diffie_hellman.c:394,3'
          Dst:             destroy
        - Src:             'openssl_diffie_hellman.c:403,8'
          Dst:             DH_set_length
        - Src:             'openssl_diffie_hellman.c:405,4'
          Dst:             destroy
        - Src:             'openssl_diffie_hellman.c:410,7'
          Dst:             DH_generate_key
        - Src:             'openssl_diffie_hellman.c:412,3'
          Dst:             destroy
    - functionName:    DH_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DH_set0_pqg
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DH_set_length
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_keypair
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - BN_bin2bn
        - EC_POINT_mul
        - EC_POINT_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_diffie_hellman.c:317,10'
          Dst:             BN_bin2bn
        - Src:             'openssl_ec_diffie_hellman.c:318,9'
          Dst:             EC_POINT_new
        - Src:             'openssl_ec_diffie_hellman.c:320,4'
          Dst:             EC_POINT_mul
    - functionName:    EC_POINT_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_POINT_mul
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_seed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          108
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - BN_free
        - EC_KEY_free
        - EC_KEY_new
        - EC_KEY_set_group
        - EC_KEY_set_private_key
        - EC_KEY_set_public_key
        - EC_POINT_free
        - EVP_PKEY_set1_EC_KEY
        - get_keypair
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_diffie_hellman.c:403,7'
          Dst:             get_keypair
        - Src:             'openssl_ec_diffie_hellman.c:407,8'
          Dst:             EC_KEY_new
        - Src:             'openssl_ec_diffie_hellman.c:408,15'
          Dst:             EC_KEY_set_group
        - Src:             'openssl_ec_diffie_hellman.c:412,6'
          Dst:             EC_KEY_set_private_key
        - Src:             'openssl_ec_diffie_hellman.c:416,6'
          Dst:             EC_KEY_set_public_key
        - Src:             'openssl_ec_diffie_hellman.c:420,6'
          Dst:             EVP_PKEY_set1_EC_KEY
        - Src:             'openssl_ec_diffie_hellman.c:427,2'
          Dst:             EC_POINT_free
        - Src:             'openssl_ec_diffie_hellman.c:428,2'
          Dst:             BN_free
        - Src:             'openssl_ec_diffie_hellman.c:429,2'
          Dst:             EC_KEY_free
    - functionName:    EC_KEY_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_KEY_set_group
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_KEY_set_private_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_KEY_set_public_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_set1_EC_KEY
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_POINT_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_KEY_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_method
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          88
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - CRYPTO_free
        - EVP_PKEY_get1_tls_encodedpoint
        - chunk_create_clone
        - chunk_skip
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_diffie_hellman.c:245,12'
          Dst:             EVP_PKEY_get1_tls_encodedpoint
        - Src:             'openssl_ec_diffie_hellman.c:248,12'
          Dst:             chunk_skip
        - Src:             'openssl_ec_diffie_hellman.c:248,12'
          Dst:             chunk_create_clone
        - Src:             'openssl_ec_diffie_hellman.c:249,3'
          Dst:             CRYPTO_free
    - functionName:    EVP_PKEY_get1_tls_encodedpoint
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    set_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          133
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - EVP_PKEY_copy_parameters
        - EVP_PKEY_new
        - EVP_PKEY_set1_tls_encodedpoint
        - chunk_clear
        - chunk_create_cat
        - chunk_length
        - key_exchange_check_pubkey_len
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_diffie_hellman.c:204,7'
          Dst:             key_exchange_check_pubkey_len
        - Src:             'openssl_ec_diffie_hellman.c:211,15'
          Dst:             EVP_PKEY_new
        - Src:             'openssl_ec_diffie_hellman.c:223,10'
          Dst:             chunk_length
        - Src:             'openssl_ec_diffie_hellman.c:223,10'
          Dst:             chunk_create_cat
        - Src:             'openssl_ec_diffie_hellman.c:224,6'
          Dst:             EVP_PKEY_copy_parameters
        - Src:             'openssl_ec_diffie_hellman.c:225,3'
          Dst:             EVP_PKEY_set1_tls_encodedpoint
        - Src:             'openssl_ec_diffie_hellman.c:231,2'
          Dst:             chunk_clear
    - functionName:    EVP_PKEY_copy_parameters
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_set1_tls_encodedpoint
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_shared_secret
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create_clone
        - openssl_compute_shared_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_diffie_hellman.c:260,4'
          Dst:             openssl_compute_shared_key
        - Src:             'openssl_ec_diffie_hellman.c:265,12'
          Dst:             chunk_create_clone
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EC_GROUP_free
        - EVP_PKEY_free
        - chunk_clear
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_diffie_hellman.c:439,2'
          Dst:             EC_GROUP_free
        - Src:             'openssl_ec_diffie_hellman.c:440,2'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_ec_diffie_hellman.c:441,2'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_ec_diffie_hellman.c:442,2'
          Dst:             chunk_clear
    - functionName:    EC_GROUP_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_ec_diffie_hellman_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 450
      functionLinenumberEnd: 504
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          150
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - EC_GROUP_dup
        - EC_KEY_free
        - EC_KEY_generate_key
        - EC_KEY_get0_group
        - EC_KEY_new_by_curve_name
        - EVP_PKEY_assign
        - EVP_PKEY_new
        - destroy
        - openssl_ecdh_group_to_nid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_diffie_hellman.c:454,10'
          Dst:             openssl_ecdh_group_to_nid
        - Src:             'openssl_ec_diffie_hellman.c:486,16'
          Dst:             EC_KEY_new_by_curve_name
        - Src:             'openssl_ec_diffie_hellman.c:487,15'
          Dst:             EC_KEY_generate_key
        - Src:             'openssl_ec_diffie_hellman.c:489,3'
          Dst:             EC_KEY_free
        - Src:             'openssl_ec_diffie_hellman.c:490,3'
          Dst:             destroy
        - Src:             'openssl_ec_diffie_hellman.c:493,32'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl_ec_diffie_hellman.c:493,19'
          Dst:             EC_GROUP_dup
        - Src:             'openssl_ec_diffie_hellman.c:494,14'
          Dst:             EVP_PKEY_new
        - Src:             'openssl_ec_diffie_hellman.c:495,21'
          Dst:             EVP_PKEY_assign
        - Src:             'openssl_ec_diffie_hellman.c:497,3'
          Dst:             EC_KEY_free
        - Src:             'openssl_ec_diffie_hellman.c:498,3'
          Dst:             destroy
    - functionName:    openssl_ecdh_group_to_nid
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_diffie_hellman.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'openssl_ec_diffie_hellman.c:280,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    EC_KEY_new_by_curve_name
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_KEY_generate_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_KEY_get0_group
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_GROUP_dup
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_PKEY_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_private_key.c:278,4'
          Dst:             EVP_PKEY_free
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          138
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_clear
        - chunk_create
        - i2d_PrivateKey
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_ec_private_key.c:238,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ec_private_key.c:245,16'
          Dst:             i2d_PrivateKey
        - Src:             'openssl_ec_private_key.c:245,16'
          Dst:             chunk_create
        - Src:             'openssl_ec_private_key.c:245,16'
          Dst:             i2d_PrivateKey
        - Src:             'openssl_ec_private_key.c:254,5'
          Dst:             chunk_clear
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - openssl_fingerprint
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_private_key.c:227,9'
          Dst:             openssl_fingerprint
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - i2d_PUBKEY
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_private_key.c:216,8'
          Dst:             i2d_PUBKEY
        - Src:             'openssl_ec_private_key.c:216,8'
          Dst:             chunk_create
        - Src:             'openssl_ec_private_key.c:216,8'
          Dst:             i2d_PUBKEY
    - functionName:    get_keysize
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_PKEY_bits
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_private_key.c:201,9'
          Dst:             EVP_PKEY_bits
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_curve_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - build_signature
        - openssl_check_ec_key_curve
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_private_key.c:149,7'
          Dst:             openssl_check_ec_key_curve
        - Src:             'openssl_ec_private_key.c:155,9'
          Dst:             build_signature
    - functionName:    build_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          172
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - ECDSA_SIG_free
        - ECDSA_SIG_get0
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new
        - EVP_PKEY_bits
        - EVP_PKEY_sign
        - EVP_PKEY_sign_init
        - EVP_PKEY_size
        - build_der_signature
        - chunk_create
        - chunk_free
        - d2i_ECDSA_SIG
        - openssl_bn_cat
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_private_key.c:111,13'
          Dst:             EVP_PKEY_size
        - Src:             'openssl_ec_private_key.c:111,13'
          Dst:             chunk_create
        - Src:             'openssl_ec_private_key.c:112,9'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'openssl_ec_private_key.c:114,4'
          Dst:             EVP_PKEY_sign_init
        - Src:             'openssl_ec_private_key.c:115,4'
          Dst:             EVP_PKEY_sign
        - Src:             'openssl_ec_private_key.c:117,4'
          Dst:             chunk_free
        - Src:             'openssl_ec_private_key.c:118,4'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl_ec_private_key.c:121,3'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl_ec_private_key.c:123,12'
          Dst:             build_der_signature
        - Src:             'openssl_ec_private_key.c:129,8'
          Dst:             d2i_ECDSA_SIG
        - Src:             'openssl_ec_private_key.c:130,2'
          Dst:             chunk_free
        - Src:             'openssl_ec_private_key.c:133,3'
          Dst:             ECDSA_SIG_get0
        - Src:             'openssl_ec_private_key.c:135,27'
          Dst:             EVP_PKEY_bits
        - Src:             'openssl_ec_private_key.c:135,11'
          Dst:             openssl_bn_cat
        - Src:             'openssl_ec_private_key.c:137,3'
          Dst:             ECDSA_SIG_free
    - functionName:    build_der_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          133
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - EVP_DigestSignFinal
        - EVP_DigestSignInit
        - EVP_DigestUpdate
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_PKEY_size
        - EVP_get_digestbyname
        - OBJ_nid2sn
        - chunk_create
        - chunk_free
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_private_key.c:76,7'
          Dst:             OBJ_nid2sn
        - Src:             'openssl_ec_private_key.c:76,7'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl_ec_private_key.c:81,15'
          Dst:             EVP_PKEY_size
        - Src:             'openssl_ec_private_key.c:81,15'
          Dst:             chunk_create
        - Src:             'openssl_ec_private_key.c:82,8'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl_ec_private_key.c:84,3'
          Dst:             EVP_DigestSignInit
        - Src:             'openssl_ec_private_key.c:85,3'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl_ec_private_key.c:86,3'
          Dst:             EVP_DigestSignFinal
        - Src:             'openssl_ec_private_key.c:88,3'
          Dst:             chunk_free
        - Src:             'openssl_ec_private_key.c:89,3'
          Dst:             EVP_MD_CTX_free
        - Src:             'openssl_ec_private_key.c:92,2'
          Dst:             EVP_MD_CTX_free
    - functionName:    d2i_ECDSA_SIG
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ECDSA_SIG_get0
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ECDSA_SIG_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sign
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          134
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - build_curve_signature
        - build_der_signature
        - build_signature
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_ec_private_key.c:162,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ec_private_key.c:165,11'
          Dst:             build_signature
        - Src:             'openssl_ec_private_key.c:167,11'
          Dst:             build_der_signature
        - Src:             'openssl_ec_private_key.c:169,11'
          Dst:             build_der_signature
        - Src:             'openssl_ec_private_key.c:171,11'
          Dst:             build_der_signature
        - Src:             'openssl_ec_private_key.c:173,11'
          Dst:             build_der_signature
        - Src:             'openssl_ec_private_key.c:175,11'
          Dst:             build_curve_signature
        - Src:             'openssl_ec_private_key.c:178,11'
          Dst:             build_curve_signature
        - Src:             'openssl_ec_private_key.c:181,11'
          Dst:             build_curve_signature
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_ec_private_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          202
      EdgeCount:       45
      CyclomaticComplexity: 10
      functionsReached:
        - EC_KEY_free
        - EVP_PKEY_assign
        - EVP_PKEY_free
        - EVP_PKEY_new
        - create_internal
        - d2i_ECParameters
        - d2i_ECPrivateKey
        - d2i_PrivateKey
        - openssl_check_explicit_params
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_ec_private_key.c:428,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ec_private_key.c:456,8'
          Dst:             d2i_ECParameters
        - Src:             'openssl_ec_private_key.c:457,13'
          Dst:             d2i_ECPrivateKey
        - Src:             'openssl_ec_private_key.c:459,10'
          Dst:             EVP_PKEY_new
        - Src:             'openssl_ec_private_key.c:460,9'
          Dst:             EVP_PKEY_assign
        - Src:             'openssl_ec_private_key.c:462,5'
          Dst:             EC_KEY_free
        - Src:             'openssl_ec_private_key.c:463,5'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_ec_private_key.c:469,4'
          Dst:             EC_KEY_free
        - Src:             'openssl_ec_private_key.c:475,9'
          Dst:             d2i_PrivateKey
        - Src:             'openssl_ec_private_key.c:479,14'
          Dst:             openssl_check_explicit_params
        - Src:             'openssl_ec_private_key.c:481,3'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_ec_private_key.c:484,9'
          Dst:             create_internal
    - functionName:    d2i_ECParameters
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    d2i_ECPrivateKey
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          70
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_ec_private_key_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          178
      EdgeCount:       38
      CyclomaticComplexity: 7
      functionsReached:
        - EC_KEY_free
        - EC_KEY_generate_key
        - EC_KEY_new_by_curve_name
        - EVP_PKEY_assign
        - EVP_PKEY_free
        - EVP_PKEY_new
        - create_internal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_ec_private_key.c:345,3'
          Branch Sides:    []
        - Branch String:   'openssl_ec_private_key.c:381,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ec_private_key.c:384,9'
          Dst:             EC_KEY_new_by_curve_name
        - Src:             'openssl_ec_private_key.c:387,9'
          Dst:             EC_KEY_new_by_curve_name
        - Src:             'openssl_ec_private_key.c:390,9'
          Dst:             EC_KEY_new_by_curve_name
        - Src:             'openssl_ec_private_key.c:396,12'
          Dst:             EC_KEY_generate_key
        - Src:             'openssl_ec_private_key.c:398,9'
          Dst:             EVP_PKEY_new
        - Src:             'openssl_ec_private_key.c:399,8'
          Dst:             EVP_PKEY_assign
        - Src:             'openssl_ec_private_key.c:401,4'
          Dst:             EC_KEY_free
        - Src:             'openssl_ec_private_key.c:402,4'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_ec_private_key.c:412,9'
          Dst:             create_internal
    - functionName:    openssl_ec_private_key_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_PKEY_base_id
        - EVP_PKEY_free
        - create_internal
        - openssl_check_explicit_params
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_private_key.c:322,6'
          Dst:             EVP_PKEY_base_id
        - Src:             'openssl_ec_private_key.c:323,3'
          Dst:             openssl_check_explicit_params
        - Src:             'openssl_ec_private_key.c:325,3'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_ec_private_key.c:328,9'
          Dst:             create_internal
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_PKEY_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_public_key.c:296,4'
          Dst:             EVP_PKEY_free
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_clear
        - chunk_create
        - i2d_PUBKEY
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_public_key.c:267,14'
          Dst:             i2d_PUBKEY
        - Src:             'openssl_ec_public_key.c:267,14'
          Dst:             chunk_create
        - Src:             'openssl_ec_public_key.c:267,14'
          Dst:             i2d_PUBKEY
        - Src:             'openssl_ec_public_key.c:276,3'
          Dst:             chunk_clear
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - openssl_fingerprint
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_public_key.c:258,9'
          Dst:             openssl_fingerprint
    - functionName:    get_keysize
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_PKEY_bits
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_public_key.c:251,9'
          Dst:             EVP_PKEY_bits
    - functionName:    encrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_curve_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - openssl_check_ec_key_curve
        - verify_signature
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_public_key.c:193,7'
          Dst:             openssl_check_ec_key_curve
        - Src:             'openssl_ec_public_key.c:199,9'
          Dst:             verify_signature
    - functionName:    openssl_check_ec_key_curve
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - EC_GROUP_cmp
        - EC_GROUP_dup
        - EC_GROUP_free
        - EC_GROUP_new_by_curve_name
        - EC_KEY_get0_group
        - EVP_PKEY_get0_EC_KEY
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_public_key.c:148,14'
          Dst:             EC_GROUP_new_by_curve_name
        - Src:             'openssl_ec_public_key.c:167,15'
          Dst:             EVP_PKEY_get0_EC_KEY
        - Src:             'openssl_ec_public_key.c:168,26'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl_ec_public_key.c:168,13'
          Dst:             EC_GROUP_dup
        - Src:             'openssl_ec_public_key.c:175,6'
          Dst:             EC_GROUP_cmp
        - Src:             'openssl_ec_public_key.c:181,2'
          Dst:             EC_GROUP_free
        - Src:             'openssl_ec_public_key.c:182,2'
          Dst:             EC_GROUP_free
    - functionName:    verify_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          201
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - BN_free
        - BN_new
        - ECDSA_SIG_free
        - ECDSA_SIG_new
        - ECDSA_SIG_set0
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new
        - EVP_PKEY_verify
        - EVP_PKEY_verify_init
        - chunk_create
        - chunk_free
        - i2d_ECDSA_SIG
        - openssl_bn_split
        - verify_der_signature
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_public_key.c:105,8'
          Dst:             ECDSA_SIG_new
        - Src:             'openssl_ec_public_key.c:108,7'
          Dst:             BN_new
        - Src:             'openssl_ec_public_key.c:109,7'
          Dst:             BN_new
        - Src:             'openssl_ec_public_key.c:110,8'
          Dst:             openssl_bn_split
        - Src:             'openssl_ec_public_key.c:112,4'
          Dst:             BN_free
        - Src:             'openssl_ec_public_key.c:113,4'
          Dst:             BN_free
        - Src:             'openssl_ec_public_key.c:114,4'
          Dst:             ECDSA_SIG_free
        - Src:             'openssl_ec_public_key.c:117,7'
          Dst:             ECDSA_SIG_set0
        - Src:             'openssl_ec_public_key.c:119,14'
          Dst:             i2d_ECDSA_SIG
        - Src:             'openssl_ec_public_key.c:119,14'
          Dst:             chunk_create
        - Src:             'openssl_ec_public_key.c:119,14'
          Dst:             i2d_ECDSA_SIG
        - Src:             'openssl_ec_public_key.c:122,11'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'openssl_ec_public_key.c:123,20'
          Dst:             EVP_PKEY_verify_init
        - Src:             'openssl_ec_public_key.c:124,7'
          Dst:             EVP_PKEY_verify
        - Src:             'openssl_ec_public_key.c:126,5'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl_ec_public_key.c:130,13'
          Dst:             verify_der_signature
        - Src:             'openssl_ec_public_key.c:132,4'
          Dst:             chunk_free
        - Src:             'openssl_ec_public_key.c:134,3'
          Dst:             ECDSA_SIG_free
    - functionName:    ECDSA_SIG_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ECDSA_SIG_set0
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i2d_ECDSA_SIG
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_verify_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_verify
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_der_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          140
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - EVP_DigestUpdate
        - EVP_DigestVerifyFinal
        - EVP_DigestVerifyInit
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_get_digestbyname
        - OBJ_nid2sn
        - chunk_skip
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ec_public_key.c:73,15'
          Dst:             chunk_skip
        - Src:             'openssl_ec_public_key.c:75,7'
          Dst:             OBJ_nid2sn
        - Src:             'openssl_ec_public_key.c:75,7'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl_ec_public_key.c:80,8'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl_ec_public_key.c:82,3'
          Dst:             EVP_DigestVerifyInit
        - Src:             'openssl_ec_public_key.c:83,3'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl_ec_public_key.c:84,3'
          Dst:             EVP_DigestVerifyFinal
        - Src:             'openssl_ec_public_key.c:86,3'
          Dst:             EVP_MD_CTX_free
        - Src:             'openssl_ec_public_key.c:89,2'
          Dst:             EVP_MD_CTX_free
    - functionName:    EC_GROUP_new_by_curve_name
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_get0_EC_KEY
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_GROUP_cmp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          144
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - verify_curve_signature
        - verify_der_signature
        - verify_signature
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_ec_public_key.c:212,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ec_public_key.c:215,11'
          Dst:             verify_der_signature
        - Src:             'openssl_ec_public_key.c:217,11'
          Dst:             verify_der_signature
        - Src:             'openssl_ec_public_key.c:219,11'
          Dst:             verify_der_signature
        - Src:             'openssl_ec_public_key.c:221,11'
          Dst:             verify_der_signature
        - Src:             'openssl_ec_public_key.c:223,11'
          Dst:             verify_signature
        - Src:             'openssl_ec_public_key.c:225,11'
          Dst:             verify_curve_signature
        - Src:             'openssl_ec_public_key.c:228,11'
          Dst:             verify_curve_signature
        - Src:             'openssl_ec_public_key.c:231,11'
          Dst:             verify_curve_signature
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_ec_public_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          168
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - EVP_PKEY_base_id
        - EVP_PKEY_free
        - d2i_PUBKEY
        - openssl_check_explicit_params
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_ec_public_key.c:334,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ec_public_key.c:346,8'
          Dst:             d2i_PUBKEY
        - Src:             'openssl_ec_public_key.c:347,14'
          Dst:             EVP_PKEY_base_id
        - Src:             'openssl_ec_public_key.c:348,3'
          Dst:             openssl_check_explicit_params
        - Src:             'openssl_ec_public_key.c:350,3'
          Dst:             EVP_PKEY_free
    - functionName:    openssl_check_explicit_params
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ec_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_PKEY_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ed_private_key.c:218,3'
          Dst:             EVP_PKEY_free
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          138
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_clear
        - chunk_create
        - i2d_PrivateKey
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_ed_private_key.c:170,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ed_private_key.c:178,16'
          Dst:             i2d_PrivateKey
        - Src:             'openssl_ed_private_key.c:178,16'
          Dst:             chunk_create
        - Src:             'openssl_ed_private_key.c:178,16'
          Dst:             i2d_PrivateKey
        - Src:             'openssl_ed_private_key.c:196,5'
          Dst:             chunk_clear
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - openssl_ed_fingerprint
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ed_private_key.c:159,9'
          Dst:             openssl_ed_fingerprint
    - functionName:    get_public_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          99
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - EVP_PKEY_get_raw_public_key
        - chunk_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ed_private_key.c:141,7'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'openssl_ed_private_key.c:145,8'
          Dst:             chunk_create
        - Src:             'openssl_ed_private_key.c:146,7'
          Dst:             EVP_PKEY_get_raw_public_key
    - functionName:    get_keysize
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - openssl_ed_keysize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ed_private_key.c:126,9'
          Dst:             openssl_ed_keysize
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sign
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          172
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - EVP_DigestSign
        - EVP_DigestSignInit
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - chunk_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ed_private_key.c:88,8'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl_ed_private_key.c:90,3'
          Dst:             EVP_DigestSignInit
        - Src:             'openssl_ed_private_key.c:95,6'
          Dst:             EVP_DigestSign
        - Src:             'openssl_ed_private_key.c:100,15'
          Dst:             chunk_create
        - Src:             'openssl_ed_private_key.c:102,6'
          Dst:             EVP_DigestSign
        - Src:             'openssl_ed_private_key.c:111,2'
          Dst:             EVP_MD_CTX_free
    - functionName:    EVP_DigestSign
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_ed_private_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          187
      EdgeCount:       40
      CyclomaticComplexity: 9
      functionsReached:
        - EVP_PKEY_new_raw_private_key
        - asn1_unwrap
        - create_internal
        - d2i_PrivateKey
        - openssl_ed_key_type
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_ed_private_key.c:330,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ed_private_key.c:349,7'
          Dst:             asn1_unwrap
        - Src:             'openssl_ed_private_key.c:351,39'
          Dst:             openssl_ed_key_type
        - Src:             'openssl_ed_private_key.c:351,10'
          Dst:             EVP_PKEY_new_raw_private_key
        - Src:             'openssl_ed_private_key.c:357,24'
          Dst:             openssl_ed_key_type
        - Src:             'openssl_ed_private_key.c:357,9'
          Dst:             d2i_PrivateKey
        - Src:             'openssl_ed_private_key.c:364,9'
          Dst:             create_internal
    - functionName:    create_internal
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          76
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_ed_private_key_gen
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          129
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new_id
        - EVP_PKEY_keygen
        - EVP_PKEY_keygen_init
        - create_internal
        - openssl_ed_key_type
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_ed_private_key.c:290,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ed_private_key.c:304,28'
          Dst:             openssl_ed_key_type
        - Src:             'openssl_ed_private_key.c:304,8'
          Dst:             EVP_PKEY_CTX_new_id
        - Src:             'openssl_ed_private_key.c:306,3'
          Dst:             EVP_PKEY_keygen_init
        - Src:             'openssl_ed_private_key.c:307,3'
          Dst:             EVP_PKEY_keygen
        - Src:             'openssl_ed_private_key.c:310,3'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl_ed_private_key.c:313,2'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl_ed_private_key.c:315,9'
          Dst:             create_internal
    - functionName:    openssl_ed_private_key_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_private_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - EVP_PKEY_base_id
        - EVP_PKEY_free
        - create_internal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'openssl_ed_private_key.c:261,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ed_private_key.c:261,10'
          Dst:             EVP_PKEY_base_id
        - Src:             'openssl_ed_private_key.c:270,4'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_ed_private_key.c:274,9'
          Dst:             create_internal
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_PKEY_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ed_public_key.c:220,3'
          Dst:             EVP_PKEY_free
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_clear
        - chunk_create
        - i2d_PUBKEY
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ed_public_key.c:193,14'
          Dst:             i2d_PUBKEY
        - Src:             'openssl_ed_public_key.c:193,14'
          Dst:             chunk_create
        - Src:             'openssl_ed_public_key.c:193,14'
          Dst:             i2d_PUBKEY
        - Src:             'openssl_ed_public_key.c:202,3'
          Dst:             chunk_clear
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - openssl_ed_fingerprint
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ed_public_key.c:185,9'
          Dst:             openssl_ed_fingerprint
    - functionName:    openssl_ed_fingerprint
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          243
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - EVP_PKEY_get_raw_public_key
        - chunk_create
        - chunk_free
        - i2d_PUBKEY
      functionUses:    2
      BranchProfiles:
        - Branch String:   'openssl_ed_public_key.c:149,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ed_public_key.c:152,9'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'openssl_ed_public_key.c:156,11'
          Dst:             chunk_create
        - Src:             'openssl_ed_public_key.c:157,9'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'openssl_ed_public_key.c:163,11'
          Dst:             i2d_PUBKEY
        - Src:             'openssl_ed_public_key.c:163,11'
          Dst:             chunk_create
        - Src:             'openssl_ed_public_key.c:163,11'
          Dst:             i2d_PUBKEY
        - Src:             'openssl_ed_public_key.c:173,3'
          Dst:             chunk_free
        - Src:             'openssl_ed_public_key.c:177,2'
          Dst:             chunk_free
    - functionName:    get_keysize
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - openssl_ed_keysize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ed_public_key.c:133,9'
          Dst:             openssl_ed_keysize
    - functionName:    openssl_ed_keysize
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          27
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'openssl_ed_public_key.c:77,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    encrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          120
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - EVP_DigestVerify
        - EVP_DigestVerifyInit
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_ed_public_key.c:108,8'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl_ed_public_key.c:110,3'
          Dst:             EVP_DigestVerifyInit
        - Src:             'openssl_ed_public_key.c:111,3'
          Dst:             EVP_DigestVerify
        - Src:             'openssl_ed_public_key.c:114,3'
          Dst:             EVP_MD_CTX_free
        - Src:             'openssl_ed_public_key.c:117,2'
          Dst:             EVP_MD_CTX_free
    - functionName:    EVP_DigestVerify
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_ed_public_key_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          192
      EdgeCount:       40
      CyclomaticComplexity: 9
      functionsReached:
        - EVP_PKEY_base_id
        - EVP_PKEY_free
        - EVP_PKEY_new_raw_public_key
        - create_empty
        - d2i_PUBKEY
        - openssl_ed_key_type
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_ed_public_key.c:263,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_ed_public_key.c:281,37'
          Dst:             openssl_ed_key_type
        - Src:             'openssl_ed_public_key.c:281,9'
          Dst:             EVP_PKEY_new_raw_public_key
        - Src:             'openssl_ed_public_key.c:286,9'
          Dst:             d2i_PUBKEY
        - Src:             'openssl_ed_public_key.c:287,14'
          Dst:             EVP_PKEY_base_id
        - Src:             'openssl_ed_public_key.c:287,39'
          Dst:             openssl_ed_key_type
        - Src:             'openssl_ed_public_key.c:289,4'
          Dst:             EVP_PKEY_free
        - Src:             'openssl_ed_public_key.c:297,9'
          Dst:             create_empty
    - functionName:    openssl_ed_key_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_ed_public_key.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          27
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   'openssl_ed_public_key.c:61,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    openssl_engine_init
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_engine.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_engine_deinit
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_engine.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    login
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_engine.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          132
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ENGINE_ctrl_cmd_string
        - identification_create_from_encoding
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_engine.c:46,7'
          Dst:             identification_create_from_encoding
        - Src:             'openssl_engine.c:53,7'
          Dst:             snprintf
        - Src:             'openssl_engine.c:58,7'
          Dst:             ENGINE_ctrl_cmd_string
    - functionName:    ENGINE_ctrl_cmd_string
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_private_key_connect
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_engine.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          286
      EdgeCount:       53
      CyclomaticComplexity: 13
      functionsReached:
        - ENGINE_by_id
        - ENGINE_finish
        - ENGINE_free
        - ENGINE_init
        - ENGINE_load_private_key
        - chunk_to_hex
        - login
        - memset_noop
        - openssl_wrap_private_key
        - snprintf
        - strlen
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_engine.c:91,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_engine.c:114,2'
          Dst:             memset_noop
        - Src:             'openssl_engine.c:117,3'
          Dst:             snprintf
        - Src:             'openssl_engine.c:119,24'
          Dst:             strlen
        - Src:             'openssl_engine.c:123,32'
          Dst:             strlen
        - Src:             'openssl_engine.c:123,2'
          Dst:             chunk_to_hex
        - Src:             'openssl_engine.c:130,11'
          Dst:             ENGINE_by_id
        - Src:             'openssl_engine.c:136,7'
          Dst:             ENGINE_init
        - Src:             'openssl_engine.c:139,3'
          Dst:             ENGINE_free
        - Src:             'openssl_engine.c:142,2'
          Dst:             ENGINE_free
        - Src:             'openssl_engine.c:143,7'
          Dst:             login
        - Src:             'openssl_engine.c:146,3'
          Dst:             ENGINE_finish
        - Src:             'openssl_engine.c:149,8'
          Dst:             ENGINE_load_private_key
        - Src:             'openssl_engine.c:150,2'
          Dst:             ENGINE_finish
        - Src:             'openssl_engine.c:157,9'
          Dst:             openssl_wrap_private_key
    - functionName:    ENGINE_by_id
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ENGINE_init
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ENGINE_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ENGINE_finish
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ENGINE_load_private_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_hash_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_MD_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hasher.c:47,9'
          Dst:             EVP_MD_size
    - functionName:    EVP_MD_size
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          88
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create
        - chunk_free
        - get_hash
        - get_hash_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hasher.c:79,11'
          Dst:             get_hash_size
        - Src:             'openssl_hasher.c:79,11'
          Dst:             chunk_create
        - Src:             'openssl_hasher.c:80,8'
          Dst:             get_hash
        - Src:             'openssl_hasher.c:82,4'
          Dst:             chunk_free
        - Src:             'openssl_hasher.c:87,9'
          Dst:             get_hash
    - functionName:    get_hash
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - EVP_DigestFinal_ex
        - EVP_DigestUpdate
        - reset
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hasher.c:59,6'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl_hasher.c:65,7'
          Dst:             EVP_DigestFinal_ex
        - Src:             'openssl_hasher.c:69,10'
          Dst:             reset
    - functionName:    EVP_DigestFinal_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reset
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_DigestInit_ex
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hasher.c:53,9'
          Dst:             EVP_DigestInit_ex
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_MD_CTX_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hasher.c:93,2'
          Dst:             EVP_MD_CTX_free
    - functionName:    openssl_hasher_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          84
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_MD_CTX_new
        - destroy
        - openssl_get_md
        - reset
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hasher.c:136,17'
          Dst:             openssl_get_md
        - Src:             'openssl_hasher.c:144,14'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl_hasher.c:147,7'
          Dst:             reset
        - Src:             'openssl_hasher.c:149,3'
          Dst:             destroy
    - functionName:    openssl_get_md
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hasher.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_get_digestbyname
        - enum_to_name
        - strdupnull
        - translate
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hasher.c:105,20'
          Dst:             enum_to_name
        - Src:             'openssl_hasher.c:105,9'
          Dst:             strdupnull
        - Src:             'openssl_hasher.c:111,2'
          Dst:             translate
        - Src:             'openssl_hasher.c:112,7'
          Dst:             EVP_get_digestbyname
    - functionName:    strdupnull
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/string.h:79,13'
          Dst:             strdup
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_mac_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_MD_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hmac.c:143,9'
          Dst:             EVP_MD_size
    - functionName:    reset
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - HMAC_Init_ex
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hmac.c:114,6'
          Dst:             HMAC_Init_ex
    - functionName:    HMAC_Init_ex
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_mac
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          68
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - HMAC_Final
        - HMAC_Update
        - reset
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hmac.c:156,7'
          Dst:             HMAC_Update
        - Src:             'openssl_hmac.c:171,7'
          Dst:             HMAC_Final
        - Src:             'openssl_hmac.c:176,9'
          Dst:             reset
    - functionName:    HMAC_Update
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    HMAC_Final
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - HMAC_CTX_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hmac.c:186,2'
          Dst:             HMAC_CTX_free
    - functionName:    HMAC_CTX_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
        - reset
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hmac.c:128,9'
          Dst:             strlen
        - Src:             'openssl_hmac.c:128,9'
          Dst:             chunk_create
        - Src:             'openssl_hmac.c:130,7'
          Dst:             reset
    - functionName:    openssl_hmac_signer_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hasher_algorithm_from_integrity
        - hmac_create
        - mac_signer_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hmac.c:283,21'
          Dst:             hasher_algorithm_from_integrity
        - Src:             'openssl_hmac.c:283,9'
          Dst:             hmac_create
        - Src:             'openssl_hmac.c:286,10'
          Dst:             mac_signer_create
    - functionName:    hmac_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          95
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - EVP_get_digestbyname
        - HMAC_CTX_new
        - destroy
        - enum_to_name
        - set_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hmac.c:201,9'
          Dst:             enum_to_name
        - Src:             'openssl_hmac.c:237,17'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl_hmac.c:244,15'
          Dst:             HMAC_CTX_new
        - Src:             'openssl_hmac.c:252,7'
          Dst:             set_key
        - Src:             'openssl_hmac.c:254,3'
          Dst:             destroy
    - functionName:    HMAC_CTX_new
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_hmac_prf_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hasher_algorithm_from_prf
        - hmac_create
        - mac_prf_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_hmac.c:267,21'
          Dst:             hasher_algorithm_from_prf
        - Src:             'openssl_hmac.c:267,9'
          Dst:             hmac_create
        - Src:             'openssl_hmac.c:270,10'
          Dst:             mac_prf_create
    - functionName:    sk_X509_free
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:99,1'
          Dst:             OPENSSL_sk_free
    - functionName:    sk_X509_value
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:99,1'
          Dst:             OPENSSL_sk_value
    - functionName:    sk_X509_num
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:99,1'
          Dst:             OPENSSL_sk_num
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_cas
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - add_cert
        - sk_X509_free
        - sk_X509_num
        - sk_X509_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs12.c:90,18'
          Dst:             sk_X509_num
        - Src:             'openssl_pkcs12.c:92,23'
          Dst:             sk_X509_value
        - Src:             'openssl_pkcs12.c:92,8'
          Dst:             add_cert
        - Src:             'openssl_pkcs12.c:97,2'
          Dst:             sk_X509_free
    - functionName:    add_cert
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          134
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - X509_free
        - chunk_create
        - chunk_free
        - i2d_X509
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs12.c:62,13'
          Dst:             i2d_X509
        - Src:             'openssl_pkcs12.c:62,13'
          Dst:             chunk_create
        - Src:             'openssl_pkcs12.c:62,13'
          Dst:             i2d_X509
        - Src:             'openssl_pkcs12.c:73,2'
          Dst:             chunk_free
        - Src:             'openssl_pkcs12.c:74,2'
          Dst:             X509_free
    - functionName:    i2d_X509
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - openssl_wrap_private_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs12.c:112,8'
          Dst:             openssl_wrap_private_key
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    decrypt_and_unpack_pw
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - PKCS12_parse
        - add_cas
        - add_cert
        - add_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs12.c:129,6'
          Dst:             PKCS12_parse
        - Src:             'openssl_pkcs12.c:132,12'
          Dst:             add_key
        - Src:             'openssl_pkcs12.c:133,9'
          Dst:             add_cert
        - Src:             'openssl_pkcs12.c:134,9'
          Dst:             add_cas
    - functionName:    PKCS12_parse
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_key_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_cert_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - PKCS12_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs12.c:221,3'
          Dst:             PKCS12_free
    - functionName:    PKCS12_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decrypt_and_unpack
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          148
      EdgeCount:       23
      CyclomaticComplexity: 3
      functionsReached:
        - asprintf
        - decrypt_and_unpack_pw
        - memwipe
        - strdup
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'openssl_pkcs12.c:155,2'
          Branch Sides:    []
        - Branch String:   'openssl_pkcs12.c:174,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_pkcs12.c:155,10'
          Dst:             decrypt_and_unpack_pw
        - Src:             'openssl_pkcs12.c:170,19'
          Dst:             asprintf
        - Src:             'openssl_pkcs12.c:172,15'
          Dst:             strdup
        - Src:             'openssl_pkcs12.c:174,11'
          Dst:             decrypt_and_unpack_pw
        - Src:             'openssl_pkcs12.c:178,23'
          Dst:             strlen
        - Src:             'openssl_pkcs12.c:178,5'
          Dst:             memwipe
        - Src:             'openssl_pkcs12.c:188,21'
          Dst:             strlen
        - Src:             'openssl_pkcs12.c:188,3'
          Dst:             memwipe
    - functionName:    parse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          95
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BIO_free
        - BIO_new_mem_buf
        - d2i_PKCS12_bio
        - decrypt_and_unpack
        - destroy
        - mem_cred_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs12.c:235,2'
          Dst:             mem_cred_create
        - Src:             'openssl_pkcs12.c:250,8'
          Dst:             BIO_new_mem_buf
        - Src:             'openssl_pkcs12.c:251,14'
          Dst:             d2i_PKCS12_bio
        - Src:             'openssl_pkcs12.c:252,2'
          Dst:             BIO_free
        - Src:             'openssl_pkcs12.c:254,21'
          Dst:             decrypt_and_unpack
        - Src:             'openssl_pkcs12.c:256,3'
          Dst:             destroy
    - functionName:    BIO_new_mem_buf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    d2i_PKCS12_bio
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BIO_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_pkcs12_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          102
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - parse
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_pkcs12.c:271,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_pkcs12.c:283,20'
          Dst:             parse
    - functionName:    get_attribute
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          199
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - CMS_signed_get_attr
        - CMS_signed_get_attr_count
        - X509_ATTRIBUTE_count
        - X509_ATTRIBUTE_get0_object
        - X509_ATTRIBUTE_get0_type
        - asn1_unwrap
        - chunk_create
        - chunk_create_clone
        - i2d_ASN1_TYPE
        - openssl_asn1_known_oid
        - sk_CMS_SignerInfo_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs7.c:463,7'
          Dst:             sk_CMS_SignerInfo_value
        - Src:             'openssl_pkcs7.c:464,18'
          Dst:             CMS_signed_get_attr_count
        - Src:             'openssl_pkcs7.c:466,10'
          Dst:             CMS_signed_get_attr
        - Src:             'openssl_pkcs7.c:467,7'
          Dst:             X509_ATTRIBUTE_count
        - Src:             'openssl_pkcs7.c:468,27'
          Dst:             X509_ATTRIBUTE_get0_object
        - Src:             'openssl_pkcs7.c:468,4'
          Dst:             openssl_asn1_known_oid
        - Src:             'openssl_pkcs7.c:471,11'
          Dst:             X509_ATTRIBUTE_get0_type
        - Src:             'openssl_pkcs7.c:473,22'
          Dst:             i2d_ASN1_TYPE
        - Src:             'openssl_pkcs7.c:473,22'
          Dst:             chunk_create
        - Src:             'openssl_pkcs7.c:473,22'
          Dst:             i2d_ASN1_TYPE
        - Src:             'openssl_pkcs7.c:477,8'
          Dst:             asn1_unwrap
        - Src:             'openssl_pkcs7.c:479,14'
          Dst:             chunk_create_clone
    - functionName:    sk_CMS_SignerInfo_value
      functionSourceFile: '/usr/include/openssl/cms.h'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/cms.h:33,1'
          Dst:             OPENSSL_sk_value
    - functionName:    CMS_signed_get_attr_count
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CMS_signed_get_attr
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_ATTRIBUTE_count
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_ATTRIBUTE_get0_object
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_ATTRIBUTE_get0_type
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i2d_ASN1_TYPE
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 726
      functionLinenumberEnd: 727
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    remove_padding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          84
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    decrypt_symmetric
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 580
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          204
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - encryption_algorithm_from_oid
        - openssl_asn1_known_oid
        - openssl_asn1_str2chunk
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs7.c:545,39'
          Dst:             openssl_asn1_known_oid
        - Src:             'openssl_pkcs7.c:545,9'
          Dst:             encryption_algorithm_from_oid
        - Src:             'openssl_pkcs7.c:551,7'
          Dst:             openssl_asn1_str2chunk
    - functionName:    find_private
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          152
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - identification_create_from_encoding
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs7.c:513,11'
          Dst:             identification_create_from_encoding
    - functionName:    sk_CMS_RecipientInfo_value
      functionSourceFile: '/usr/include/openssl/cms.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/cms.h:35,1'
          Dst:             OPENSSL_sk_value
    - functionName:    sk_CMS_RecipientInfo_num
      functionSourceFile: '/usr/include/openssl/cms.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/cms.h:35,1'
          Dst:             OPENSSL_sk_num
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 697
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          319
      EdgeCount:       50
      CyclomaticComplexity: 15
      functionsReached:
        - CMS_RecipientInfo_ktri_get0_algs
        - CMS_RecipientInfo_ktri_get0_signer_id
        - CMS_RecipientInfo_type
        - CMS_get0_RecipientInfos
        - chunk_clear
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - decrypt_symmetric
        - find_private
        - identification_create_from_encoding
        - openssl_asn1_known_oid
        - openssl_asn1_str2chunk
        - openssl_x509_name2id
        - remove_padding
        - sk_CMS_RecipientInfo_num
        - sk_CMS_RecipientInfo_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs7.c:627,8'
          Dst:             CMS_get0_RecipientInfos
        - Src:             'openssl_pkcs7.c:628,18'
          Dst:             sk_CMS_RecipientInfo_num
        - Src:             'openssl_pkcs7.c:630,8'
          Dst:             sk_CMS_RecipientInfo_value
        - Src:             'openssl_pkcs7.c:631,7'
          Dst:             CMS_RecipientInfo_type
        - Src:             'openssl_pkcs7.c:641,8'
          Dst:             CMS_RecipientInfo_ktri_get0_algs
        - Src:             'openssl_pkcs7.c:642,5'
          Dst:             CMS_RecipientInfo_ktri_get0_signer_id
        - Src:             'openssl_pkcs7.c:644,11'
          Dst:             openssl_asn1_known_oid
        - Src:             'openssl_pkcs7.c:650,14'
          Dst:             openssl_x509_name2id
        - Src:             'openssl_pkcs7.c:655,13'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_pkcs7.c:658,14'
          Dst:             chunk_create
        - Src:             'openssl_pkcs7.c:658,14'
          Dst:             chunk_length
        - Src:             'openssl_pkcs7.c:658,14'
          Dst:             chunk_create
        - Src:             'openssl_pkcs7.c:658,14'
          Dst:             chunk_create_cat
        - Src:             'openssl_pkcs7.c:660,14'
          Dst:             identification_create_from_encoding
        - Src:             'openssl_pkcs7.c:661,15'
          Dst:             find_private
        - Src:             'openssl_pkcs7.c:668,14'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_pkcs7.c:685,7'
          Dst:             decrypt_symmetric
        - Src:             'openssl_pkcs7.c:687,3'
          Dst:             chunk_clear
        - Src:             'openssl_pkcs7.c:690,2'
          Dst:             chunk_clear
        - Src:             'openssl_pkcs7.c:691,7'
          Dst:             remove_padding
    - functionName:    CMS_get0_RecipientInfos
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CMS_RecipientInfo_type
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CMS_RecipientInfo_ktri_get0_algs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CMS_RecipientInfo_ktri_get0_signer_id
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 722
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          110
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - CMS_get0_content
        - chunk_create_clone
        - decrypt
        - openssl_asn1_str2chunk
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_pkcs7.c:709,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_pkcs7.c:705,7'
          Dst:             CMS_get0_content
        - Src:             'openssl_pkcs7.c:708,11'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_pkcs7.c:713,13'
          Dst:             chunk_create_clone
        - Src:             'openssl_pkcs7.c:716,12'
          Dst:             decrypt
    - functionName:    CMS_get0_content
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cert_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_X509_value
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:99,1'
          Dst:             OPENSSL_sk_value
    - functionName:    sk_X509_num
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:99,1'
          Dst:             OPENSSL_sk_num
    - functionName:    cert_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          206
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - i2d_X509
        - sk_X509_num
        - sk_X509_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs7.c:150,19'
          Dst:             sk_X509_num
        - Src:             'openssl_pkcs7.c:159,10'
          Dst:             sk_X509_value
        - Src:             'openssl_pkcs7.c:160,14'
          Dst:             i2d_X509
        - Src:             'openssl_pkcs7.c:160,14'
          Dst:             chunk_create
        - Src:             'openssl_pkcs7.c:160,14'
          Dst:             i2d_X509
    - functionName:    signature_destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    constant_time_neq64
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/utils/constant_time.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_equals_const
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - constant_time_neq64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:385,10'
          Dst:             constant_time_neq64
    - functionName:    verify_digest
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          151
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - CMS_get0_content
        - CMS_signed_get0_data_by_OBJ
        - OBJ_nid2obj
        - chunk_equals_const
        - hasher_algorithm_from_oid
        - openssl_asn1_str2chunk
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs7.c:293,5'
          Dst:             OBJ_nid2obj
        - Src:             'openssl_pkcs7.c:292,7'
          Dst:             CMS_signed_get0_data_by_OBJ
        - Src:             'openssl_pkcs7.c:298,11'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_pkcs7.c:299,8'
          Dst:             CMS_get0_content
        - Src:             'openssl_pkcs7.c:304,12'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_pkcs7.c:306,13'
          Dst:             hasher_algorithm_from_oid
        - Src:             'openssl_pkcs7.c:321,7'
          Dst:             chunk_equals_const
    - functionName:    OBJ_nid2obj
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CMS_signed_get0_data_by_OBJ
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          332
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - CMS_SignerInfo_get0_signer_id
        - CMS_signed_get_attr
        - CMS_signed_get_attr_count
        - asn1_wrap
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - i2d_X509_ATTRIBUTE
        - identification_create_from_encoding
        - key_type_from_signature_scheme
        - openssl_asn1_str2chunk
        - openssl_x509_name2id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs7.c:229,6'
          Dst:             CMS_SignerInfo_get0_signer_id
        - Src:             'openssl_pkcs7.c:233,11'
          Dst:             openssl_x509_name2id
        - Src:             'openssl_pkcs7.c:239,21'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_pkcs7.c:238,11'
          Dst:             identification_create_from_encoding
        - Src:             'openssl_pkcs7.c:242,18'
          Dst:             CMS_signed_get_attr_count
        - Src:             'openssl_pkcs7.c:244,10'
          Dst:             CMS_signed_get_attr
        - Src:             'openssl_pkcs7.c:244,10'
          Dst:             i2d_X509_ATTRIBUTE
        - Src:             'openssl_pkcs7.c:244,10'
          Dst:             chunk_create
        - Src:             'openssl_pkcs7.c:244,10'
          Dst:             CMS_signed_get_attr
        - Src:             'openssl_pkcs7.c:244,10'
          Dst:             i2d_X509_ATTRIBUTE
        - Src:             'openssl_pkcs7.c:245,11'
          Dst:             chunk_length
        - Src:             'openssl_pkcs7.c:245,11'
          Dst:             chunk_create_cat
        - Src:             'openssl_pkcs7.c:248,10'
          Dst:             asn1_wrap
        - Src:             'openssl_pkcs7.c:251,8'
          Dst:             openssl_asn1_str2chunk
        - Src:             'openssl_pkcs7.c:253,9'
          Dst:             key_type_from_signature_scheme
    - functionName:    CMS_SignerInfo_get0_signer_id
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    i2d_X509_ATTRIBUTE
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_CMS_SignerInfo_num
      functionSourceFile: '/usr/include/openssl/cms.h'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/cms.h:33,1'
          Dst:             OPENSSL_sk_num
    - functionName:    signature_enumerate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          249
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - CMS_SignerInfo_get0_algs
        - chunk_create
        - i2d_X509_ALGOR
        - openssl_asn1_known_oid
        - signature_params_clear
        - signature_params_parse
        - signature_scheme_from_oid
        - sk_CMS_SignerInfo_num
        - sk_CMS_SignerInfo_value
        - verify_digest
        - verify_signature
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs7.c:342,19'
          Dst:             sk_CMS_SignerInfo_num
        - Src:             'openssl_pkcs7.c:354,8'
          Dst:             sk_CMS_SignerInfo_value
        - Src:             'openssl_pkcs7.c:356,3'
          Dst:             CMS_SignerInfo_get0_algs
        - Src:             'openssl_pkcs7.c:357,14'
          Dst:             openssl_asn1_known_oid
        - Src:             'openssl_pkcs7.c:358,7'
          Dst:             openssl_asn1_known_oid
        - Src:             'openssl_pkcs7.c:362,21'
          Dst:             signature_scheme_from_oid
        - Src:             'openssl_pkcs7.c:366,17'
          Dst:             i2d_X509_ALGOR
        - Src:             'openssl_pkcs7.c:366,17'
          Dst:             chunk_create
        - Src:             'openssl_pkcs7.c:366,17'
          Dst:             i2d_X509_ALGOR
        - Src:             'openssl_pkcs7.c:367,9'
          Dst:             signature_params_parse
        - Src:             'openssl_pkcs7.c:374,16'
          Dst:             verify_signature
        - Src:             'openssl_pkcs7.c:375,3'
          Dst:             signature_params_clear
        - Src:             'openssl_pkcs7.c:381,8'
          Dst:             verify_digest
    - functionName:    CMS_SignerInfo_get0_algs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_cert_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - CMS_get1_certs
        - enumerator_create_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs7.c:182,3'
          Dst:             CMS_get1_certs
        - Src:             'openssl_pkcs7.c:192,9'
          Dst:             enumerator_create_empty
    - functionName:    CMS_get1_certs
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_signature_enumerator
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          131
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - CMS_get0_SignerInfos
        - create_cert_enumerator
        - enumerator_create_empty
        - mem_cred_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs7.c:410,3'
          Dst:             CMS_get0_SignerInfos
        - Src:             'openssl_pkcs7.c:410,3'
          Dst:             mem_cred_create
        - Src:             'openssl_pkcs7.c:422,11'
          Dst:             create_cert_enumerator
        - Src:             'openssl_pkcs7.c:435,9'
          Dst:             enumerator_create_empty
    - functionName:    CMS_get0_SignerInfos
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 758
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 732
      functionLinenumberEnd: 735
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - CMS_ContentInfo_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl_pkcs7.c:733,2'
          Dst:             CMS_ContentInfo_free
    - functionName:    CMS_ContentInfo_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 765
      functionLinenumberEnd: 792
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - BIO_free
        - BIO_new_mem_buf
        - CMS_get0_type
        - d2i_CMS_bio
        - openssl_asn1_known_oid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'openssl_pkcs7.c:776,2'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_pkcs7.c:768,8'
          Dst:             BIO_new_mem_buf
        - Src:             'openssl_pkcs7.c:769,14'
          Dst:             d2i_CMS_bio
        - Src:             'openssl_pkcs7.c:770,2'
          Dst:             BIO_free
        - Src:             'openssl_pkcs7.c:776,47'
          Dst:             CMS_get0_type
        - Src:             'openssl_pkcs7.c:776,10'
          Dst:             openssl_asn1_known_oid
    - functionName:    d2i_CMS_bio
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CMS_get0_type
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    openssl_pkcs7_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/openssl/openssl_pkcs7.c'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 826
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          115
      EdgeCount:       24
      CyclomaticComplexity: 5
      functionsReached:
        - create_empty
        - destroy
        - parse
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl_pkcs7.c:804,3'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl_pkcs7.c:818,10'
          Dst:             create_empty
        - Src:             'openssl_pkcs7.c:819,7'
          Dst:             parse
        - Src:             'openssl_pkcs7.c:823,3'
          Dst:             destroy
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_ctr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encrypt_ctr
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_ctr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          201
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_create
        - chunk_increment
        - memcpy_noop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'drbg_ctr.c:95,15'
          Dst:             chunk_create
        - Src:             'drbg_ctr.c:107,3'
          Dst:             chunk_increment
        - Src:             'drbg_ctr.c:112,12'
          Dst:             chunk_create
        - Src:             'drbg_ctr.c:113,3'
          Dst:             memcpy_noop
        - Src:             'drbg_ctr.c:124,4'
          Dst:             memcpy_noop
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_ctr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          115
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_create
        - encrypt_ctr
        - reseed
        - update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'drbg_ctr.c:203,8'
          Dst:             reseed
        - Src:             'drbg_ctr.c:214,11'
          Dst:             chunk_create
        - Src:             'drbg_ctr.c:216,7'
          Dst:             encrypt_ctr
        - Src:             'drbg_ctr.c:222,7'
          Dst:             update
    - functionName:    reseed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_ctr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          100
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_clear
        - chunk_create
        - chunk_free
        - update
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'drbg_ctr.c:168,9'
          Dst:             chunk_create
        - Src:             'drbg_ctr.c:173,3'
          Dst:             chunk_free
        - Src:             'drbg_ctr.c:178,12'
          Dst:             update
        - Src:             'drbg_ctr.c:179,2'
          Dst:             chunk_clear
    - functionName:    update
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_ctr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          145
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - encrypt_ctr
        - memcpy_noop
        - memwipe
        - memxor
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'drbg_ctr.c:143,9'
          Dst:             chunk_create
        - Src:             'drbg_ctr.c:145,7'
          Dst:             encrypt_ctr
        - Src:             'drbg_ctr.c:150,2'
          Dst:             memxor
        - Src:             'drbg_ctr.c:153,2'
          Dst:             memcpy_noop
        - Src:             'drbg_ctr.c:154,2'
          Dst:             memcpy_noop
        - Src:             'drbg_ctr.c:155,2'
          Dst:             memwipe
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    get_strength
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_ctr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_ctr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_ctr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_clear
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'drbg_ctr.c:245,3'
          Dst:             chunk_clear
        - Src:             'drbg_ctr.c:246,3'
          Dst:             chunk_clear
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drbg_ctr_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_ctr.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          339
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - chunk_clear
        - chunk_create
        - chunk_free
        - destroy
        - memset_noop
        - memxor
        - update
      functionUses:    0
      BranchProfiles:
        - Branch String:   'drbg_ctr.c:265,2'
          Branch Sides:    []
      Callsites:
        - Src:             'drbg_ctr.c:313,2'
          Dst:             chunk_create
        - Src:             'drbg_ctr.c:313,2'
          Dst:             chunk_create
        - Src:             'drbg_ctr.c:334,2'
          Dst:             memset_noop
        - Src:             'drbg_ctr.c:335,2'
          Dst:             memset_noop
        - Src:             'drbg_ctr.c:337,9'
          Dst:             chunk_create
        - Src:             'drbg_ctr.c:342,3'
          Dst:             chunk_free
        - Src:             'drbg_ctr.c:343,3'
          Dst:             destroy
        - Src:             'drbg_ctr.c:346,2'
          Dst:             memxor
        - Src:             'drbg_ctr.c:349,12'
          Dst:             update
        - Src:             'drbg_ctr.c:350,2'
          Dst:             chunk_clear
        - Src:             'drbg_ctr.c:354,3'
          Dst:             destroy
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    generate
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          172
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - memcpy_noop
        - reseed
        - update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'drbg_hmac.c:170,8'
          Dst:             reseed
        - Src:             'drbg_hmac.c:192,3'
          Dst:             memcpy_noop
        - Src:             'drbg_hmac.c:198,7'
          Dst:             update
    - functionName:    reseed
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          96
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_clear
        - chunk_create
        - chunk_free
        - update
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'drbg_hmac.c:135,9'
          Dst:             chunk_create
        - Src:             'drbg_hmac.c:140,3'
          Dst:             chunk_free
        - Src:             'drbg_hmac.c:145,12'
          Dst:             update
        - Src:             'drbg_hmac.c:146,2'
          Dst:             chunk_clear
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          327
      EdgeCount:       46
      CyclomaticComplexity: 15
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    get_strength
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_clear
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'drbg_hmac.c:221,3'
          Dst:             chunk_clear
        - Src:             'drbg_hmac.c:222,3'
          Dst:             chunk_clear
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drbg_hmac_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/drbg/drbg_hmac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          337
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - chunk_clear
        - chunk_create
        - chunk_free
        - destroy
        - memcpy_noop
        - memset_noop
        - update
      functionUses:    0
      BranchProfiles:
        - Branch String:   'drbg_hmac.c:241,2'
          Branch Sides:    []
      Callsites:
        - Src:             'drbg_hmac.c:281,2'
          Dst:             chunk_create
        - Src:             'drbg_hmac.c:281,2'
          Dst:             chunk_create
        - Src:             'drbg_hmac.c:302,2'
          Dst:             memset_noop
        - Src:             'drbg_hmac.c:303,2'
          Dst:             memset_noop
        - Src:             'drbg_hmac.c:306,9'
          Dst:             chunk_create
        - Src:             'drbg_hmac.c:311,3'
          Dst:             chunk_free
        - Src:             'drbg_hmac.c:312,3'
          Dst:             destroy
        - Src:             'drbg_hmac.c:315,2'
          Dst:             memcpy_noop
        - Src:             'drbg_hmac.c:319,12'
          Dst:             update
        - Src:             'drbg_hmac.c:320,2'
          Dst:             chunk_clear
        - Src:             'drbg_hmac.c:324,3'
          Dst:             destroy
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/prfs/mac_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/prfs/mac_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_key_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/prfs/mac_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_block_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/prfs/mac_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/prfs/mac_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          104
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/prfs/mac_prf.c:50,12'
          Dst:             chunk_create
    - functionName:    get_bytes
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/prfs/mac_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mac_prf_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/prfs/mac_prf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_pbkdf2_params
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          181
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - asn1_parse_algorithmIdentifier
        - asn1_parse_integer_uint64
        - asn1_parser_create
        - chunk_create_clone
        - pseudo_random_function_from_oid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/pkcs5.c:470,3'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/pkcs5.c:460,11'
          Dst:             asn1_parser_create
        - Src:             'crypto/pkcs5.c:474,18'
          Dst:             chunk_create_clone
        - Src:             'crypto/pkcs5.c:479,24'
          Dst:             asn1_parse_integer_uint64
        - Src:             'crypto/pkcs5.c:484,28'
          Dst:             asn1_parse_integer_uint64
        - Src:             'crypto/pkcs5.c:491,11'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'crypto/pkcs5.c:493,32'
          Dst:             pseudo_random_function_from_oid
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_padding
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          117
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    pbkdf2_f
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          135
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - memcpy_noop
        - memxor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/pkcs5.c:195,6'
          Dst:             chunk_create
        - Src:             'crypto/pkcs5.c:200,2'
          Dst:             memcpy_noop
        - Src:             'crypto/pkcs5.c:208,3'
          Dst:             memxor
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htoun32
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/byteorder.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/byteorder.h:132,9'
          Dst:             htonl
    - functionName:    decrypt_generic
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      bool
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          123
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_free
        - memwipe
        - verify_padding
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/pkcs5.c:158,3'
          Dst:             memwipe
        - Src:             'crypto/pkcs5.c:161,2'
          Dst:             memwipe
        - Src:             'crypto/pkcs5.c:162,6'
          Dst:             verify_padding
        - Src:             'crypto/pkcs5.c:166,2'
          Dst:             chunk_free
    - functionName:    pbkdf2
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          215
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - chunk_create_cat
        - chunk_length
        - htoun32
        - memcpy_noop
        - pbkdf2_f
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/pkcs5.c:232,11'
          Dst:             chunk_create
        - Src:             'crypto/pkcs5.c:234,9'
          Dst:             chunk_create
        - Src:             'crypto/pkcs5.c:234,9'
          Dst:             chunk_length
        - Src:             'crypto/pkcs5.c:234,9'
          Dst:             chunk_create
        - Src:             'crypto/pkcs5.c:234,9'
          Dst:             chunk_create_cat
        - Src:             'crypto/pkcs5.c:238,3'
          Dst:             htoun32
        - Src:             'crypto/pkcs5.c:240,8'
          Dst:             pbkdf2_f
        - Src:             'crypto/pkcs5.c:245,2'
          Dst:             memcpy_noop
    - functionName:    pkcs12_kdf
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          106
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create
        - pkcs12_derive_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/pkcs5.c:177,8'
          Dst:             chunk_create
        - Src:             'crypto/pkcs5.c:178,7'
          Dst:             chunk_create
        - Src:             'crypto/pkcs5.c:180,9'
          Dst:             pkcs12_derive_key
        - Src:             'crypto/pkcs5.c:182,6'
          Dst:             pkcs12_derive_key
    - functionName:    pbkdf1
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          153
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - chunk_create
        - memcpy_noop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/pkcs5.c:260,9'
          Dst:             chunk_create
        - Src:             'crypto/pkcs5.c:274,2'
          Dst:             memcpy_noop
    - functionName:    ensure_crypto_primitives
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          216
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/pkcs5.c:296,2'
          Branch Sides:    []
      Callsites:       []
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          210
      EdgeCount:       27
      CyclomaticComplexity: 6
      functionsReached:
        - chunk_create
        - decrypt_generic
        - ensure_crypto_primitives
      functionUses:    0
      BranchProfiles:
        - Branch String:   'crypto/pkcs5.c:357,2'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/pkcs5.c:352,20'
          Dst:             ensure_crypto_primitives
        - Src:             'crypto/pkcs5.c:363,13'
          Dst:             chunk_create
        - Src:             'crypto/pkcs5.c:365,10'
          Dst:             chunk_create
        - Src:             'crypto/pkcs5.c:366,9'
          Dst:             chunk_create
        - Src:             'crypto/pkcs5.c:371,13'
          Dst:             chunk_create
        - Src:             'crypto/pkcs5.c:378,9'
          Dst:             decrypt_generic
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          116
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_free
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/pkcs5.c:602,2'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/pkcs5.c:601,2'
          Dst:             chunk_free
        - Src:             'crypto/pkcs5.c:609,4'
          Dst:             chunk_free
    - functionName:    parse_pbes2_params
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          269
      EdgeCount:       39
      CyclomaticComplexity: 8
      functionsReached:
        - asn1_parse_algorithmIdentifier
        - asn1_parse_simple_object
        - asn1_parser_create
        - chunk_create_clone
        - encryption_algorithm_from_oid
        - parse_pbkdf2_params
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/pkcs5.c:536,3'
          Branch Sides:    []
        - Branch String:   'crypto/pkcs5.c:566,6'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/pkcs5.c:531,11'
          Dst:             asn1_parser_create
        - Src:             'crypto/pkcs5.c:540,15'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'crypto/pkcs5.c:546,10'
          Dst:             parse_pbkdf2_params
        - Src:             'crypto/pkcs5.c:555,15'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'crypto/pkcs5.c:557,18'
          Dst:             encryption_algorithm_from_oid
        - Src:             'crypto/pkcs5.c:581,10'
          Dst:             asn1_parse_simple_object
        - Src:             'crypto/pkcs5.c:586,27'
          Dst:             chunk_create_clone
    - functionName:    parse_pbes1_params
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          124
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - asn1_parse_integer_uint64
        - asn1_parser_create
        - chunk_create_clone
      functionUses:    1
      BranchProfiles:
        - Branch String:   'crypto/pkcs5.c:409,3'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/pkcs5.c:404,11'
          Dst:             asn1_parser_create
        - Src:             'crypto/pkcs5.c:413,18'
          Dst:             chunk_create_clone
        - Src:             'crypto/pkcs5.c:418,24'
          Dst:             asn1_parse_integer_uint64
    - functionName:    pkcs5_from_algorithmIdentifier
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/pkcs5.c'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 689
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          204
      EdgeCount:       24
      CyclomaticComplexity: 2
      functionsReached:
        - asn1_parse_algorithmIdentifier
        - destroy
        - parse_pbes1_params
        - parse_pbes2_params
      functionUses:    2
      BranchProfiles:
        - Branch String:   'crypto/pkcs5.c:637,2'
          Branch Sides:    []
        - Branch String:   'crypto/pkcs5.c:668,2'
          Branch Sides:    []
      Callsites:
        - Src:             'crypto/pkcs5.c:635,8'
          Dst:             asn1_parse_algorithmIdentifier
        - Src:             'crypto/pkcs5.c:672,9'
          Dst:             parse_pbes1_params
        - Src:             'crypto/pkcs5.c:678,9'
          Dst:             parse_pbes2_params
        - Src:             'crypto/pkcs5.c:687,2'
          Dst:             destroy
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/signers/mac_signer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/signers/mac_signer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_key_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/signers/mac_signer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_block_size
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/signers/mac_signer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    verify_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/signers/mac_signer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          93
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memeq_const
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/signers/mac_signer.c:89,6'
          Dst:             memeq_const
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    allocate_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/signers/mac_signer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          129
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/signers/mac_signer.c:72,12'
          Dst:             chunk_create
        - Src:             'crypto/signers/mac_signer.c:73,3'
          Dst:             memcpy_noop
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_signature
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/signers/mac_signer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          99
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcpy_noop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypto/signers/mac_signer.c:55,3'
          Dst:             memcpy_noop
    - functionName:    mac_signer_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/crypto/signers/mac_signer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          85
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/certificates/ocsp_single_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_ref
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/certificates/ocsp_single_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ocsp_single_response_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/certificates/ocsp_single_response.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_chunks
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/containers/pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          139
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chunk_skip
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memcpy_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    copy_chunk
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/containers/pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          47
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memset_noop
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    derive_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/containers/pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - size_t
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          507
      EdgeCount:       62
      CyclomaticComplexity: 13
      functionsReached:
        - add_chunks
        - chunk_create
        - chunk_skip
        - copy_chunk
        - memcpy_noop
        - memset_noop
      functionUses:    1
      BranchProfiles:
        - Branch String:   'credentials/containers/pkcs12.c:84,2'
          Branch Sides:    []
      Callsites:
        - Src:             'credentials/containers/pkcs12.c:101,6'
          Dst:             chunk_create
        - Src:             'credentials/containers/pkcs12.c:102,2'
          Dst:             memset_noop
        - Src:             'credentials/containers/pkcs12.c:105,6'
          Dst:             chunk_create
        - Src:             'credentials/containers/pkcs12.c:106,6'
          Dst:             chunk_create
        - Src:             'credentials/containers/pkcs12.c:107,6'
          Dst:             chunk_create
        - Src:             'credentials/containers/pkcs12.c:108,2'
          Dst:             copy_chunk
        - Src:             'credentials/containers/pkcs12.c:109,2'
          Dst:             copy_chunk
        - Src:             'credentials/containers/pkcs12.c:111,7'
          Dst:             chunk_create
        - Src:             'credentials/containers/pkcs12.c:112,6'
          Dst:             chunk_create
        - Src:             'credentials/containers/pkcs12.c:128,3'
          Dst:             memcpy_noop
        - Src:             'credentials/containers/pkcs12.c:129,9'
          Dst:             chunk_skip
        - Src:             'credentials/containers/pkcs12.c:134,3'
          Dst:             copy_chunk
        - Src:             'credentials/containers/pkcs12.c:136,3'
          Dst:             add_chunks
        - Src:             'credentials/containers/pkcs12.c:137,8'
          Dst:             chunk_create
        - Src:             'credentials/containers/pkcs12.c:140,4'
          Dst:             add_chunks
    - functionName:    chunk_create
      functionSourceFile: '/src/strongswan/src/libstrongswan/./utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pkcs12_derive_key
      functionSourceFile: '/src/strongswan/src/libstrongswan/credentials/containers/pkcs12.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          149
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - chunk_create
        - derive_key
        - memwipe
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'credentials/containers/pkcs12.c:161,13'
          Dst:             chunk_create
        - Src:             'credentials/containers/pkcs12.c:171,12'
          Dst:             derive_key
        - Src:             'credentials/containers/pkcs12.c:172,2'
          Dst:             memwipe
    - functionName:    extract_parameter_value
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/lexparser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - extract_token
        - extract_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/lexparser.c:165,7'
          Dst:             extract_token
        - Src:             'utils/lexparser.c:171,9'
          Dst:             extract_value
    - functionName:    extract_token
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/lexparser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          128
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - memchr
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/lexparser.c:52,16'
          Dst:             memchr
        - Src:             'utils/lexparser.c:56,21'
          Dst:             memchr
    - functionName:    extract_value
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/lexparser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          105
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - eat_whitespace
        - extract_token
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/lexparser.c:134,7'
          Dst:             eat_whitespace
        - Src:             'utils/lexparser.c:144,7'
          Dst:             extract_token
    - functionName:    eat_whitespace
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/lexparser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          80
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fetchline
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/lexparser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          89
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - extract_token
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/lexparser.c:116,6'
          Dst:             extract_token
    - functionName:    extract_token_str
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/lexparser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          82
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memstr
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/lexparser.c:86,16'
          Dst:             memstr
        - Src:             'utils/lexparser.c:87,13'
          Dst:             strlen
    - functionName:    matchcase
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/lexparser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strlen
        - strncasecmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/lexparser.c:44,20'
          Dst:             strlen
        - Src:             'utils/lexparser.c:44,39'
          Dst:             strncasecmp
    - functionName:    match
      functionSourceFile: '/src/strongswan/src/libstrongswan/utils/lexparser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strlen
        - strncmp
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'utils/lexparser.c:36,20'
          Dst:             strlen
        - Src:             'utils/lexparser.c:36,39'
          Dst:             strncmp
    - functionName:    chunk_free
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    memwipe
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/utils/memory.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/utils/memory.h:104,3'
          Dst:             explicit_bzero
    - functionName:    chunk_clear
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/../../../../src/libstrongswan/utils/chunk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_free
        - memwipe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:245,3'
          Dst:             memwipe
        - Src:             '../../../../src/libstrongswan/utils/chunk.h:246,3'
          Dst:             chunk_free
    - functionName:    decrypt
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_encrypted_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          122
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_encoding
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_encrypted_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_encrypted_data.c:171,10'
          Dst:             chunk_create_clone
    - functionName:    get_data
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_encrypted_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_encrypted_data.c:162,11'
          Dst:             chunk_create_clone
    - functionName:    get_type
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_encrypted_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    create_empty
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_encrypted_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    destroy
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_encrypted_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chunk_clear
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_encrypted_data.c:178,2'
          Dst:             chunk_clear
    - functionName:    parse
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_encrypted_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          194
      EdgeCount:       34
      CyclomaticComplexity: 8
      functionsReached:
        - asn1_known_oid
        - asn1_parser_create
        - decrypt
        - pkcs5_from_algorithmIdentifier
      functionUses:    1
      BranchProfiles:
        - Branch String:   'pkcs7_encrypted_data.c:111,3'
          Branch Sides:    []
      Callsites:
        - Src:             'pkcs7_encrypted_data.c:105,11'
          Dst:             asn1_parser_create
        - Src:             'pkcs7_encrypted_data.c:123,9'
          Dst:             asn1_known_oid
        - Src:             'pkcs7_encrypted_data.c:130,13'
          Dst:             pkcs5_from_algorithmIdentifier
        - Src:             'pkcs7_encrypted_data.c:146,23'
          Dst:             decrypt
    - functionName:    pkcs7_encrypted_data_load
      functionSourceFile: '/src/strongswan/src/libstrongswan/plugins/pkcs7/pkcs7_encrypted_data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chunk_create_clone
        - create_empty
        - destroy
        - parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pkcs7_encrypted_data.c:212,41'
          Dst:             create_empty
        - Src:             'pkcs7_encrypted_data.c:214,19'
          Dst:             chunk_create_clone
        - Src:             'pkcs7_encrypted_data.c:215,7'
          Dst:             parse
        - Src:             'pkcs7_encrypted_data.c:217,3'
          Dst:             destroy
...
