---
Fuzzer filename: '/src/libssh2/tests/ossfuzz/ssh2_client_fuzzer.cc'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/libssh2/tests/ossfuzz/ssh2_client_fuzzer.cc'
      linkageType:     externalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          149
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - close
        - fprintf
        - libssh2_exit
        - libssh2_init
        - libssh2_session_disconnect_ex
        - libssh2_session_free
        - libssh2_session_handshake
        - libssh2_session_init_ex
        - libssh2_session_set_blocking
        - send
        - shutdown
        - socketpair
        - strerror
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'ssh2_client_fuzzer.cc:34,10'
          Dst:             libssh2_init
        - Src:             'ssh2_client_fuzzer.cc:37,9'
          Dst:             fprintf
        - Src:             'ssh2_client_fuzzer.cc:42,10'
          Dst:             socketpair
        - Src:             'ssh2_client_fuzzer.cc:43,5'
          Dst:             __errno_location
        - Src:             'ssh2_client_fuzzer.cc:43,5'
          Dst:             strerror
        - Src:             'ssh2_client_fuzzer.cc:43,5'
          Dst:             fprintf
        - Src:             'ssh2_client_fuzzer.cc:45,15'
          Dst:             send
        - Src:             'ssh2_client_fuzzer.cc:52,17'
          Dst:             __errno_location
        - Src:             'ssh2_client_fuzzer.cc:49,9'
          Dst:             fprintf
        - Src:             'ssh2_client_fuzzer.cc:56,10'
          Dst:             shutdown
        - Src:             'ssh2_client_fuzzer.cc:58,9'
          Dst:             fprintf
        - Src:             'ssh2_client_fuzzer.cc:64,15'
          Dst:             libssh2_session_init_ex
        - Src:             'ssh2_client_fuzzer.cc:66,9'
          Dst:             libssh2_session_set_blocking
        - Src:             'ssh2_client_fuzzer.cc:72,8'
          Dst:             libssh2_session_handshake
        - Src:             'ssh2_client_fuzzer.cc:83,13'
          Dst:             libssh2_session_disconnect_ex
        - Src:             'ssh2_client_fuzzer.cc:88,9'
          Dst:             libssh2_session_free
        - Src:             'ssh2_client_fuzzer.cc:91,5'
          Dst:             libssh2_exit
        - Src:             'ssh2_client_fuzzer.cc:93,5'
          Dst:             close
        - Src:             'ssh2_client_fuzzer.cc:94,5'
          Dst:             close
    - 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:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    socketpair
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - 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:    5
      BranchProfiles:  []
      Callsites:       []
    - 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:    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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    shutdown
      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:    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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_init_if_needed
      functionSourceFile: '/src/libssh2/src/global.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - libssh2_init
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'global.c:77,15'
          Dst:             libssh2_init
    - functionName:    libssh2_init
      functionSourceFile: '/src/libssh2/src/global.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - _libssh2_openssl_crypto_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'global.c:50,9'
          Dst:             _libssh2_openssl_crypto_init
    - functionName:    libssh2_exit
      functionSourceFile: '/src/libssh2/src/global.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          44
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - _libssh2_openssl_crypto_exit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'global.c:69,9'
          Dst:             _libssh2_openssl_crypto_exit
    - functionName:    gen_publickey_from_rsa
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1266
      functionLinenumberEnd: 1324
      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:
        - BN_num_bits
        - RSA_get0_key
        - _libssh2_htonu32
        - write_bn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1285,5'
          Dst:             RSA_get0_key
        - Src:             'openssl.c:1295,15'
          Dst:             BN_num_bits
        - Src:             'openssl.c:1296,15'
          Dst:             BN_num_bits
        - Src:             'openssl.c:1309,5'
          Dst:             _libssh2_htonu32
        - Src:             'openssl.c:1315,9'
          Dst:             write_bn
        - Src:             'openssl.c:1316,9'
          Dst:             write_bn
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - 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:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    write_bn
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BN_bn2bin
        - _libssh2_htonu32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:236,5'
          Dst:             BN_bn2bin
        - Src:             'openssl.c:240,5'
          Dst:             _libssh2_htonu32
    - 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:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gen_publickey_from_sk_ecdsa_openssh_priv_data
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3898
      functionLinenumberEnd: 4027
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         74
      ICount:          470
      EdgeCount:       102
      CyclomaticComplexity: 30
      functionsReached:
        - EC_KEY_free
        - EVP_PKEY_free
        - EVP_PKEY_new
        - EVP_PKEY_set1_EC_KEY
        - _libssh2_debug_low
        - _libssh2_ecdsa_curve_name_with_octal_new
        - _libssh2_error
        - _libssh2_get_byte
        - _libssh2_get_string
        - _libssh2_store_str
        - explicit_bzero
        - gen_publickey_from_ec_evp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3904,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:3908,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3910,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3915,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3916,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3921,10'
          Dst:             _libssh2_ecdsa_curve_name_with_octal_new
        - Src:             'openssl.c:3926,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3931,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3932,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3937,17'
          Dst:             _libssh2_get_byte
        - Src:             'openssl.c:3938,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3945,12'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3946,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3965,24'
          Dst:             EVP_PKEY_new
        - Src:             'openssl.c:3966,9'
          Dst:             EVP_PKEY_set1_EC_KEY
        - Src:             'openssl.c:3969,14'
          Dst:             gen_publickey_from_ec_evp
        - Src:             'openssl.c:3975,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:3991,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:3995,13'
          Dst:             explicit_bzero
        - Src:             'openssl.c:4008,9'
          Dst:             EC_KEY_free
        - Src:             'openssl.c:4014,9'
          Dst:             EC_KEY_free
    - functionName:    _libssh2_ecdsa_curve_name_with_octal_new
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 799
      functionLinenumberEnd: 881
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          108
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - EC_KEY_free
        - EC_KEY_get0_group
        - EC_KEY_new_by_curve_name
        - EC_KEY_set_public_key
        - EC_POINT_free
        - EC_POINT_new
        - EC_POINT_oct2point
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:851,22'
          Dst:             EC_KEY_new_by_curve_name
        - Src:             'openssl.c:857,20'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl.c:858,17'
          Dst:             EC_POINT_new
        - Src:             'openssl.c:861,19'
          Dst:             EC_POINT_oct2point
        - Src:             'openssl.c:863,23'
          Dst:             EC_KEY_set_public_key
        - Src:             'openssl.c:865,13'
          Dst:             EC_POINT_free
        - Src:             'openssl.c:873,13'
          Dst:             EC_KEY_free
    - 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:    3
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gen_publickey_from_ec_evp
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3576
      functionLinenumberEnd: 3735
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          362
      EdgeCount:       77
      CyclomaticComplexity: 22
      functionsReached:
        - BN_CTX_free
        - BN_CTX_new
        - EC_KEY_free
        - EC_KEY_get0_group
        - EC_KEY_get0_public_key
        - EC_POINT_point2oct
        - EVP_PKEY_get1_EC_KEY
        - _libssh2_debug_low
        - _libssh2_ecdsa_get_curve_type
        - _libssh2_error
        - _libssh2_store_str
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3599,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:3603,14'
          Dst:             BN_CTX_new
        - Src:             'openssl.c:3607,10'
          Dst:             EVP_PKEY_get1_EC_KEY
        - Src:             'openssl.c:3613,18'
          Dst:             EC_KEY_get0_public_key
        - Src:             'openssl.c:3614,13'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl.c:3615,12'
          Dst:             _libssh2_ecdsa_get_curve_type
        - Src:             'openssl.c:3625,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3643,9'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:3657,17'
          Dst:             EC_POINT_point2oct
        - Src:             'openssl.c:3672,8'
          Dst:             EC_POINT_point2oct
        - Src:             'openssl.c:3692,5'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:3696,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:3699,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:3703,5'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:3718,9'
          Dst:             EC_KEY_free
        - Src:             'openssl.c:3721,9'
          Dst:             BN_CTX_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:    17
      BranchProfiles:  []
      Callsites:       []
    - 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:    23
      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:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BN_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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_get1_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_KEY_get0_public_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:    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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_ecdsa_get_curve_type
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 737
      functionLinenumberEnd: 755
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EC_GROUP_get_curve_name
        - EC_KEY_get0_group
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:754,29'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl.c:755,12'
          Dst:             EC_GROUP_get_curve_name
    - functionName:    EC_POINT_point2oct
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_GROUP_get_curve_name
      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:    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:    2
      BranchProfiles:  []
      Callsites:       []
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EC_POINT_oct2point
      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:    2
      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:    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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gen_publickey_from_ecdsa_openssh_priv_data
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3746
      functionLinenumberEnd: 3884
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          219
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - BN_bin2bn
        - BN_new
        - EC_KEY_free
        - EC_KEY_set_private_key
        - EVP_PKEY_free
        - EVP_PKEY_new
        - EVP_PKEY_set1_EC_KEY
        - _libssh2_debug_low
        - _libssh2_ecdsa_curve_name_with_octal_new
        - _libssh2_error
        - _libssh2_get_bignum_bytes
        - _libssh2_get_string
        - gen_publickey_from_ec_evp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3761,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:3765,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3767,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3772,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3773,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3778,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:3779,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3822,10'
          Dst:             _libssh2_ecdsa_curve_name_with_octal_new
        - Src:             'openssl.c:3827,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3832,19'
          Dst:             BN_new
        - Src:             'openssl.c:3835,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3840,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:3841,11'
          Dst:             EC_KEY_set_private_key
        - Src:             'openssl.c:3848,24'
          Dst:             EVP_PKEY_new
        - Src:             'openssl.c:3849,9'
          Dst:             EVP_PKEY_set1_EC_KEY
        - Src:             'openssl.c:3852,14'
          Dst:             gen_publickey_from_ec_evp
        - Src:             'openssl.c:3858,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:3870,9'
          Dst:             EC_KEY_free
        - Src:             'openssl.c:3881,9'
          Dst:             EC_KEY_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:    32
      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:    14
      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:    _libssh2_rsa_new_additional_parameters
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1396
      functionLinenumberEnd: 1465
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          184
      EdgeCount:       46
      CyclomaticComplexity: 14
      functionsReached:
        - BN_CTX_free
        - BN_CTX_new
        - BN_clear_free
        - BN_div
        - BN_new
        - BN_sub
        - BN_value_one
        - RSA_get0_factors
        - RSA_get0_key
        - RSA_set0_crt_params
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1407,5'
          Dst:             RSA_get0_key
        - Src:             'openssl.c:1408,5'
          Dst:             RSA_get0_factors
        - Src:             'openssl.c:1415,11'
          Dst:             BN_CTX_new
        - Src:             'openssl.c:1419,11'
          Dst:             BN_new
        - Src:             'openssl.c:1425,12'
          Dst:             BN_new
        - Src:             'openssl.c:1431,12'
          Dst:             BN_new
        - Src:             'openssl.c:1437,24'
          Dst:             BN_value_one
        - Src:             'openssl.c:1437,9'
          Dst:             BN_sub
        - Src:             'openssl.c:1438,10'
          Dst:             BN_div
        - Src:             'openssl.c:1439,25'
          Dst:             BN_value_one
        - Src:             'openssl.c:1439,10'
          Dst:             BN_sub
        - Src:             'openssl.c:1440,10'
          Dst:             BN_div
        - Src:             'openssl.c:1446,5'
          Dst:             RSA_set0_crt_params
        - Src:             'openssl.c:1454,9'
          Dst:             BN_clear_free
        - Src:             'openssl.c:1455,5'
          Dst:             BN_CTX_free
        - Src:             'openssl.c:1459,13'
          Dst:             BN_clear_free
        - Src:             'openssl.c:1461,13'
          Dst:             BN_clear_free
    - functionName:    RSA_get0_factors
      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:    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:    2
      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:    2
      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:    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:    2
      BranchProfiles:  []
      Callsites:       []
    - 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:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gen_publickey_from_rsa_openssh_priv_data
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1476
      functionLinenumberEnd: 1583
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          251
      EdgeCount:       55
      CyclomaticComplexity: 17
      functionsReached:
        - EVP_PKEY_free
        - EVP_PKEY_new
        - EVP_PKEY_set1_RSA
        - RSA_free
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_get_bignum_bytes
        - _libssh2_get_string
        - _libssh2_rsa_new
        - _libssh2_rsa_new_additional_parameters
        - gen_publickey_from_rsa_evp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1482,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:1487,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1488,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1493,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1494,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1500,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1501,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1506,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1507,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1512,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1513,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1518,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1519,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1524,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:1525,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1530,10'
          Dst:             _libssh2_rsa_new
        - Src:             'openssl.c:1539,9'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:1547,14'
          Dst:             _libssh2_rsa_new_additional_parameters
        - Src:             'openssl.c:1554,24'
          Dst:             EVP_PKEY_new
        - Src:             'openssl.c:1555,9'
          Dst:             EVP_PKEY_set1_RSA
        - Src:             'openssl.c:1558,14'
          Dst:             gen_publickey_from_rsa_evp
        - Src:             'openssl.c:1564,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:1571,9'
          Dst:             RSA_free
        - Src:             'openssl.c:1578,9'
          Dst:             RSA_free
        - Src:             'openssl.c:1580,12'
          Dst:             _libssh2_error
    - functionName:    _libssh2_rsa_new
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      int
      argCount:        17
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          146
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BN_bin2bn
        - BN_new
        - RSA_new
        - RSA_set0_crt_params
        - RSA_set0_factors
        - RSA_set0_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:372,9'
          Dst:             BN_new
        - Src:             'openssl.c:373,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:375,9'
          Dst:             BN_new
        - Src:             'openssl.c:376,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:379,13'
          Dst:             BN_new
        - Src:             'openssl.c:380,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:382,13'
          Dst:             BN_new
        - Src:             'openssl.c:383,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:385,13'
          Dst:             BN_new
        - Src:             'openssl.c:386,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:388,16'
          Dst:             BN_new
        - Src:             'openssl.c:389,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:391,16'
          Dst:             BN_new
        - Src:             'openssl.c:392,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:394,16'
          Dst:             BN_new
        - Src:             'openssl.c:395,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:398,12'
          Dst:             RSA_new
        - Src:             'openssl.c:400,5'
          Dst:             RSA_set0_key
        - Src:             'openssl.c:408,5'
          Dst:             RSA_set0_factors
        - Src:             'openssl.c:415,5'
          Dst:             RSA_set0_crt_params
    - functionName:    EVP_PKEY_set1_RSA
      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:    gen_publickey_from_rsa_evp
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1334
      functionLinenumberEnd: 1392
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          146
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - EVP_PKEY_get1_RSA
        - RSA_free
        - _libssh2_debug_low
        - _libssh2_error
        - gen_publickey_from_rsa
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1340,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:1347,11'
          Dst:             EVP_PKEY_get1_RSA
        - Src:             'openssl.c:1359,11'
          Dst:             gen_publickey_from_rsa
        - Src:             'openssl.c:1364,5'
          Dst:             RSA_free
        - Src:             'openssl.c:1382,9'
          Dst:             RSA_free
        - Src:             'openssl.c:1389,12'
          Dst:             _libssh2_error
    - 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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_get1_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_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:    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:    1
      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:    passphrase_cb
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1158
      functionLinenumberEnd: 1169
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1159,32'
          Dst:             strlen
    - 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:    89
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_supported_key_sign_algorithms
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5353
      functionLinenumberEnd: 5372
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          68
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:5358,9'
          Dst:             memcmp
        - Src:             'openssl.c:5360,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:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_bn_from_bin
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5336
      functionLinenumberEnd: 5342
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BN_bin2bn
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:5337,9'
          Dst:             BN_bin2bn
    - functionName:    _libssh2_dh_dtor
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5329
      functionLinenumberEnd: 5332
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BN_clear_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:5330,5'
          Dst:             BN_clear_free
    - functionName:    _libssh2_dh_secret
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5321
      functionLinenumberEnd: 5324
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BN_mod_exp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:5323,5'
          Dst:             BN_mod_exp
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_dh_key_pair
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5310
      functionLinenumberEnd: 5314
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BN_mod_exp
        - BN_rand
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:5312,5'
          Dst:             BN_rand
        - Src:             'openssl.c:5313,5'
          Dst:             BN_mod_exp
    - functionName:    BN_rand
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_dh_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5302
      functionLinenumberEnd: 5304
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - BN_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:5303,14'
          Dst:             BN_new
    - functionName:    _libssh2_sk_pub_keyfilememory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5261
      functionLinenumberEnd: 5298
      functionDepth:   0
      returnType:      int
      argCount:        13
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          100
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - BIO_ctrl
        - BIO_free
        - BIO_new_mem_buf
        - PEM_read_bio_PrivateKey
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_sk_pub_openssh_keyfilememory
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:5266,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:5270,10'
          Dst:             BIO_new_mem_buf
        - Src:             'openssl.c:5272,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5275,11'
          Dst:             BIO_ctrl
        - Src:             'openssl.c:5276,10'
          Dst:             PEM_read_bio_PrivateKey
        - Src:             'openssl.c:5278,5'
          Dst:             BIO_free
        - Src:             'openssl.c:5282,14'
          Dst:             _libssh2_sk_pub_openssh_keyfilememory
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    BIO_ctrl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    PEM_read_bio_PrivateKey
      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:    4
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_sk_pub_openssh_keyfilememory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5045
      functionLinenumberEnd: 5134
      functionDepth:   0
      returnType:      int
      argCount:        15
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          249
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_init_if_needed
        - _libssh2_openssh_pem_parse_memory
        - _libssh2_string_buf_free
        - gen_publickey_from_sk_ecdsa_openssh_priv_data
        - gen_publickey_from_sk_ed25519_openssh_priv_data
        - strcmp
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:5054,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5057,20'
          Dst:             strlen
        - Src:             'openssl.c:5058,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5061,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:5063,10'
          Dst:             _libssh2_openssh_pem_parse_memory
        - Src:             'openssl.c:5071,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:5074,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5092,8'
          Dst:             strcmp
        - Src:             'openssl.c:5095,12'
          Dst:             strcmp
        - Src:             'openssl.c:5096,18'
          Dst:             gen_publickey_from_sk_ed25519_openssh_priv_data
        - Src:             'openssl.c:5111,8'
          Dst:             strcmp
        - Src:             'openssl.c:5113,14'
          Dst:             gen_publickey_from_sk_ecdsa_openssh_priv_data
        - Src:             'openssl.c:5126,14'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5131,9'
          Dst:             _libssh2_string_buf_free
    - 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:    42
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gen_publickey_from_sk_ed25519_openssh_priv_data
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2384
      functionLinenumberEnd: 2526
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         83
      ICount:          532
      EdgeCount:       113
      CyclomaticComplexity: 32
      functionsReached:
        - EVP_PKEY_free
        - EVP_PKEY_new_raw_public_key
        - _libssh2_calloc
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_get_byte
        - _libssh2_get_string
        - _libssh2_store_str
        - explicit_bzero
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2395,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2399,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2401,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2406,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2407,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2412,17'
          Dst:             _libssh2_get_byte
        - Src:             'openssl.c:2413,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2420,12'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2421,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2436,11'
          Dst:             EVP_PKEY_new_raw_public_key
        - Src:             'openssl.c:2441,9'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2447,22'
          Dst:             strlen
        - Src:             'openssl.c:2449,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2457,15'
          Dst:             _libssh2_calloc
        - Src:             'openssl.c:2459,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2466,42'
          Dst:             strlen
        - Src:             'openssl.c:2466,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2467,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2468,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2472,13'
          Dst:             explicit_bzero
        - Src:             'openssl.c:2478,38'
          Dst:             strlen
        - Src:             'openssl.c:2486,27'
          Dst:             strlen
        - Src:             'openssl.c:2499,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:2507,9'
          Dst:             EVP_PKEY_free
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_pub_priv_keyfilememory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5149
      functionLinenumberEnd: 5245
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          145
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - BIO_ctrl
        - BIO_free
        - BIO_new_mem_buf
        - EVP_PKEY_free
        - EVP_PKEY_id
        - PEM_read_bio_PrivateKey
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_pub_priv_openssh_keyfilememory
        - gen_publickey_from_ec_evp
        - gen_publickey_from_ed_evp
        - gen_publickey_from_rsa_evp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl.c:5209,5'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl.c:5158,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:5162,10'
          Dst:             BIO_new_mem_buf
        - Src:             'openssl.c:5164,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5167,11'
          Dst:             BIO_ctrl
        - Src:             'openssl.c:5168,10'
          Dst:             PEM_read_bio_PrivateKey
        - Src:             'openssl.c:5173,5'
          Dst:             BIO_free
        - Src:             'openssl.c:5177,14'
          Dst:             _libssh2_pub_priv_openssh_keyfilememory
        - Src:             'openssl.c:5196,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5204,14'
          Dst:             EVP_PKEY_id
        - Src:             'openssl.c:5212,14'
          Dst:             gen_publickey_from_ed_evp
        - Src:             'openssl.c:5218,14'
          Dst:             gen_publickey_from_rsa_evp
        - Src:             'openssl.c:5230,14'
          Dst:             gen_publickey_from_ec_evp
        - Src:             'openssl.c:5235,14'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5243,5'
          Dst:             EVP_PKEY_free
    - functionName:    _libssh2_pub_priv_openssh_keyfilememory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4900
      functionLinenumberEnd: 5027
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         69
      ICount:          351
      EdgeCount:       92
      CyclomaticComplexity: 25
      functionsReached:
        - _libssh2_ecdsa_curve_type_from_name
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_init_if_needed
        - _libssh2_openssh_pem_parse_memory
        - _libssh2_string_buf_free
        - gen_publickey_from_ecdsa_openssh_priv_data
        - gen_publickey_from_ed25519_openssh_priv_data
        - gen_publickey_from_rsa_openssh_priv_data
        - gen_publickey_from_sk_ecdsa_openssh_priv_data
        - gen_publickey_from_sk_ed25519_openssh_priv_data
        - strcmp
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4909,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4912,21'
          Dst:             strlen
        - Src:             'openssl.c:4912,46'
          Dst:             strlen
        - Src:             'openssl.c:4913,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4916,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:4918,10'
          Dst:             _libssh2_openssh_pem_parse_memory
        - Src:             'openssl.c:4926,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:4929,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4942,8'
          Dst:             strcmp
        - Src:             'openssl.c:4943,25'
          Dst:             strcmp
        - Src:             'openssl.c:4944,18'
          Dst:             gen_publickey_from_ed25519_openssh_priv_data
        - Src:             'openssl.c:4954,8'
          Dst:             strcmp
        - Src:             'openssl.c:4956,12'
          Dst:             strcmp
        - Src:             'openssl.c:4957,18'
          Dst:             gen_publickey_from_sk_ed25519_openssh_priv_data
        - Src:             'openssl.c:4970,8'
          Dst:             strcmp
        - Src:             'openssl.c:4971,25'
          Dst:             strcmp
        - Src:             'openssl.c:4972,18'
          Dst:             gen_publickey_from_rsa_openssh_priv_data
        - Src:             'openssl.c:4995,8'
          Dst:             strcmp
        - Src:             'openssl.c:4996,14'
          Dst:             gen_publickey_from_sk_ecdsa_openssh_priv_data
        - Src:             'openssl.c:5004,13'
          Dst:             _libssh2_ecdsa_curve_type_from_name
        - Src:             'openssl.c:5006,25'
          Dst:             strcmp
        - Src:             'openssl.c:5007,18'
          Dst:             gen_publickey_from_ecdsa_openssh_priv_data
        - Src:             'openssl.c:5019,14'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5024,9'
          Dst:             _libssh2_string_buf_free
    - functionName:    EVP_PKEY_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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gen_publickey_from_ed_evp
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2168
      functionLinenumberEnd: 2227
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          188
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - EVP_PKEY_get_raw_public_key
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_store_str
        - _libssh2_store_u32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2176,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2181,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2187,8'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'openssl.c:2188,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2197,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2202,5'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2203,5'
          Dst:             _libssh2_store_u32
        - Src:             'openssl.c:2205,8'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'openssl.c:2206,9'
          Dst:             _libssh2_error
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gen_publickey_from_ed25519_openssh_priv_data
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2370
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          390
      EdgeCount:       82
      CyclomaticComplexity: 23
      functionsReached:
        - EVP_PKEY_free
        - EVP_PKEY_new_raw_private_key
        - _libssh2_calloc
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_store_str
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2246,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2250,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2252,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2257,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2259,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2266,11'
          Dst:             EVP_PKEY_new_raw_private_key
        - Src:             'openssl.c:2271,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2272,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2278,34'
          Dst:             _libssh2_calloc
        - Src:             'openssl.c:2284,13'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2295,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2304,9'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2311,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2319,15'
          Dst:             _libssh2_calloc
        - Src:             'openssl.c:2321,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2328,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2329,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2353,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:2361,9'
          Dst:             EVP_PKEY_free
    - functionName:    _libssh2_ecdsa_curve_type_from_name
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 767
      functionLinenumberEnd: 788
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          89
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - strcmp
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:770,17'
          Dst:             strlen
        - Src:             'openssl.c:773,8'
          Dst:             strcmp
        - Src:             'openssl.c:775,13'
          Dst:             strcmp
        - Src:             'openssl.c:777,13'
          Dst:             strcmp
    - 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:    _libssh2_pub_priv_openssh_keyfile
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4691
      functionLinenumberEnd: 4790
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          200
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - _libssh2_ecdsa_curve_type_from_name
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_init_if_needed
        - _libssh2_openssh_pem_parse
        - _libssh2_string_buf_free
        - fclose
        - fopen
        - gen_publickey_from_ecdsa_openssh_priv_data
        - gen_publickey_from_ed25519_openssh_priv_data
        - gen_publickey_from_rsa_openssh_priv_data
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4698,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4703,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:4705,10'
          Dst:             fopen
        - Src:             'openssl.c:4707,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4712,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:4714,5'
          Dst:             fclose
        - Src:             'openssl.c:4716,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4722,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:4725,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4739,8'
          Dst:             strcmp
        - Src:             'openssl.c:4740,14'
          Dst:             gen_publickey_from_ed25519_openssh_priv_data
        - Src:             'openssl.c:4748,8'
          Dst:             strcmp
        - Src:             'openssl.c:4749,14'
          Dst:             gen_publickey_from_rsa_openssh_priv_data
        - Src:             'openssl.c:4769,12'
          Dst:             _libssh2_ecdsa_curve_type_from_name
        - Src:             'openssl.c:4771,18'
          Dst:             gen_publickey_from_ecdsa_openssh_priv_data
        - Src:             'openssl.c:4782,9'
          Dst:             _libssh2_string_buf_free
        - Src:             'openssl.c:4785,9'
          Dst:             _libssh2_error
    - 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:    6
      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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_pub_priv_keyfile
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4800
      functionLinenumberEnd: 4887
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          142
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - BIO_ctrl
        - BIO_free
        - BIO_new_file
        - EVP_PKEY_free
        - EVP_PKEY_id
        - PEM_read_bio_PrivateKey
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_pub_priv_openssh_keyfile
        - gen_publickey_from_ec_evp
        - gen_publickey_from_ed_evp
        - gen_publickey_from_rsa_evp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl.c:4851,5'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl.c:4807,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:4812,10'
          Dst:             BIO_new_file
        - Src:             'openssl.c:4814,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4820,11'
          Dst:             BIO_ctrl
        - Src:             'openssl.c:4821,10'
          Dst:             PEM_read_bio_PrivateKey
        - Src:             'openssl.c:4823,5'
          Dst:             BIO_free
        - Src:             'openssl.c:4828,14'
          Dst:             _libssh2_pub_priv_openssh_keyfile
        - Src:             'openssl.c:4834,20'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4846,14'
          Dst:             EVP_PKEY_id
        - Src:             'openssl.c:4854,14'
          Dst:             gen_publickey_from_ed_evp
        - Src:             'openssl.c:4860,14'
          Dst:             gen_publickey_from_rsa_evp
        - Src:             'openssl.c:4872,14'
          Dst:             gen_publickey_from_ec_evp
        - Src:             'openssl.c:4877,14'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4885,5'
          Dst:             EVP_PKEY_free
    - functionName:    BIO_new_file
      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:    _libssh2_ed25519_verify
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4661
      functionLinenumberEnd: 4679
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_DigestVerify
        - EVP_DigestVerifyInit
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4664,26'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:4668,11'
          Dst:             EVP_DigestVerifyInit
        - Src:             'openssl.c:4672,11'
          Dst:             EVP_DigestVerify
        - Src:             'openssl.c:4676,5'
          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:    10
      BranchProfiles:  []
      Callsites:       []
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - 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:    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:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_curve25519_gen_k
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4583
      functionLinenumberEnd: 4656
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          223
      EdgeCount:       61
      CyclomaticComplexity: 18
      functionsReached:
        - BN_CTX_free
        - BN_CTX_new
        - BN_bin2bn
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new
        - EVP_PKEY_derive
        - EVP_PKEY_derive_init
        - EVP_PKEY_derive_set_peer
        - EVP_PKEY_free
        - EVP_PKEY_new_raw_private_key
        - EVP_PKEY_new_raw_public_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4594,14'
          Dst:             BN_CTX_new
        - Src:             'openssl.c:4598,16'
          Dst:             EVP_PKEY_new_raw_public_key
        - Src:             'openssl.c:4602,18'
          Dst:             EVP_PKEY_new_raw_private_key
        - Src:             'openssl.c:4610,22'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'openssl.c:4615,10'
          Dst:             EVP_PKEY_derive_init
        - Src:             'openssl.c:4620,10'
          Dst:             EVP_PKEY_derive_set_peer
        - Src:             'openssl.c:4625,10'
          Dst:             EVP_PKEY_derive
        - Src:             'openssl.c:4635,10'
          Dst:             EVP_PKEY_derive
        - Src:             'openssl.c:4638,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:4647,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl.c:4649,9'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:4651,9'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:4653,9'
          Dst:             BN_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:    1
      BranchProfiles:  []
      Callsites:       []
    - 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:    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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_ed25519_sign
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4539
      functionLinenumberEnd: 4576
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          139
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - EVP_DigestSign
        - EVP_DigestSignInit
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - _libssh2_calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4541,26'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:4546,12'
          Dst:             EVP_DigestSignInit
        - Src:             'openssl.c:4548,12'
          Dst:             EVP_DigestSign
        - Src:             'openssl.c:4554,15'
          Dst:             _libssh2_calloc
        - Src:             'openssl.c:4558,14'
          Dst:             EVP_DigestSign
        - Src:             'openssl.c:4574,9'
          Dst:             EVP_MD_CTX_free
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - 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:    _libssh2_ecdh_gen_k
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4353
      functionLinenumberEnd: 4529
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          174
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - BN_CTX_free
        - BN_CTX_new
        - BN_bin2bn
        - ECDH_compute_key
        - EC_GROUP_get_degree
        - EC_KEY_get0_group
        - EC_POINT_free
        - EC_POINT_new
        - EC_POINT_oct2point
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4464,14'
          Dst:             BN_CTX_new
        - Src:             'openssl.c:4472,25'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl.c:4474,31'
          Dst:             EC_POINT_new
        - Src:             'openssl.c:4478,10'
          Dst:             EC_POINT_oct2point
        - Src:             'openssl.c:4485,19'
          Dst:             EC_GROUP_get_degree
        - Src:             'openssl.c:4492,18'
          Dst:             ECDH_compute_key
        - Src:             'openssl.c:4500,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:4515,9'
          Dst:             EC_POINT_free
        - Src:             'openssl.c:4518,9'
          Dst:             BN_CTX_free
    - functionName:    EC_GROUP_get_degree
      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:    ECDH_compute_key
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_ecdsa_create_key
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4236
      functionLinenumberEnd: 4341
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          170
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - BN_CTX_free
        - BN_CTX_new
        - EC_KEY_generate_key
        - EC_KEY_get0_group
        - EC_KEY_get0_public_key
        - EC_KEY_new_by_curve_name
        - EC_POINT_point2oct
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4288,22'
          Dst:             BN_CTX_new
        - Src:             'openssl.c:4292,19'
          Dst:             EC_KEY_new_by_curve_name
        - Src:             'openssl.c:4293,13'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl.c:4295,5'
          Dst:             EC_KEY_generate_key
        - Src:             'openssl.c:4296,18'
          Dst:             EC_KEY_get0_public_key
        - Src:             'openssl.c:4299,17'
          Dst:             EC_POINT_point2oct
        - Src:             'openssl.c:4308,8'
          Dst:             EC_POINT_point2oct
        - Src:             'openssl.c:4337,9'
          Dst:             BN_CTX_free
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_ecdsa_new_openssh_private_sk
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4098
      functionLinenumberEnd: 4153
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          138
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_init_if_needed
        - _libssh2_openssh_pem_parse
        - _libssh2_string_buf_free
        - fclose
        - fopen
        - gen_publickey_from_sk_ecdsa_openssh_priv_data
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4105,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4110,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:4112,10'
          Dst:             fopen
        - Src:             'openssl.c:4114,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4119,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:4120,5'
          Dst:             fclose
        - Src:             'openssl.c:4126,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:4129,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4134,8'
          Dst:             strcmp
        - Src:             'openssl.c:4135,14'
          Dst:             gen_publickey_from_sk_ecdsa_openssh_priv_data
        - Src:             'openssl.c:4150,9'
          Dst:             _libssh2_string_buf_free
    - functionName:    _libssh2_ecdsa_new_private_sk
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4192
      functionLinenumberEnd: 4220
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_ecdsa_new_openssh_private_sk
        - _libssh2_init_if_needed
        - read_private_key_from_file
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4203,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:4205,10'
          Dst:             read_private_key_from_file
        - Src:             'openssl.c:4209,16'
          Dst:             _libssh2_ecdsa_new_openssh_private_sk
    - functionName:    PEM_read_bio_ECPrivateKey
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    read_private_key_from_file
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1210
      functionLinenumberEnd: 1225
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BIO_free
        - BIO_new_file
        - passphrase_cb
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1215,10'
          Dst:             BIO_new_file
        - Src:             'openssl.c:1220,16'
          Dst:             passphrase_cb
        - Src:             'openssl.c:1223,5'
          Dst:             BIO_free
    - functionName:    _libssh2_ecdsa_new_openssh_private
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4034
      functionLinenumberEnd: 4087
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          130
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_ecdsa_curve_type_from_name
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_init_if_needed
        - _libssh2_openssh_pem_parse
        - _libssh2_string_buf_free
        - fclose
        - fopen
        - gen_publickey_from_ecdsa_openssh_priv_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4042,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4047,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:4049,10'
          Dst:             fopen
        - Src:             'openssl.c:4051,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4056,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:4057,5'
          Dst:             fclose
        - Src:             'openssl.c:4063,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:4066,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4071,10'
          Dst:             _libssh2_ecdsa_curve_type_from_name
        - Src:             'openssl.c:4074,14'
          Dst:             gen_publickey_from_ecdsa_openssh_priv_data
        - Src:             'openssl.c:4084,9'
          Dst:             _libssh2_string_buf_free
    - functionName:    _libssh2_ecdsa_new_private
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4159
      functionLinenumberEnd: 4181
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_ecdsa_new_openssh_private
        - _libssh2_init_if_needed
        - read_private_key_from_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4170,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:4172,10'
          Dst:             read_private_key_from_file
        - Src:             'openssl.c:4176,16'
          Dst:             _libssh2_ecdsa_new_openssh_private
    - functionName:    _libssh2_sha512_final
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3465
      functionLinenumberEnd: 3469
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_DigestFinal
        - EVP_MD_CTX_free
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3467,15'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3468,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    EVP_DigestFinal
      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:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_sha512_update
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3454
      functionLinenumberEnd: 3456
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_DigestUpdate
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3456,12'
          Dst:             EVP_DigestUpdate
    - 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:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_sha512_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3431
      functionLinenumberEnd: 3449
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_DigestInit
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_get_digestbyname
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3433,12'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3438,29'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3438,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3441,5'
          Dst:             EVP_MD_CTX_free
    - 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:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestInit
      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:    _libssh2_sha384_final
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3389
      functionLinenumberEnd: 3393
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_DigestFinal
        - EVP_MD_CTX_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3391,15'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3392,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_sha384_update
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3378
      functionLinenumberEnd: 3380
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_DigestUpdate
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3380,12'
          Dst:             EVP_DigestUpdate
    - functionName:    _libssh2_sha384_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3355
      functionLinenumberEnd: 3373
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_DigestInit
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_get_digestbyname
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3357,12'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3362,29'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3362,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3365,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_sha256_final
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3313
      functionLinenumberEnd: 3317
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_DigestFinal
        - EVP_MD_CTX_free
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3315,15'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3316,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_sha256_update
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3302
      functionLinenumberEnd: 3304
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_DigestUpdate
      functionUses:    43
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3304,12'
          Dst:             EVP_DigestUpdate
    - functionName:    _libssh2_sha256_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3279
      functionLinenumberEnd: 3297
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_DigestInit
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_get_digestbyname
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3281,12'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3286,29'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3286,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3289,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_sha1_final
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3237
      functionLinenumberEnd: 3241
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_DigestFinal
        - EVP_MD_CTX_free
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3239,15'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3240,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_sha1_update
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3226
      functionLinenumberEnd: 3228
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_DigestUpdate
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3228,12'
          Dst:             EVP_DigestUpdate
    - functionName:    _libssh2_sha1_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3203
      functionLinenumberEnd: 3221
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_DigestInit
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_get_digestbyname
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3205,12'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3210,29'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3210,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3213,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_ecdsa_sign
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3102
      functionLinenumberEnd: 3198
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          158
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - BN_num_bits
        - ECDSA_SIG_free
        - ECDSA_SIG_get0
        - ECDSA_do_sign
        - _libssh2_calloc
        - write_bn
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3146,11'
          Dst:             ECDSA_do_sign
        - Src:             'openssl.c:3152,5'
          Dst:             ECDSA_SIG_get0
        - Src:             'openssl.c:3158,13'
          Dst:             BN_num_bits
        - Src:             'openssl.c:3159,13'
          Dst:             BN_num_bits
        - Src:             'openssl.c:3168,10'
          Dst:             write_bn
        - Src:             'openssl.c:3169,10'
          Dst:             write_bn
        - Src:             'openssl.c:3173,18'
          Dst:             _libssh2_calloc
        - Src:             'openssl.c:3190,9'
          Dst:             ECDSA_SIG_free
    - functionName:    ECDSA_do_sign
      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:    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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_rsa_sha1_sign
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3016
      functionLinenumberEnd: 3018
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_rsa_sha2_sign
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3017,12'
          Dst:             _libssh2_rsa_sha2_sign
    - functionName:    _libssh2_rsa_sha2_sign
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2929
      functionLinenumberEnd: 3007
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          137
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - RSA_sign
        - RSA_size
        - _libssh2_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2948,15'
          Dst:             RSA_size
        - Src:             'openssl.c:2983,15'
          Dst:             RSA_sign
        - Src:             'openssl.c:2986,15'
          Dst:             RSA_sign
        - Src:             'openssl.c:2989,15'
          Dst:             RSA_sign
        - Src:             'openssl.c:2992,9'
          Dst:             _libssh2_error
    - functionName:    RSA_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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    RSA_sign
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_ed25519_new_public
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2733
      functionLinenumberEnd: 2751
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          71
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - EVP_PKEY_free
        - EVP_PKEY_new_raw_public_key
        - _libssh2_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2739,11'
          Dst:             EVP_PKEY_new_raw_public_key
        - Src:             'openssl.c:2742,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2748,9'
          Dst:             EVP_PKEY_free
    - functionName:    _libssh2_ed25519_new_private_frommemory_sk
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2709
      functionLinenumberEnd: 2725
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_sk_pub_openssh_keyfilememory
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2711,12'
          Dst:             _libssh2_sk_pub_openssh_keyfilememory
    - functionName:    _libssh2_ed25519_new_private_frommemory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2672
      functionLinenumberEnd: 2697
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          66
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_PKEY_free
        - EVP_PKEY_id
        - PEM_read_bio_PrivateKey
        - _libssh2_error
        - _libssh2_init_if_needed
        - _libssh2_pub_priv_openssh_keyfilememory
        - read_private_key_from_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2675,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:2677,8'
          Dst:             read_private_key_from_memory
        - Src:             'openssl.c:2677,8'
          Dst:             PEM_read_bio_PrivateKey
        - Src:             'openssl.c:2682,12'
          Dst:             EVP_PKEY_id
        - Src:             'openssl.c:2683,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:2684,20'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2692,12'
          Dst:             _libssh2_pub_priv_openssh_keyfilememory
    - functionName:    read_private_key_from_memory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1186
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BIO_free
        - BIO_new_mem_buf
        - passphrase_cb
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1191,10'
          Dst:             BIO_new_mem_buf
        - Src:             'openssl.c:1196,16'
          Dst:             passphrase_cb
        - Src:             'openssl.c:1199,5'
          Dst:             BIO_free
    - functionName:    _libssh2_ed25519_new_private_sk
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2601
      functionLinenumberEnd: 2664
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          171
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - EVP_PKEY_free
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_init_if_needed
        - _libssh2_openssh_pem_parse
        - _libssh2_string_buf_free
        - fclose
        - fopen
        - gen_publickey_from_sk_ed25519_openssh_priv_data
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2609,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2614,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:2616,10'
          Dst:             fopen
        - Src:             'openssl.c:2618,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2623,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:2624,5'
          Dst:             fclose
        - Src:             'openssl.c:2630,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2633,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2638,8'
          Dst:             strcmp
        - Src:             'openssl.c:2639,14'
          Dst:             gen_publickey_from_sk_ed25519_openssh_priv_data
        - Src:             'openssl.c:2654,9'
          Dst:             _libssh2_string_buf_free
        - Src:             'openssl.c:2660,13'
          Dst:             EVP_PKEY_free
    - functionName:    _libssh2_ed25519_new_private
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2532
      functionLinenumberEnd: 2590
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          159
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - EVP_PKEY_free
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_init_if_needed
        - _libssh2_openssh_pem_parse
        - _libssh2_string_buf_free
        - fclose
        - fopen
        - gen_publickey_from_ed25519_openssh_priv_data
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2540,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2545,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:2547,10'
          Dst:             fopen
        - Src:             'openssl.c:2549,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2554,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:2555,5'
          Dst:             fclose
        - Src:             'openssl.c:2561,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2564,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2569,8'
          Dst:             strcmp
        - Src:             'openssl.c:2570,14'
          Dst:             gen_publickey_from_ed25519_openssh_priv_data
        - Src:             'openssl.c:2580,9'
          Dst:             _libssh2_string_buf_free
        - Src:             'openssl.c:2586,13'
          Dst:             EVP_PKEY_free
    - functionName:    _libssh2_curve25519_new
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2098
      functionLinenumberEnd: 2159
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          235
      EdgeCount:       59
      CyclomaticComplexity: 17
      functionsReached:
        - EVP_PKEY_CTX_free
        - EVP_PKEY_CTX_new_id
        - EVP_PKEY_free
        - EVP_PKEY_get_raw_private_key
        - EVP_PKEY_get_raw_public_key
        - EVP_PKEY_keygen
        - EVP_PKEY_keygen_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2105,12'
          Dst:             EVP_PKEY_CTX_new_id
        - Src:             'openssl.c:2109,8'
          Dst:             EVP_PKEY_keygen_init
        - Src:             'openssl.c:2110,8'
          Dst:             EVP_PKEY_keygen
        - Src:             'openssl.c:2120,12'
          Dst:             EVP_PKEY_get_raw_private_key
        - Src:             'openssl.c:2135,12'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'openssl.c:2150,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl.c:2152,9'
          Dst:             EVP_PKEY_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:    1
      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:    1
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_PKEY_get_raw_private_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:    _libssh2_ecdsa_new_private_frommemory_sk
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2071
      functionLinenumberEnd: 2087
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_sk_pub_openssh_keyfilememory
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2073,12'
          Dst:             _libssh2_sk_pub_openssh_keyfilememory
    - functionName:    _libssh2_ecdsa_new_private_frommemory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2034
      functionLinenumberEnd: 2059
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_init_if_needed
        - _libssh2_pub_priv_openssh_keyfilememory
        - read_private_key_from_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2045,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:2047,10'
          Dst:             read_private_key_from_memory
        - Src:             'openssl.c:2052,14'
          Dst:             _libssh2_pub_priv_openssh_keyfilememory
    - functionName:    _libssh2_rsa_new_openssh_private
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1590
      functionLinenumberEnd: 1639
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          126
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_init_if_needed
        - _libssh2_openssh_pem_parse
        - _libssh2_string_buf_free
        - fclose
        - fopen
        - gen_publickey_from_rsa_openssh_priv_data
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1597,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1602,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:1604,10'
          Dst:             fopen
        - Src:             'openssl.c:1606,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1611,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:1612,5'
          Dst:             fclose
        - Src:             'openssl.c:1618,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:1621,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1626,8'
          Dst:             strcmp
        - Src:             'openssl.c:1627,14'
          Dst:             gen_publickey_from_rsa_openssh_priv_data
        - Src:             'openssl.c:1636,9'
          Dst:             _libssh2_string_buf_free
    - functionName:    _libssh2_rsa_new_private
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1645
      functionLinenumberEnd: 1666
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_init_if_needed
        - _libssh2_rsa_new_openssh_private
        - read_private_key_from_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1656,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:1658,10'
          Dst:             read_private_key_from_file
        - Src:             'openssl.c:1662,14'
          Dst:             _libssh2_rsa_new_openssh_private
    - functionName:    PEM_read_bio_RSAPrivateKey
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_rsa_new_private_frommemory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1235
      functionLinenumberEnd: 1260
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_init_if_needed
        - _libssh2_pub_priv_openssh_keyfilememory
        - read_private_key_from_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1246,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:1248,10'
          Dst:             read_private_key_from_memory
        - Src:             'openssl.c:1253,14'
          Dst:             _libssh2_pub_priv_openssh_keyfilememory
    - functionName:    _libssh2_openssl_crypto_exit
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1150
      functionLinenumberEnd: 1150
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_openssl_crypto_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1144
      functionLinenumberEnd: 1148
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_cipher_crypt
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1031
      functionLinenumberEnd: 1140
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          327
      EdgeCount:       70
      CyclomaticComplexity: 17
      functionsReached:
        - EVP_CIPHER_CTX_ctrl
        - EVP_Cipher
        - __assert_fail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1054,5'
          Dst:             __assert_fail
        - Src:             'openssl.c:1055,5'
          Dst:             __assert_fail
        - Src:             'openssl.c:1062,19'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'openssl.c:1067,19'
          Dst:             EVP_Cipher
        - Src:             'openssl.c:1075,19'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'openssl.c:1086,15'
          Dst:             EVP_Cipher
        - Src:             'openssl.c:1111,19'
          Dst:             EVP_Cipher
        - Src:             'openssl.c:1124,21'
          Dst:             __assert_fail
        - Src:             'openssl.c:1125,27'
          Dst:             EVP_CIPHER_CTX_ctrl
    - 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:    2
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __assert_fail
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_Cipher
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_cipher_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 995
      functionLinenumberEnd: 1012
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_CIPHER_CTX_ctrl
        - EVP_CIPHER_CTX_new
        - EVP_CipherInit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1003,10'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'openssl.c:1004,11'
          Dst:             EVP_CipherInit
        - Src:             'openssl.c:1008,16'
          Dst:             EVP_CIPHER_CTX_ctrl
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_CipherInit
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_sha384
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3402
      functionLinenumberEnd: 3427
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_DigestFinal
        - EVP_DigestInit
        - EVP_DigestUpdate
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_get_digestbyname
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3404,24'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3409,28'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3409,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3410,9'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl.c:3411,9'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3412,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'openssl.c:3415,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_ecdsa_verify
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 913
      functionLinenumberEnd: 986
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          174
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - BN_bin2bn
        - BN_new
        - ECDSA_SIG_free
        - ECDSA_SIG_new
        - ECDSA_SIG_set0
        - ECDSA_do_verify
        - _libssh2_ecdsa_get_curve_type
        - _libssh2_sha256
        - _libssh2_sha384
        - _libssh2_sha512
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:915,31'
          Dst:             _libssh2_ecdsa_get_curve_type
        - Src:             'openssl.c:926,28'
          Dst:             ECDSA_SIG_new
        - Src:             'openssl.c:927,18'
          Dst:             BN_new
        - Src:             'openssl.c:928,18'
          Dst:             BN_new
        - Src:             'openssl.c:930,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:931,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:932,5'
          Dst:             ECDSA_SIG_set0
        - Src:             'openssl.c:957,9'
          Dst:             _libssh2_sha256
        - Src:             'openssl.c:957,9'
          Dst:             ECDSA_do_verify
        - Src:             'openssl.c:960,9'
          Dst:             _libssh2_sha384
        - Src:             'openssl.c:960,9'
          Dst:             ECDSA_do_verify
        - Src:             'openssl.c:963,9'
          Dst:             _libssh2_sha512
        - Src:             'openssl.c:963,9'
          Dst:             ECDSA_do_verify
        - Src:             'openssl.c:978,9'
          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:    _libssh2_sha256
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3326
      functionLinenumberEnd: 3351
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_DigestFinal
        - EVP_DigestInit
        - EVP_DigestUpdate
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_get_digestbyname
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3328,24'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3333,28'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3333,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3334,9'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl.c:3335,9'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3336,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'openssl.c:3339,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    ECDSA_do_verify
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_sha512
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3478
      functionLinenumberEnd: 3503
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_DigestFinal
        - EVP_DigestInit
        - EVP_DigestUpdate
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_get_digestbyname
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3480,24'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3485,28'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3485,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3486,9'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl.c:3487,9'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3488,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'openssl.c:3491,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_rsa_sha1_verify
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 513
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_rsa_sha2_verify
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:514,12'
          Dst:             _libssh2_rsa_sha2_verify
    - functionName:    _libssh2_rsa_sha2_verify
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          121
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - RSA_verify
        - _libssh2_sha1
        - _libssh2_sha256
        - _libssh2_sha512
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:446,15'
          Dst:             _libssh2_sha1
        - Src:             'openssl.c:450,15'
          Dst:             _libssh2_sha256
        - Src:             'openssl.c:454,15'
          Dst:             _libssh2_sha512
        - Src:             'openssl.c:497,11'
          Dst:             RSA_verify
    - functionName:    _libssh2_sha1
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3250
      functionLinenumberEnd: 3275
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_DigestFinal
        - EVP_DigestInit
        - EVP_DigestUpdate
        - EVP_MD_CTX_free
        - EVP_MD_CTX_new
        - EVP_get_digestbyname
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:3252,24'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3257,28'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3257,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3258,9'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl.c:3259,9'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3260,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'openssl.c:3263,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    RSA_verify
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_openssl_random
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - RAND_bytes
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:269,12'
          Dst:             RAND_bytes
    - 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:    _libssh2_hmac_cleanup
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - HMAC_CTX_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:191,5'
          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:    _libssh2_hmac_final
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - HMAC_Final
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:180,12'
          Dst:             HMAC_Final
    - 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:    _libssh2_hmac_update
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - HMAC_Update
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:168,12'
          Dst:             HMAC_Update
    - 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:    _libssh2_hmac_sha512_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_sha512
        - HMAC_Init_ex
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:152,49'
          Dst:             EVP_sha512
        - Src:             'openssl.c:152,12'
          Dst:             HMAC_Init_ex
    - functionName:    EVP_sha512
      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:    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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_hmac_sha256_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_sha256
        - HMAC_Init_ex
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:140,49'
          Dst:             EVP_sha256
        - Src:             'openssl.c:140,12'
          Dst:             HMAC_Init_ex
    - functionName:    EVP_sha256
      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:    _libssh2_hmac_sha1_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - EVP_sha1
        - HMAC_Init_ex
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:128,49'
          Dst:             EVP_sha1
        - Src:             'openssl.c:128,12'
          Dst:             HMAC_Init_ex
    - functionName:    EVP_sha1
      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:    _libssh2_hmac_ctx_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - HMAC_CTX_new
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:59,12'
          Dst:             HMAC_CTX_new
    - 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:    _libssh2_pem_decode_integer
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 944
      functionLinenumberEnd: 974
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          118
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - read_asn1_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pem.c:959,14'
          Dst:             read_asn1_length
    - functionName:    read_asn1_length
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 881
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          120
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_pem_decode_sequence
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 915
      functionLinenumberEnd: 939
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          96
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - read_asn1_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pem.c:930,14'
          Dst:             read_asn1_length
    - functionName:    _libssh2_openssh_pem_parse_memory
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 876
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          247
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - _libssh2_error
        - _libssh2_openssh_pem_parse_data
        - explicit_bzero
        - readline_memory
        - strcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pem.c:812,16'
          Dst:             _libssh2_error
        - Src:             'pem.c:820,20'
          Dst:             _libssh2_error
        - Src:             'pem.c:824,12'
          Dst:             readline_memory
        - Src:             'pem.c:827,13'
          Dst:             strcmp
        - Src:             'pem.c:836,23'
          Dst:             strlen
        - Src:             'pem.c:839,23'
          Dst:             _libssh2_error
        - Src:             'pem.c:852,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:857,12'
          Dst:             readline_memory
        - Src:             'pem.c:861,13'
          Dst:             strcmp
        - Src:             'pem.c:864,16'
          Dst:             _libssh2_error
        - Src:             'pem.c:867,11'
          Dst:             _libssh2_openssh_pem_parse_data
        - Src:             'pem.c:872,9'
          Dst:             explicit_bzero
    - functionName:    readline_memory
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          115
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_openssh_pem_parse_data
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 726
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         146
      ICount:          983
      EdgeCount:       203
      CyclomaticComplexity: 59
      functionsReached:
        - _libssh2_base64_decode
        - _libssh2_bcrypt_pbkdf
        - _libssh2_calloc
        - _libssh2_check_length
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_get_u32
        - _libssh2_string_buf_free
        - _libssh2_string_buf_new
        - explicit_bzero
        - libssh2_crypt_methods
        - memcmp
        - strcmp
        - strlen
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'pem.c:421,8'
          Dst:             _libssh2_base64_decode
        - Src:             'pem.c:433,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:437,8'
          Dst:             strncmp
        - Src:             'pem.c:439,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:446,8'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:448,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:453,8'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:455,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:460,8'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:461,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:471,24'
          Dst:             strlen
        - Src:             'pem.c:472,9'
          Dst:             strcmp
        - Src:             'pem.c:478,8'
          Dst:             strcmp
        - Src:             'pem.c:479,8'
          Dst:             strcmp
        - Src:             'pem.c:480,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:485,9'
          Dst:             strcmp
        - Src:             'pem.c:486,8'
          Dst:             strcmp
        - Src:             'pem.c:487,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:492,8'
          Dst:             _libssh2_get_u32
        - Src:             'pem.c:493,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:500,8'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:501,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:507,8'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:508,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:517,22'
          Dst:             strcmp
        - Src:             'pem.c:520,23'
          Dst:             libssh2_crypt_methods
        - Src:             'pem.c:525,24'
          Dst:             strlen
        - Src:             'pem.c:524,17'
          Dst:             memcmp
        - Src:             'pem.c:533,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:548,15'
          Dst:             _libssh2_calloc
        - Src:             'pem.c:550,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:555,12'
          Dst:             strcmp
        - Src:             'pem.c:556,17'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:557,18'
          Dst:             _libssh2_get_u32
        - Src:             'pem.c:558,23'
          Dst:             _libssh2_error
        - Src:             'pem.c:564,38'
          Dst:             strlen
        - Src:             'pem.c:563,16'
          Dst:             _libssh2_bcrypt_pbkdf
        - Src:             'pem.c:567,23'
          Dst:             _libssh2_error
        - Src:             'pem.c:573,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:581,20'
          Dst:             _libssh2_calloc
        - Src:             'pem.c:583,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:588,19'
          Dst:             _libssh2_calloc
        - Src:             'pem.c:590,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:647,16'
          Dst:             strcmp
        - Src:             'pem.c:648,16'
          Dst:             strcmp
        - Src:             'pem.c:649,21'
          Dst:             _libssh2_check_length
        - Src:             'pem.c:650,27'
          Dst:             _libssh2_error
        - Src:             'pem.c:657,27'
          Dst:             _libssh2_error
        - Src:             'pem.c:671,8'
          Dst:             _libssh2_get_u32
        - Src:             'pem.c:672,8'
          Dst:             _libssh2_get_u32
        - Src:             'pem.c:674,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:682,38'
          Dst:             _libssh2_string_buf_new
        - Src:             'pem.c:684,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:690,25'
          Dst:             _libssh2_calloc
        - Src:             'pem.c:692,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:695,13'
          Dst:             _libssh2_string_buf_free
        - Src:             'pem.c:710,9'
          Dst:             explicit_bzero
        - Src:             'pem.c:714,9'
          Dst:             explicit_bzero
        - Src:             'pem.c:718,9'
          Dst:             explicit_bzero
        - Src:             'pem.c:722,9'
          Dst:             explicit_bzero
    - 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:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    readline
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          127
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - fgets
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'pem.c:51,9'
          Dst:             fgets
        - Src:             'pem.c:56,15'
          Dst:             strlen
        - Src:             'pem.c:63,15'
          Dst:             strlen
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_openssh_pem_parse
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 733
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          203
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - _libssh2_error
        - _libssh2_openssh_pem_parse_data
        - explicit_bzero
        - readline
        - strcmp
        - strlen
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'pem.c:744,12'
          Dst:             readline
        - Src:             'pem.c:747,13'
          Dst:             strcmp
        - Src:             'pem.c:749,8'
          Dst:             readline
        - Src:             'pem.c:758,23'
          Dst:             strlen
        - Src:             'pem.c:761,17'
          Dst:             _libssh2_error
        - Src:             'pem.c:773,12'
          Dst:             readline
        - Src:             'pem.c:777,13'
          Dst:             strcmp
        - Src:             'pem.c:783,11'
          Dst:             _libssh2_openssh_pem_parse_data
        - Src:             'pem.c:790,9'
          Dst:             explicit_bzero
    - functionName:    hex_decode
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_pem_parse_memory
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          441
      EdgeCount:       87
      CyclomaticComplexity: 25
      functionsReached:
        - _libssh2_base64_decode
        - _libssh2_error
        - explicit_bzero
        - hex_decode
        - libssh2_crypt_methods
        - memcmp
        - readline_memory
        - strcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'pem.c:169,12'
          Dst:             readline_memory
        - Src:             'pem.c:175,13'
          Dst:             strcmp
        - Src:             'pem.c:177,8'
          Dst:             readline_memory
        - Src:             'pem.c:182,39'
          Dst:             strlen
        - Src:             'pem.c:182,8'
          Dst:             memcmp
        - Src:             'pem.c:186,12'
          Dst:             readline_memory
        - Src:             'pem.c:191,23'
          Dst:             libssh2_crypt_methods
        - Src:             'pem.c:196,21'
          Dst:             strlen
        - Src:             'pem.c:195,17'
          Dst:             memcmp
        - Src:             'pem.c:198,35'
          Dst:             strlen
        - Src:             'pem.c:205,13'
          Dst:             _libssh2_error
        - Src:             'pem.c:213,37'
          Dst:             hex_decode
        - Src:             'pem.c:214,22'
          Dst:             hex_decode
        - Src:             'pem.c:218,12'
          Dst:             readline_memory
        - Src:             'pem.c:231,23'
          Dst:             strlen
        - Src:             'pem.c:234,17'
          Dst:             _libssh2_error
        - Src:             'pem.c:246,12'
          Dst:             readline_memory
        - Src:             'pem.c:250,13'
          Dst:             strcmp
        - Src:             'pem.c:256,8'
          Dst:             _libssh2_base64_decode
        - Src:             'pem.c:373,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:383,9'
          Dst:             explicit_bzero
    - functionName:    _libssh2_pem_parse
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          106
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - _libssh2_error
        - _libssh2_pem_parse_memory
        - fread
        - fseek
        - ftell
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pem.c:120,5'
          Dst:             fseek
        - Src:             'pem.c:121,20'
          Dst:             ftell
        - Src:             'pem.c:122,5'
          Dst:             fseek
        - Src:             'pem.c:126,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:132,8'
          Dst:             fread
        - Src:             'pem.c:133,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:139,11'
          Dst:             _libssh2_pem_parse_memory
    - functionName:    fseek
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ftell
      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:    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:    banner_receive
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         57
      ICount:          384
      EdgeCount:       77
      CyclomaticComplexity: 22
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:134,17'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:138,13'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:192,16'
          Dst:             _libssh2_error
        - Src:             'session.c:197,5'
          Dst:             _libssh2_debug_low
    - functionName:    banner_send
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          227
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - _libssh2_debug_low
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:222,26'
          Dst:             strlen
        - Src:             'session.c:239,13'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:255,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:260,9'
          Dst:             _libssh2_debug_low
    - functionName:    session_nonblock
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fcntl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:300,13'
          Dst:             fcntl
        - Src:             'session.c:302,16'
          Dst:             fcntl
        - Src:             'session.c:304,16'
          Dst:             fcntl
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_socket_nonblocking
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 385
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fcntl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:340,17'
          Dst:             fcntl
    - functionName:    libssh2_session_banner_get
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1959
      functionLinenumberEnd: 1968
      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:    poll_listener_queued
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1598
      functionLinenumberEnd: 1599
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_list_first
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:1599,12'
          Dst:             _libssh2_list_first
    - functionName:    poll_channel_write
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1587
      functionLinenumberEnd: 1588
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_poll
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1610
      functionLinenumberEnd: 1937
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         111
      ICount:          888
      EdgeCount:       139
      CyclomaticComplexity: 30
      functionsReached:
        - _libssh2_error
        - _libssh2_transport_read
        - gettimeofday
        - libssh2_poll_channel_read
        - poll
        - poll_channel_write
        - poll_listener_queued
      functionUses:    0
      BranchProfiles:
        - Branch String:   'session.c:1628,9'
          Branch Sides:    []
        - Branch String:   'session.c:1747,17'
          Branch Sides:    []
        - Branch String:   'session.c:1829,17'
          Branch Sides:    []
      Callsites:
        - Src:             'session.c:1653,17'
          Dst:             _libssh2_error
        - Src:             'session.c:1754,29'
          Dst:             libssh2_poll_channel_read
        - Src:             'session.c:1763,29'
          Dst:             libssh2_poll_channel_read
        - Src:             'session.c:1772,29'
          Dst:             poll_channel_write
        - Src:             'session.c:1793,29'
          Dst:             poll_listener_queued
        - Src:             'session.c:1820,13'
          Dst:             gettimeofday
        - Src:             'session.c:1821,22'
          Dst:             poll
        - Src:             'session.c:1822,13'
          Dst:             gettimeofday
        - Src:             'session.c:1841,31'
          Dst:             _libssh2_transport_read
        - Src:             'session.c:1855,31'
          Dst:             _libssh2_transport_read
    - functionName:    libssh2_poll_channel_read
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1545
      functionLinenumberEnd: 1577
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          149
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - _libssh2_error
        - _libssh2_list_first
        - _libssh2_list_next
        - _libssh2_ntohu32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:1553,14'
          Dst:             _libssh2_list_first
        - Src:             'session.c:1557,20'
          Dst:             _libssh2_error
        - Src:             'session.c:1561,33'
          Dst:             _libssh2_ntohu32
        - Src:             'session.c:1573,18'
          Dst:             _libssh2_list_next
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_session_get_read_timeout
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1533
      functionLinenumberEnd: 1534
      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:    libssh2_session_set_read_timeout
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1520
      functionLinenumberEnd: 1525
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_session_get_timeout
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1509
      functionLinenumberEnd: 1510
      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:    libssh2_session_set_timeout
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1499
      functionLinenumberEnd: 1501
      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:    libssh2_session_get_blocking
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1488
      functionLinenumberEnd: 1489
      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:    libssh2_session_set_blocking
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1478
      functionLinenumberEnd: 1480
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_session_set_blocking
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:1479,11'
          Dst:             _libssh2_session_set_blocking
    - functionName:    _libssh2_session_set_blocking
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1462
      functionLinenumberEnd: 1468
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_debug_low
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:1464,5'
          Dst:             _libssh2_debug_low
    - functionName:    libssh2_session_flag
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1435
      functionLinenumberEnd: 1452
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          50
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'session.c:1436,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    libssh2_session_set_last_error
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1422
      functionLinenumberEnd: 1423
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_error_flags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:1423,12'
          Dst:             _libssh2_error_flags
    - functionName:    libssh2_session_last_errno
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1406
      functionLinenumberEnd: 1407
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_session_last_error
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1354
      functionLinenumberEnd: 1398
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          186
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:1379,18'
          Dst:             strlen
    - functionName:    libssh2_session_abstract
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1341
      functionLinenumberEnd: 1342
      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:    libssh2_session_methods
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1334
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          128
      EdgeCount:       18
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_error
      functionUses:    0
      BranchProfiles:
        - Branch String:   'session.c:1282,5'
          Branch Sides:    []
      Callsites:
        - Src:             'session.c:1322,9'
          Dst:             _libssh2_error
        - Src:             'session.c:1328,9'
          Dst:             _libssh2_error
    - functionName:    session_disconnect
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1251
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          151
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:1211,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:1215,25'
          Dst:             strlen
        - Src:             'session.c:1218,24'
          Dst:             strlen
        - Src:             'session.c:1221,20'
          Dst:             _libssh2_error
        - Src:             'session.c:1225,20'
          Dst:             _libssh2_error
        - Src:             'session.c:1234,9'
          Dst:             _libssh2_store_u32
        - Src:             'session.c:1235,9'
          Dst:             _libssh2_store_str
        - Src:             'session.c:1237,9'
          Dst:             _libssh2_store_u32
        - Src:             'session.c:1242,10'
          Dst:             _libssh2_transport_send
    - functionName:    libssh2_session_disconnect_ex
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1259
      functionLinenumberEnd: 1266
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          90
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_wait_socket
        - session_disconnect
        - time
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:1263,5'
          Dst:             time
        - Src:             'session.c:1263,5'
          Dst:             session_disconnect
        - Src:             'session.c:1263,5'
          Dst:             _libssh2_wait_socket
    - 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:    35
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_wait_socket
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 603
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          255
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - _libssh2_debug_low
        - _libssh2_error
        - difftime
        - libssh2_keepalive_send
        - libssh2_session_block_directions
        - poll
        - time
      functionUses:    29
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:617,10'
          Dst:             libssh2_keepalive_send
        - Src:             'session.c:624,11'
          Dst:             libssh2_session_block_directions
        - Src:             'session.c:627,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:638,22'
          Dst:             time
        - Src:             'session.c:639,34'
          Dst:             difftime
        - Src:             'session.c:641,20'
          Dst:             _libssh2_error
        - Src:             'session.c:667,14'
          Dst:             poll
        - Src:             'session.c:715,16'
          Dst:             _libssh2_error
        - Src:             'session.c:723,15'
          Dst:             __errno_location
        - Src:             'session.c:731,16'
          Dst:             _libssh2_error
    - functionName:    libssh2_session_block_directions
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1949
      functionLinenumberEnd: 1950
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    difftime
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    session_free
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 923
      functionLinenumberEnd: 1180
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         206
      ICount:          1603
      EdgeCount:       277
      CyclomaticComplexity: 73
      functionsReached:
        - _libssh2_channel_forward_cancel
        - _libssh2_channel_free
        - _libssh2_debug_low
        - _libssh2_list_first
        - _libssh2_list_remove
        - session_nonblock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:931,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:940,21'
          Dst:             _libssh2_list_first
        - Src:             'session.c:941,18'
          Dst:             _libssh2_channel_free
        - Src:             'session.c:951,20'
          Dst:             _libssh2_list_first
        - Src:             'session.c:952,18'
          Dst:             _libssh2_channel_forward_cancel
        - Src:             'session.c:1143,18'
          Dst:             _libssh2_list_first
        - Src:             'session.c:1145,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:1148,9'
          Dst:             _libssh2_list_remove
        - Src:             'session.c:1155,5'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:1160,14'
          Dst:             session_nonblock
        - Src:             'session.c:1162,13'
          Dst:             _libssh2_debug_low
    - functionName:    libssh2_session_free
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1190
      functionLinenumberEnd: 1195
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          71
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_wait_socket
        - session_free
        - time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:1193,5'
          Dst:             time
        - Src:             'session.c:1193,5'
          Dst:             session_free
        - Src:             'session.c:1193,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_session_startup
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - libssh2_session_handshake
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:911,12'
          Dst:             libssh2_session_handshake
    - functionName:    libssh2_session_handshake
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 888
      functionLinenumberEnd: 893
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          74
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_wait_socket
        - session_startup
        - time
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:891,5'
          Dst:             time
        - Src:             'session.c:891,5'
          Dst:             session_startup
        - Src:             'session.c:891,5'
          Dst:             _libssh2_wait_socket
    - functionName:    session_startup
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 740
      functionLinenumberEnd: 876
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         61
      ICount:          430
      EdgeCount:       83
      CyclomaticComplexity: 24
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_kex_exchange
        - _libssh2_match_string
        - _libssh2_packet_require
        - _libssh2_transport_send
        - banner_receive
        - banner_send
        - fprintf
        - get_socket_nonblocking
        - session_nonblock
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:744,9'
          Dst:             fprintf
        - Src:             'session.c:750,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:754,20'
          Dst:             _libssh2_error
        - Src:             'session.c:760,14'
          Dst:             get_socket_nonblocking
        - Src:             'session.c:764,18'
          Dst:             session_nonblock
        - Src:             'session.c:766,24'
          Dst:             _libssh2_error
        - Src:             'session.c:776,14'
          Dst:             banner_send
        - Src:             'session.c:780,20'
          Dst:             _libssh2_error
        - Src:             'session.c:789,18'
          Dst:             banner_receive
        - Src:             'session.c:793,24'
          Dst:             _libssh2_error
        - Src:             'session.c:795,17'
          Dst:             strncmp
        - Src:             'session.c:801,14'
          Dst:             _libssh2_kex_exchange
        - Src:             'session.c:805,20'
          Dst:             _libssh2_error
        - Src:             'session.c:812,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:817,9'
          Dst:             _libssh2_htonu32
        - Src:             'session.c:826,14'
          Dst:             _libssh2_transport_send
        - Src:             'session.c:832,20'
          Dst:             _libssh2_error
        - Src:             'session.c:841,14'
          Dst:             _libssh2_packet_require
        - Src:             'session.c:846,20'
          Dst:             _libssh2_error
        - Src:             'session.c:857,12'
          Dst:             _libssh2_match_string
        - Src:             'session.c:860,20'
          Dst:             _libssh2_error
    - functionName:    libssh2_session_callback_set
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 588
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - libssh2_session_callback_set2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:587,20'
          Dst:             libssh2_session_callback_set2
    - functionName:    libssh2_session_callback_set2
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          172
      EdgeCount:       29
      CyclomaticComplexity: 16
      functionsReached:
        - _libssh2_debug_low
      functionUses:    1
      BranchProfiles:
        - Branch String:   'session.c:502,5'
          Branch Sides:    []
      Callsites:
        - Src:             'session.c:555,5'
          Dst:             _libssh2_debug_low
    - functionName:    libssh2_default_realloc
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:95,12'
          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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_default_free
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_default_alloc
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_session_init_ex
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 483
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          131
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_init_if_needed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:479,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:481,9'
          Dst:             _libssh2_init_if_needed
    - functionName:    libssh2_banner_set
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 429
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - libssh2_session_banner_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:429,12'
          Dst:             libssh2_session_banner_set
    - functionName:    libssh2_session_banner_set
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          149
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'session.c:393,34'
          Dst:             strlen
        - Src:             'session.c:405,16'
          Dst:             _libssh2_error
        - Src:             'session.c:413,5'
          Dst:             _libssh2_debug_low
    - functionName:    send_existing
      functionSourceFile: '/src/libssh2/src/transport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 921
      functionLinenumberEnd: 984
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          195
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_debug_low
        - debugdump
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'transport.c:938,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:951,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:955,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:958,9'
          Dst:             debugdump
    - functionName:    debugdump
      functionSourceFile: '/src/libssh2/src/transport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          310
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - __ctype_b_loc
        - fprintf
        - snprintf
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'transport.c:72,12'
          Dst:             snprintf
        - Src:             'transport.c:78,9'
          Dst:             fprintf
        - Src:             'transport.c:82,16'
          Dst:             snprintf
        - Src:             'transport.c:104,30'
          Dst:             __ctype_b_loc
        - Src:             'transport.c:113,13'
          Dst:             fprintf
    - 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:    5
      BranchProfiles:  []
      Callsites:       []
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_transport_send
      functionSourceFile: '/src/libssh2/src/transport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1007
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         178
      ICount:          1300
      EdgeCount:       243
      CyclomaticComplexity: 67
      functionsReached:
        - __assert_fail
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_kex_exchange
        - _libssh2_openssl_random
        - debugdump
        - send_existing
      functionUses:    34
      BranchProfiles:  []
      Callsites:
        - Src:             'transport.c:1041,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:1043,14'
          Dst:             _libssh2_kex_exchange
        - Src:             'transport.c:1048,5'
          Dst:             debugdump
        - Src:             'transport.c:1050,9'
          Dst:             debugdump
        - Src:             'transport.c:1054,10'
          Dst:             send_existing
        - Src:             'transport.c:1176,5'
          Dst:             _libssh2_htonu32
        - Src:             'transport.c:1181,8'
          Dst:             _libssh2_openssl_random
        - Src:             'transport.c:1182,16'
          Dst:             _libssh2_error
        - Src:             'transport.c:1200,24'
          Dst:             _libssh2_error
        - Src:             'transport.c:1244,17'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:1258,17'
          Dst:             __assert_fail
        - Src:             'transport.c:1280,24'
          Dst:             _libssh2_error
        - Src:             'transport.c:1294,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:1298,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:1301,9'
          Dst:             debugdump
    - functionName:    fullpacket
      functionSourceFile: '/src/libssh2/src/transport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         83
      ICount:          721
      EdgeCount:       114
      CyclomaticComplexity: 33
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_packet_add
        - _libssh2_timingsafe_bcmp
        - debugdump
        - decrypt
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'transport.c:229,16'
          Dst:             _libssh2_timingsafe_bcmp
        - Src:             'transport.c:232,17'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:248,22'
          Dst:             decrypt
        - Src:             'transport.c:276,26'
          Dst:             decrypt
        - Src:             'transport.c:332,9'
          Dst:             debugdump
        - Src:             'transport.c:339,14'
          Dst:             _libssh2_packet_add
    - functionName:    decrypt
      functionSourceFile: '/src/libssh2/src/transport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          247
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - __assert_fail
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'transport.c:136,9'
          Dst:             __assert_fail
    - functionName:    _libssh2_transport_read
      functionSourceFile: '/src/libssh2/src/transport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 376
      functionLinenumberEnd: 916
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         229
      ICount:          1692
      EdgeCount:       311
      CyclomaticComplexity: 84
      functionsReached:
        - __assert_fail
        - _libssh2_debug_low
        - _libssh2_kex_exchange
        - _libssh2_ntohu32
        - _libssh2_store_u32
        - debugdump
        - decrypt
        - fullpacket
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'transport.c:418,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:420,14'
          Dst:             _libssh2_kex_exchange
        - Src:             'transport.c:473,9'
          Dst:             __assert_fail
        - Src:             'transport.c:506,17'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:512,13'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:517,13'
          Dst:             debugdump
        - Src:             'transport.c:578,17'
          Dst:             _libssh2_store_u32
        - Src:             'transport.c:581,17'
          Dst:             _libssh2_store_u32
        - Src:             'transport.c:586,26'
          Dst:             decrypt
        - Src:             'transport.c:608,36'
          Dst:             _libssh2_ntohu32
        - Src:             'transport.c:626,40'
          Dst:             _libssh2_ntohu32
        - Src:             'transport.c:656,36'
          Dst:             _libssh2_ntohu32
        - Src:             'transport.c:804,9'
          Dst:             __assert_fail
        - Src:             'transport.c:840,22'
          Dst:             decrypt
        - Src:             'transport.c:889,18'
          Dst:             fullpacket
    - functionName:    Blowfish_encipher
      functionSourceFile: '/src/libssh2/src/./blowfish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          685
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    blf_enc
      functionSourceFile: '/src/libssh2/src/./blowfish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 533
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - Blowfish_encipher
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './blowfish.c:539,9'
          Dst:             Blowfish_encipher
    - functionName:    Blowfish_stream2word
      functionSourceFile: '/src/libssh2/src/./blowfish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 437
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    Blowfish_expand0state
      functionSourceFile: '/src/libssh2/src/./blowfish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          144
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - Blowfish_encipher
        - Blowfish_stream2word
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './blowfish.c:453,16'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:461,9'
          Dst:             Blowfish_encipher
        - Src:             './blowfish.c:469,13'
          Dst:             Blowfish_encipher
    - functionName:    Blowfish_expandstate
      functionSourceFile: '/src/libssh2/src/./blowfish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          172
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - Blowfish_encipher
        - Blowfish_stream2word
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './blowfish.c:491,16'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:499,18'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:500,18'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:501,9'
          Dst:             Blowfish_encipher
        - Src:             './blowfish.c:509,22'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:510,22'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:511,13'
          Dst:             Blowfish_encipher
    - functionName:    Blowfish_initstate
      functionSourceFile: '/src/libssh2/src/./blowfish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bcrypt_hash
      functionSourceFile: '/src/libssh2/src/bcrypt_pbkdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          165
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - Blowfish_expand0state
        - Blowfish_expandstate
        - Blowfish_initstate
        - Blowfish_stream2word
        - blf_enc
        - explicit_bzero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'bcrypt_pbkdf.c:71,5'
          Dst:             Blowfish_initstate
        - Src:             'bcrypt_pbkdf.c:72,5'
          Dst:             Blowfish_expandstate
        - Src:             'bcrypt_pbkdf.c:74,9'
          Dst:             Blowfish_expand0state
        - Src:             'bcrypt_pbkdf.c:75,9'
          Dst:             Blowfish_expand0state
        - Src:             'bcrypt_pbkdf.c:81,20'
          Dst:             Blowfish_stream2word
        - Src:             'bcrypt_pbkdf.c:84,9'
          Dst:             blf_enc
        - Src:             'bcrypt_pbkdf.c:95,5'
          Dst:             explicit_bzero
        - Src:             'bcrypt_pbkdf.c:96,5'
          Dst:             explicit_bzero
        - Src:             'bcrypt_pbkdf.c:97,5'
          Dst:             explicit_bzero
    - functionName:    bcrypt_pbkdf
      functionSourceFile: '/src/libssh2/src/bcrypt_pbkdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          394
      EdgeCount:       85
      CyclomaticComplexity: 24
      functionsReached:
        - _libssh2_sha512_final
        - _libssh2_sha512_init
        - _libssh2_sha512_update
        - bcrypt_hash
        - calloc
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bcrypt_pbkdf.c:123,17'
          Dst:             calloc
        - Src:             'bcrypt_pbkdf.c:132,9'
          Dst:             _libssh2_sha512_init
        - Src:             'bcrypt_pbkdf.c:133,9'
          Dst:             _libssh2_sha512_update
        - Src:             'bcrypt_pbkdf.c:134,9'
          Dst:             _libssh2_sha512_final
        - Src:             'bcrypt_pbkdf.c:147,13'
          Dst:             _libssh2_sha512_init
        - Src:             'bcrypt_pbkdf.c:148,13'
          Dst:             _libssh2_sha512_update
        - Src:             'bcrypt_pbkdf.c:149,13'
          Dst:             _libssh2_sha512_final
        - Src:             'bcrypt_pbkdf.c:150,13'
          Dst:             explicit_bzero
        - Src:             'bcrypt_pbkdf.c:155,9'
          Dst:             bcrypt_hash
        - Src:             'bcrypt_pbkdf.c:160,17'
          Dst:             _libssh2_sha512_init
        - Src:             'bcrypt_pbkdf.c:161,17'
          Dst:             _libssh2_sha512_update
        - Src:             'bcrypt_pbkdf.c:162,17'
          Dst:             _libssh2_sha512_final
        - Src:             'bcrypt_pbkdf.c:163,17'
          Dst:             explicit_bzero
        - Src:             'bcrypt_pbkdf.c:168,13'
          Dst:             bcrypt_hash
        - Src:             'bcrypt_pbkdf.c:188,5'
          Dst:             explicit_bzero
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_bcrypt_pbkdf
      functionSourceFile: '/src/libssh2/src/bcrypt_pbkdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bcrypt_pbkdf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'bcrypt_pbkdf.c:205,12'
          Dst:             bcrypt_pbkdf
    - functionName:    channel_signal
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3043
      functionLinenumberEnd: 3093
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          175
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_error
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:3058,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:3063,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:3064,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:3066,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:3074,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:3078,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:3084,20'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_signal_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3099
      functionLinenumberEnd: 3108
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          95
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_wait_socket
        - channel_signal
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:3105,5'
          Dst:             time
        - Src:             'channel.c:3105,5'
          Dst:             channel_signal
        - Src:             'channel.c:3105,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_window_write_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3013
      functionLinenumberEnd: 3024
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          43
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_channel_free
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2937
      functionLinenumberEnd: 2945
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          89
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_channel_free
        - _libssh2_wait_socket
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2943,5'
          Dst:             time
        - Src:             'channel.c:2943,5'
          Dst:             _libssh2_channel_free
        - Src:             'channel.c:2943,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_free
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2809
      functionLinenumberEnd: 2925
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         68
      ICount:          499
      EdgeCount:       89
      CyclomaticComplexity: 23
      functionsReached:
        - __assert_fail
        - _libssh2_channel_close
        - _libssh2_debug_low
        - _libssh2_htonu32
        - _libssh2_list_remove
        - _libssh2_packet_ask
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2816,5'
          Dst:             __assert_fail
        - Src:             'channel.c:2819,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2829,14'
          Dst:             _libssh2_channel_close
        - Src:             'channel.c:2851,5'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:2852,12'
          Dst:             _libssh2_packet_ask
        - Src:             'channel.c:2854,12'
          Dst:             _libssh2_packet_ask
        - Src:             'channel.c:2865,5'
          Dst:             _libssh2_list_remove
    - functionName:    _libssh2_channel_close
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2642
      functionLinenumberEnd: 2720
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         46
      ICount:          278
      EdgeCount:       61
      CyclomaticComplexity: 17
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_transport_read
        - _libssh2_transport_send
        - channel_send_eof
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2654,14'
          Dst:             channel_send_eof
        - Src:             'channel.c:2659,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:2668,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2672,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:2678,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:2681,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:2686,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:2701,18'
          Dst:             _libssh2_transport_read
    - functionName:    channel_send_eof
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2491
      functionLinenumberEnd: 2514
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_transport_send
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2496,5'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2500,5'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:2501,10'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:2503,9'
          Dst:             _libssh2_error
        - Src:             'channel.c:2508,16'
          Dst:             _libssh2_error
    - functionName:    channel_wait_closed
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2745
      functionLinenumberEnd: 2781
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          119
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_transport_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2750,16'
          Dst:             _libssh2_error
        - Src:             'channel.c:2756,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2769,18'
          Dst:             _libssh2_transport_read
    - functionName:    libssh2_channel_wait_closed
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2790
      functionLinenumberEnd: 2798
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          89
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_wait_socket
        - channel_wait_closed
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2796,5'
          Dst:             time
        - Src:             'channel.c:2796,5'
          Dst:             channel_wait_closed
        - Src:             'channel.c:2796,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_close
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2729
      functionLinenumberEnd: 2737
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          89
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_channel_close
        - _libssh2_wait_socket
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2735,5'
          Dst:             time
        - Src:             'channel.c:2735,5'
          Dst:             _libssh2_channel_close
        - Src:             'channel.c:2735,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_wait_eof
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2581
      functionLinenumberEnd: 2622
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          136
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_transport_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2586,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2604,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:2608,14'
          Dst:             _libssh2_transport_read
        - Src:             'channel.c:2614,20'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_wait_eof
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2631
      functionLinenumberEnd: 2639
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          89
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_wait_socket
        - channel_wait_eof
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2637,5'
          Dst:             time
        - Src:             'channel.c:2637,5'
          Dst:             channel_wait_eof
        - Src:             'channel.c:2637,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_eof
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2540
      functionLinenumberEnd: 2573
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          131
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_list_first
        - _libssh2_list_next
        - _libssh2_ntohu32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2549,14'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:2553,23'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:2557,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2565,35'
          Dst:             _libssh2_ntohu32
    - functionName:    libssh2_channel_send_eof
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2523
      functionLinenumberEnd: 2531
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          89
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_wait_socket
        - channel_send_eof
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2529,5'
          Dst:             time
        - Src:             'channel.c:2529,5'
          Dst:             channel_send_eof
        - Src:             'channel.c:2529,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_write_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2473
      functionLinenumberEnd: 2483
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          99
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_channel_write
        - _libssh2_wait_socket
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2479,5'
          Dst:             time
        - Src:             'channel.c:2479,5'
          Dst:             _libssh2_channel_write
        - Src:             'channel.c:2479,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_write
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2333
      functionLinenumberEnd: 2463
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          402
      EdgeCount:       60
      CyclomaticComplexity: 17
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_store_u32
        - _libssh2_transport_read
        - _libssh2_transport_send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2352,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2358,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:2362,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:2370,18'
          Dst:             _libssh2_transport_read
        - Src:             'channel.c:2374,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:2394,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:2396,13'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:2401,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2409,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2418,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:2421,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2430,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:2434,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:2439,20'
          Dst:             _libssh2_error
    - functionName:    _libssh2_channel_packet_data_len
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2269
      functionLinenumberEnd: 2319
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          229
      EdgeCount:       54
      CyclomaticComplexity: 17
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_list_first
        - _libssh2_list_next
        - _libssh2_ntohu32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2275,19'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:2281,23'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:2285,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2290,25'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:2303,33'
          Dst:             _libssh2_ntohu32
    - functionName:    libssh2_channel_window_read_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2959
      functionLinenumberEnd: 3000
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          171
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_list_first
        - _libssh2_list_next
        - _libssh2_ntohu32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2971,13'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:2975,30'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:2979,17'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2989,18'
          Dst:             _libssh2_ntohu32
    - functionName:    libssh2_channel_read_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2241
      functionLinenumberEnd: 2259
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          179
      EdgeCount:       47
      CyclomaticComplexity: 12
      functionsReached:
        - _libssh2_channel_read
        - _libssh2_channel_receive_window_adjust
        - _libssh2_wait_socket
        - libssh2_channel_window_read_ex
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2248,19'
          Dst:             libssh2_channel_window_read_ex
        - Src:             'channel.c:2251,9'
          Dst:             time
        - Src:             'channel.c:2251,9'
          Dst:             _libssh2_channel_receive_window_adjust
        - Src:             'channel.c:2251,9'
          Dst:             _libssh2_wait_socket
        - Src:             'channel.c:2256,5'
          Dst:             time
        - Src:             'channel.c:2256,5'
          Dst:             _libssh2_channel_read
        - Src:             'channel.c:2256,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_receive_window_adjust
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1873
      functionLinenumberEnd: 1929
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          216
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_transport_send
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1882,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1899,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1900,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1901,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1909,10'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1912,9'
          Dst:             _libssh2_error
        - Src:             'channel.c:1918,16'
          Dst:             _libssh2_error
    - functionName:    _libssh2_channel_read
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2070
      functionLinenumberEnd: 2222
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         82
      ICount:          581
      EdgeCount:       112
      CyclomaticComplexity: 32
      functionsReached:
        - _libssh2_channel_receive_window_adjust
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_list_first
        - _libssh2_list_next
        - _libssh2_list_remove
        - _libssh2_ntohu32
        - _libssh2_transport_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2079,5'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2098,14'
          Dst:             _libssh2_channel_receive_window_adjust
        - Src:             'channel.c:2109,14'
          Dst:             _libssh2_transport_read
        - Src:             'channel.c:2113,16'
          Dst:             _libssh2_error
        - Src:             'channel.c:2115,19'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:2128,21'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:2135,17'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2143,13'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:2156,32'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:2176,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2193,17'
          Dst:             _libssh2_list_remove
        - Src:             'channel.c:2215,16'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_handle_extended_data
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2051
      functionLinenumberEnd: 2053
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - libssh2_channel_handle_extended_data2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2052,11'
          Dst:             libssh2_channel_handle_extended_data2
    - functionName:    libssh2_channel_handle_extended_data2
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2028
      functionLinenumberEnd: 2037
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          92
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_channel_extended_data
        - _libssh2_wait_socket
        - time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:2034,5'
          Dst:             time
        - Src:             'channel.c:2034,5'
          Dst:             _libssh2_channel_extended_data
        - Src:             'channel.c:2034,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_extended_data
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1996
      functionLinenumberEnd: 2019
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_channel_flush
        - _libssh2_debug_low
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1998,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2010,17'
          Dst:             _libssh2_channel_flush
    - functionName:    _libssh2_channel_flush
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1671
      functionLinenumberEnd: 1758
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          358
      EdgeCount:       65
      CyclomaticComplexity: 19
      functionsReached:
        - _libssh2_channel_receive_window_adjust
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_list_first
        - _libssh2_list_next
        - _libssh2_list_remove
        - _libssh2_ntohu32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1674,13'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:1680,36'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:1684,17'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1694,18'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:1702,40'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:1706,28'
          Dst:             _libssh2_error
        - Src:             'channel.c:1720,21'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1733,21'
          Dst:             _libssh2_list_remove
        - Src:             'channel.c:1748,13'
          Dst:             _libssh2_channel_receive_window_adjust
    - functionName:    libssh2_channel_receive_window_adjust2
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1981
      functionLinenumberEnd: 1992
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          99
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_channel_receive_window_adjust
        - _libssh2_wait_socket
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1987,5'
          Dst:             time
        - Src:             'channel.c:1987,5'
          Dst:             _libssh2_channel_receive_window_adjust
        - Src:             'channel.c:1987,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_receive_window_adjust
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1947
      functionLinenumberEnd: 1962
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          110
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - _libssh2_channel_receive_window_adjust
        - _libssh2_wait_socket
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1954,5'
          Dst:             time
        - Src:             'channel.c:1954,5'
          Dst:             _libssh2_channel_receive_window_adjust
        - Src:             'channel.c:1954,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_get_exit_signal
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1814
      functionLinenumberEnd: 1857
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          194
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - _libssh2_error
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1821,23'
          Dst:             strlen
        - Src:             'channel.c:1825,28'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_get_exit_status
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1789
      functionLinenumberEnd: 1794
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_channel_flush_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1768
      functionLinenumberEnd: 1777
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          92
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_channel_flush
        - _libssh2_wait_socket
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1774,5'
          Dst:             time
        - Src:             'channel.c:1774,5'
          Dst:             _libssh2_channel_flush
        - Src:             'channel.c:1774,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_set_blocking
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1658
      functionLinenumberEnd: 1661
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_session_set_blocking
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1660,15'
          Dst:             _libssh2_session_set_blocking
    - functionName:    libssh2_channel_process_startup
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1637
      functionLinenumberEnd: 1648
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          103
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_channel_process_startup
        - _libssh2_wait_socket
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1643,5'
          Dst:             time
        - Src:             'channel.c:1643,5'
          Dst:             _libssh2_channel_process_startup
        - Src:             'channel.c:1643,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_process_startup
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1528
      functionLinenumberEnd: 1626
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          345
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_packet_requirev
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1536,16'
          Dst:             _libssh2_error
        - Src:             'channel.c:1551,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1558,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1563,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1564,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1568,13'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1574,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1580,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:1588,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1594,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1603,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:1611,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1623,12'
          Dst:             _libssh2_error
    - functionName:    channel_x11_req
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1372
      functionLinenumberEnd: 1497
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          433
      EdgeCount:       71
      CyclomaticComplexity: 20
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_openssl_random
        - _libssh2_packet_requirev
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
        - snprintf
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1378,22'
          Dst:             strlen
        - Src:             'channel.c:1380,23'
          Dst:             strlen
        - Src:             'channel.c:1393,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1404,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1409,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1410,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1415,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1418,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1431,16'
          Dst:             _libssh2_openssl_random
        - Src:             'channel.c:1432,24'
          Dst:             _libssh2_error
        - Src:             'channel.c:1437,17'
          Dst:             snprintf
        - Src:             'channel.c:1442,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1447,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1451,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:1459,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1465,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1475,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:1483,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1495,12'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_x11_req_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1507
      functionLinenumberEnd: 1517
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          101
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_wait_socket
        - channel_x11_req
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1513,5'
          Dst:             time
        - Src:             'channel.c:1513,5'
          Dst:             channel_x11_req
        - Src:             'channel.c:1513,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_request_pty_size
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1291
      functionLinenumberEnd: 1344
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          158
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1304,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1312,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1313,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1316,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1317,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1318,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1319,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1325,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1329,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:1335,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1338,9'
          Dst:             _libssh2_htonu32
    - functionName:    libssh2_channel_request_pty_size_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1349
      functionLinenumberEnd: 1359
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          101
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_wait_socket
        - channel_request_pty_size
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1355,5'
          Dst:             time
        - Src:             'channel.c:1355,5'
          Dst:             channel_request_pty_size
        - Src:             'channel.c:1355,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_request_pty
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1015
      functionLinenumberEnd: 1106
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          275
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_packet_requirev
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1027,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1037,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1044,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1045,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1049,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1050,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1051,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1052,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1053,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1054,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1060,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1064,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:1070,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1073,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1082,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:1090,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1103,12'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_request_pty_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1275
      functionLinenumberEnd: 1286
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          113
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_wait_socket
        - channel_request_pty
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1281,5'
          Dst:             time
        - Src:             'channel.c:1281,5'
          Dst:             channel_request_pty
        - Src:             'channel.c:1281,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_request_auth_agent
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1115
      functionLinenumberEnd: 1210
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          237
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_packet_requirev
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1127,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1140,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1152,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1153,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1162,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1167,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:1173,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1176,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1186,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:1195,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1208,12'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_request_auth_agent
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1222
      functionLinenumberEnd: 1264
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         53
      ICount:          229
      EdgeCount:       69
      CyclomaticComplexity: 18
      functionsReached:
        - _libssh2_wait_socket
        - channel_request_auth_agent
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1235,9'
          Dst:             time
        - Src:             'channel.c:1235,9'
          Dst:             channel_request_auth_agent
        - Src:             'channel.c:1235,9'
          Dst:             _libssh2_wait_socket
        - Src:             'channel.c:1248,9'
          Dst:             time
        - Src:             'channel.c:1248,9'
          Dst:             channel_request_auth_agent
        - Src:             'channel.c:1248,9'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_setenv
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 885
      functionLinenumberEnd: 983
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          313
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_packet_requirev
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:902,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:910,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:916,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:917,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:919,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:920,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:926,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:931,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:939,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:946,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:952,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:961,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:967,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:981,12'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_setenv_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 994
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          101
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_wait_socket
        - channel_setenv
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1000,5'
          Dst:             time
        - Src:             'channel.c:1000,5'
          Dst:             channel_setenv
        - Src:             'channel.c:1000,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_forward_accept
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 857
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          83
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - _libssh2_error
        - _libssh2_list_add
        - _libssh2_list_first
        - _libssh2_list_remove
        - _libssh2_transport_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:832,14'
          Dst:             _libssh2_transport_read
        - Src:             'channel.c:835,8'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:836,36'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:839,9'
          Dst:             _libssh2_list_remove
        - Src:             'channel.c:844,9'
          Dst:             _libssh2_list_add
        - Src:             'channel.c:850,9'
          Dst:             _libssh2_error
        - Src:             'channel.c:854,9'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_forward_accept
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 866
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          100
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - _libssh2_wait_socket
        - channel_forward_accept
        - libssh2_session_last_errno
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:872,5'
          Dst:             time
        - Src:             'channel.c:872,5'
          Dst:             channel_forward_accept
        - Src:             'channel.c:872,5'
          Dst:             libssh2_session_last_errno
        - Src:             'channel.c:872,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_forward_cancel
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 810
      functionLinenumberEnd: 819
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          89
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_channel_forward_cancel
        - _libssh2_wait_socket
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:816,5'
          Dst:             time
        - Src:             'channel.c:816,5'
          Dst:             _libssh2_channel_forward_cancel
        - Src:             'channel.c:816,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_forward_cancel
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 719
      functionLinenumberEnd: 798
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          233
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_channel_free
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_list_first
        - _libssh2_list_next
        - _libssh2_list_remove
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:723,23'
          Dst:             strlen
        - Src:             'channel.c:732,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:738,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:744,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:748,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:749,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:758,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:760,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:766,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:780,14'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:782,33'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:784,14'
          Dst:             _libssh2_channel_free
        - Src:             'channel.c:793,5'
          Dst:             _libssh2_list_remove
    - functionName:    channel_forward_listen
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 688
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          449
      EdgeCount:       68
      CyclomaticComplexity: 19
      functionsReached:
        - _libssh2_calloc
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_list_add
        - _libssh2_ntohu32
        - _libssh2_packet_requirev
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:554,47'
          Dst:             strlen
        - Src:             'channel.c:565,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:572,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:578,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:581,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:582,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:588,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:593,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:599,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:616,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:620,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:624,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:632,24'
          Dst:             _libssh2_calloc
        - Src:             'channel.c:634,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:640,21'
          Dst:             _libssh2_error
        - Src:             'channel.c:651,42'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:652,25'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:664,21'
          Dst:             _libssh2_list_add
        - Src:             'channel.c:678,13'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_forward_listen_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 698
      functionLinenumberEnd: 708
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          104
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - _libssh2_wait_socket
        - channel_forward_listen
        - libssh2_session_last_errno
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:704,5'
          Dst:             time
        - Src:             'channel.c:704,5'
          Dst:             channel_forward_listen
        - Src:             'channel.c:704,5'
          Dst:             libssh2_session_last_errno
        - Src:             'channel.c:704,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_direct_streamlocal
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          153
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_channel_open
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_store_str
        - _libssh2_store_u32
        - libssh2_session_last_errno
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:470,36'
          Dst:             strlen
        - Src:             'channel.c:471,37'
          Dst:             strlen
        - Src:             'channel.c:475,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:482,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:486,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:487,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:488,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:492,9'
          Dst:             _libssh2_channel_open
        - Src:             'channel.c:500,9'
          Dst:             libssh2_session_last_errno
    - functionName:    _libssh2_channel_open
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          707
      EdgeCount:       78
      CyclomaticComplexity: 20
      functionsReached:
        - _libssh2_calloc
        - _libssh2_channel_nextid
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_list_add
        - _libssh2_list_remove
        - _libssh2_ntohu32
        - _libssh2_packet_ask
        - _libssh2_packet_requirev
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
      functionUses:    3
      BranchProfiles:
        - Branch String:   'channel.c:288,13'
          Branch Sides:    []
      Callsites:
        - Src:             'channel.c:153,39'
          Dst:             _libssh2_channel_nextid
        - Src:             'channel.c:159,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:163,13'
          Dst:             _libssh2_calloc
        - Src:             'channel.c:165,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:173,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:189,9'
          Dst:             _libssh2_list_add
        - Src:             'channel.c:195,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:200,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:201,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:202,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:203,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:211,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:216,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:221,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:230,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:237,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:241,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:246,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:254,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:260,17'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:262,17'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:264,17'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:266,17'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:267,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:287,17'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:290,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:295,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:299,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:303,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:307,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:327,9'
          Dst:             _libssh2_list_remove
        - Src:             'channel.c:330,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:331,16'
          Dst:             _libssh2_packet_ask
        - Src:             'channel.c:335,16'
          Dst:             _libssh2_packet_ask
    - functionName:    _libssh2_channel_nextid
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_list_first
        - _libssh2_list_next
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:69,15'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:75,19'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:86,5'
          Dst:             _libssh2_debug_low
    - functionName:    libssh2_channel_direct_streamlocal_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          101
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - _libssh2_wait_socket
        - channel_direct_streamlocal
        - libssh2_session_last_errno
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:530,5'
          Dst:             time
        - Src:             'channel.c:530,5'
          Dst:             channel_direct_streamlocal
        - Src:             'channel.c:530,5'
          Dst:             libssh2_session_last_errno
        - Src:             'channel.c:530,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_direct_tcpip
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          160
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_channel_open
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_store_str
        - _libssh2_store_u32
        - libssh2_session_last_errno
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:389,36'
          Dst:             strlen
        - Src:             'channel.c:390,37'
          Dst:             strlen
        - Src:             'channel.c:395,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:402,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:407,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:408,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:409,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:410,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:414,9'
          Dst:             _libssh2_channel_open
        - Src:             'channel.c:422,9'
          Dst:             libssh2_session_last_errno
    - functionName:    libssh2_channel_direct_tcpip_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          104
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - _libssh2_wait_socket
        - channel_direct_tcpip
        - libssh2_session_last_errno
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:451,5'
          Dst:             time
        - Src:             'channel.c:451,5'
          Dst:             channel_direct_tcpip
        - Src:             'channel.c:451,5'
          Dst:             libssh2_session_last_errno
        - Src:             'channel.c:451,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_open_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          111
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - _libssh2_channel_open
        - _libssh2_wait_socket
        - libssh2_session_last_errno
        - time
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:367,5'
          Dst:             time
        - Src:             'channel.c:367,5'
          Dst:             _libssh2_channel_open
        - Src:             'channel.c:367,5'
          Dst:             libssh2_session_last_errno
        - Src:             'channel.c:367,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_locate
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          103
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_list_first
        - _libssh2_list_next
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:102,19'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:104,19'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:112,13'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:114,23'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:116,23'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:113,13'
          Dst:             _libssh2_list_next
    - functionName:    crypt_dtor
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - EVP_CIPHER_CTX_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypt.c:137,9'
          Dst:             EVP_CIPHER_CTX_free
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    crypt_encrypt
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_cipher_crypt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypt.c:128,12'
          Dst:             _libssh2_cipher_crypt
    - functionName:    crypt_init
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          95
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - _libssh2_cipher_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypt.c:107,8'
          Dst:             _libssh2_cipher_init
    - functionName:    crypt_dtor_chacha20_poly
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    crypt_encrypt_chacha20_poly_buffer
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - chachapoly_crypt
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypt.c:445,19'
          Dst:             chachapoly_crypt
        - Src:             'crypt.c:451,19'
          Dst:             chachapoly_crypt
    - functionName:    crypt_get_length_chacha20_poly
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - chachapoly_get_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypt.c:474,12'
          Dst:             chachapoly_get_length
    - functionName:    crypt_init_chacha20_poly
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 400
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          95
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - chachapoly_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'crypt.c:412,8'
          Dst:             chachapoly_init
    - functionName:    libssh2_crypt_methods
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_128_cbc
      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:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_192_cbc
      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:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_256_cbc
      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:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_128_ctr
      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:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_192_ctr
      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:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_aes_256_ctr
      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:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_keepalive_send
      functionSourceFile: '/src/libssh2/src/keepalive.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          142
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_error
        - _libssh2_transport_send
        - time
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'keepalive.c:69,11'
          Dst:             time
        - Src:             'keepalive.c:82,14'
          Dst:             _libssh2_transport_send
        - Src:             'keepalive.c:86,13'
          Dst:             _libssh2_error
    - functionName:    libssh2_keepalive_config
      functionSourceFile: '/src/libssh2/src/keepalive.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kex_method_diffie_hellman_group_exchange_sha1_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1462
      functionLinenumberEnd: 1580
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          336
      EdgeCount:       60
      CyclomaticComplexity: 18
      functionsReached:
        - BN_new
        - BN_num_bits
        - _libssh2_bn_from_bin
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_get_bignum_bytes
        - _libssh2_htonu32
        - _libssh2_packet_require
        - _libssh2_transport_send
        - diffie_hellman_sha_algo
        - kex_diffie_hellman_cleanup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:1467,24'
          Dst:             BN_new
        - Src:             'kex.c:1468,24'
          Dst:             BN_new
        - Src:             'kex.c:1471,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1472,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1473,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1475,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1482,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:1488,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1497,14'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:1504,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1520,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1531,12'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'kex.c:1532,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1537,12'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'kex.c:1538,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1543,12'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1544,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1549,21'
          Dst:             BN_num_bits
        - Src:             'kex.c:1552,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1557,12'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1558,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1563,15'
          Dst:             diffie_hellman_sha_algo
        - Src:             'kex.c:1577,5'
          Dst:             kex_diffie_hellman_cleanup
    - functionName:    diffie_hellman_sha_algo
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 653
      functionLinenumberEnd: 1026
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - char
        - char
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         113
      ICount:          1138
      EdgeCount:       156
      CyclomaticComplexity: 45
      functionsReached:
        - BN_CTX_new
        - BN_bn2bin
        - BN_new
        - BN_num_bits
        - _libssh2_bn_from_bin
        - _libssh2_debug_low
        - _libssh2_dh_init
        - _libssh2_dh_key_pair
        - _libssh2_dh_secret
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_htonu32
        - _libssh2_packet_burn
        - _libssh2_packet_require
        - _libssh2_sha_algo_ctx_final
        - _libssh2_sha_algo_ctx_init
        - _libssh2_sha_algo_ctx_update
        - _libssh2_transport_send
        - diffie_hellman_state_cleanup
        - finish_kex
        - process_host_key
        - strlen
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:668,15'
          Dst:             _libssh2_error
        - Src:             'kex.c:678,31'
          Dst:             BN_CTX_new
        - Src:             'kex.c:679,9'
          Dst:             _libssh2_dh_init
        - Src:             'kex.c:680,29'
          Dst:             BN_new
        - Src:             'kex.c:681,29'
          Dst:             BN_new
        - Src:             'kex.c:683,29'
          Dst:             BN_new
        - Src:             'kex.c:690,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:691,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:696,14'
          Dst:             _libssh2_dh_key_pair
        - Src:             'kex.c:699,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:707,13'
          Dst:             BN_num_bits
        - Src:             'kex.c:708,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:716,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:721,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:723,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:724,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:726,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:733,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:735,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:741,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:747,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:754,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:768,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:772,17'
          Dst:             _libssh2_packet_burn
        - Src:             'kex.c:783,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:797,14'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:805,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:810,15'
          Dst:             process_host_key
        - Src:             'kex.c:815,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:817,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:822,12'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:825,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:830,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:832,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:838,9'
          Dst:             _libssh2_dh_secret
        - Src:             'kex.c:840,39'
          Dst:             BN_num_bits
        - Src:             'kex.c:841,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:848,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:852,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:854,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:855,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:857,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:864,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:866,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:872,13'
          Dst:             _libssh2_sha_algo_ctx_init
        - Src:             'kex.c:873,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:880,28'
          Dst:             strlen
        - Src:             'kex.c:879,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:881,20'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:887,36'
          Dst:             strlen
        - Src:             'kex.c:884,20'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:890,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:892,20'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:895,20'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:902,36'
          Dst:             strlen
        - Src:             'kex.c:901,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:903,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:907,40'
          Dst:             strlen
        - Src:             'kex.c:905,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:909,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:911,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:913,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:917,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:919,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:921,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:925,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:927,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:929,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:935,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:937,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:939,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:941,20'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:948,20'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:953,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:957,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:959,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:961,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:965,16'
          Dst:             _libssh2_sha_algo_ctx_update
        - Src:             'kex.c:970,13'
          Dst:             _libssh2_sha_algo_ctx_final
        - Src:             'kex.c:972,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:985,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:988,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:994,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1002,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:1007,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1016,15'
          Dst:             finish_kex
        - Src:             'kex.c:1023,5'
          Dst:             diffie_hellman_state_cleanup
    - functionName:    kex_diffie_hellman_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - BN_clear_free
        - diffie_hellman_state_cleanup
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:619,9'
          Dst:             BN_clear_free
        - Src:             'kex.c:621,9'
          Dst:             BN_clear_free
        - Src:             'kex.c:632,9'
          Dst:             diffie_hellman_state_cleanup
    - functionName:    diffie_hellman_state_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          130
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - BN_CTX_free
        - BN_clear_free
        - _libssh2_dh_dtor
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:587,5'
          Dst:             _libssh2_dh_dtor
        - Src:             'kex.c:588,5'
          Dst:             BN_clear_free
        - Src:             'kex.c:590,5'
          Dst:             BN_clear_free
        - Src:             'kex.c:592,5'
          Dst:             BN_clear_free
        - Src:             'kex.c:594,5'
          Dst:             BN_CTX_free
    - functionName:    process_host_key
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          345
      EdgeCount:       58
      CyclomaticComplexity: 17
      functionsReached:
        - _libssh2_base64_encode
        - _libssh2_copy_string
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_sha1_final
        - _libssh2_sha1_init
        - _libssh2_sha1_update
        - _libssh2_sha256_final
        - _libssh2_sha256_init
        - _libssh2_sha256_update
        - snprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:226,20'
          Dst:             _libssh2_error
        - Src:             'kex.c:234,20'
          Dst:             _libssh2_error
        - Src:             'kex.c:250,8'
          Dst:             _libssh2_copy_string
        - Src:             'kex.c:252,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:290,12'
          Dst:             _libssh2_sha1_init
        - Src:             'kex.c:291,12'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:293,12'
          Dst:             _libssh2_sha1_final
        - Src:             'kex.c:306,13'
          Dst:             snprintf
        - Src:             'kex.c:309,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:317,12'
          Dst:             _libssh2_sha256_init
        - Src:             'kex.c:318,12'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:320,12'
          Dst:             _libssh2_sha256_final
        - Src:             'kex.c:331,9'
          Dst:             _libssh2_base64_encode
        - Src:             'kex.c:336,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:345,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:351,16'
          Dst:             _libssh2_error
    - functionName:    _libssh2_sha_algo_ctx_init
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - _libssh2_sha1_init
        - _libssh2_sha256_init
        - _libssh2_sha384_init
        - _libssh2_sha512_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:117,16'
          Dst:             _libssh2_sha512_init
        - Src:             'kex.c:120,16'
          Dst:             _libssh2_sha384_init
        - Src:             'kex.c:123,16'
          Dst:             _libssh2_sha256_init
        - Src:             'kex.c:126,16'
          Dst:             _libssh2_sha1_init
        - Src:             'kex.c:130,9'
          Dst:             __assert_fail
    - functionName:    _libssh2_sha_algo_ctx_update
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          90
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - _libssh2_sha1_update
        - _libssh2_sha256_update
        - _libssh2_sha384_update
        - _libssh2_sha512_update
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:141,16'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:145,16'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:149,16'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:153,16'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:157,9'
          Dst:             __assert_fail
    - functionName:    _libssh2_sha_algo_ctx_final
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - _libssh2_sha1_final
        - _libssh2_sha256_final
        - _libssh2_sha384_final
        - _libssh2_sha512_final
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:168,16'
          Dst:             _libssh2_sha512_final
        - Src:             'kex.c:172,16'
          Dst:             _libssh2_sha384_final
        - Src:             'kex.c:176,16'
          Dst:             _libssh2_sha256_final
        - Src:             'kex.c:180,16'
          Dst:             _libssh2_sha1_final
        - Src:             'kex.c:184,9'
          Dst:             __assert_fail
    - functionName:    finish_kex
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         95
      ICount:          932
      EdgeCount:       131
      CyclomaticComplexity: 38
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_packet_require
        - _libssh2_sha_algo_value_hash
        - explicit_bzero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:364,10'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:372,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:379,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:389,20'
          Dst:             _libssh2_error
        - Src:             'kex.c:396,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:411,9'
          Dst:             _libssh2_sha_algo_value_hash
        - Src:             'kex.c:419,9'
          Dst:             _libssh2_sha_algo_value_hash
        - Src:             'kex.c:437,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:442,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:447,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:460,9'
          Dst:             _libssh2_sha_algo_value_hash
        - Src:             'kex.c:467,9'
          Dst:             _libssh2_sha_algo_value_hash
        - Src:             'kex.c:484,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:489,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:494,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:505,9'
          Dst:             _libssh2_sha_algo_value_hash
        - Src:             'kex.c:516,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:520,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:531,9'
          Dst:             _libssh2_sha_algo_value_hash
        - Src:             'kex.c:542,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:546,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:563,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:577,5'
          Dst:             _libssh2_debug_low
    - functionName:    _libssh2_sha_algo_value_hash
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         139
      ICount:          847
      EdgeCount:       186
      CyclomaticComplexity: 49
      functionsReached:
        - __assert_fail
        - _libssh2_sha1_final
        - _libssh2_sha1_init
        - _libssh2_sha1_update
        - _libssh2_sha256_final
        - _libssh2_sha256_init
        - _libssh2_sha256_update
        - _libssh2_sha384_final
        - _libssh2_sha384_init
        - _libssh2_sha384_update
        - _libssh2_sha512_final
        - _libssh2_sha512_init
        - _libssh2_sha512_update
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:197,9'
          Dst:             _libssh2_sha512_init
        - Src:             'kex.c:197,9'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:197,9'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:197,9'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:197,9'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:197,9'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:197,9'
          Dst:             _libssh2_sha512_final
        - Src:             'kex.c:200,9'
          Dst:             _libssh2_sha384_init
        - Src:             'kex.c:200,9'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:200,9'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:200,9'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:200,9'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:200,9'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:200,9'
          Dst:             _libssh2_sha384_final
        - Src:             'kex.c:203,9'
          Dst:             _libssh2_sha256_init
        - Src:             'kex.c:203,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:203,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:203,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:203,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:203,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:203,9'
          Dst:             _libssh2_sha256_final
        - Src:             'kex.c:206,9'
          Dst:             _libssh2_sha1_init
        - Src:             'kex.c:206,9'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:206,9'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:206,9'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:206,9'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:206,9'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:206,9'
          Dst:             _libssh2_sha1_final
        - Src:             'kex.c:210,9'
          Dst:             __assert_fail
    - functionName:    kex_method_diffie_hellman_group1_sha1_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1094
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          125
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - BN_new
        - BN_set_word
        - _libssh2_bn_from_bin
        - _libssh2_debug_low
        - _libssh2_error
        - diffie_hellman_sha_algo
        - kex_diffie_hellman_cleanup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:1060,24'
          Dst:             BN_new
        - Src:             'kex.c:1062,24'
          Dst:             BN_new
        - Src:             'kex.c:1065,29'
          Dst:             BN_set_word
        - Src:             'kex.c:1066,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1070,29'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1071,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1076,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1082,11'
          Dst:             diffie_hellman_sha_algo
        - Src:             'kex.c:1091,5'
          Dst:             kex_diffie_hellman_cleanup
    - 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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kex_method_diffie_hellman_group14_sha1_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1199
      functionLinenumberEnd: 1202
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - diffie_hellman_sha_algo
        - kex_method_diffie_hellman_group14_key_exchange
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:1201,12'
          Dst:             kex_method_diffie_hellman_group14_key_exchange
        - Src:             'kex.c:1201,12'
          Dst:             diffie_hellman_sha_algo
    - functionName:    kex_method_diffie_hellman_group14_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1118
      functionLinenumberEnd: 1190
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          136
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - BN_new
        - BN_set_word
        - _libssh2_bn_from_bin
        - _libssh2_debug_low
        - _libssh2_error
        - kex_diffie_hellman_cleanup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:1156,24'
          Dst:             BN_new
        - Src:             'kex.c:1158,24'
          Dst:             BN_new
        - Src:             'kex.c:1162,29'
          Dst:             BN_set_word
        - Src:             'kex.c:1163,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1168,17'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1169,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1174,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1187,5'
          Dst:             kex_diffie_hellman_cleanup
    - functionName:    kex_method_diffie_hellman_group14_sha256_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1214
      functionLinenumberEnd: 1217
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - diffie_hellman_sha_algo
        - kex_method_diffie_hellman_group14_key_exchange
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:1216,12'
          Dst:             kex_method_diffie_hellman_group14_key_exchange
        - Src:             'kex.c:1216,12'
          Dst:             diffie_hellman_sha_algo
    - functionName:    kex_method_diffie_hellman_group18_sha512_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1323
      functionLinenumberEnd: 1452
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          126
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - BN_new
        - BN_set_word
        - _libssh2_bn_from_bin
        - _libssh2_debug_low
        - _libssh2_error
        - diffie_hellman_sha_algo
        - kex_diffie_hellman_cleanup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:1416,24'
          Dst:             BN_new
        - Src:             'kex.c:1418,24'
          Dst:             BN_new
        - Src:             'kex.c:1422,29'
          Dst:             BN_set_word
        - Src:             'kex.c:1423,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1428,17'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1429,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1434,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1440,11'
          Dst:             diffie_hellman_sha_algo
        - Src:             'kex.c:1449,5'
          Dst:             kex_diffie_hellman_cleanup
    - functionName:    kex_method_diffie_hellman_group16_sha512_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1229
      functionLinenumberEnd: 1314
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          125
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - BN_new
        - BN_set_word
        - _libssh2_bn_from_bin
        - _libssh2_debug_low
        - _libssh2_error
        - diffie_hellman_sha_algo
        - kex_diffie_hellman_cleanup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:1279,24'
          Dst:             BN_new
        - Src:             'kex.c:1281,24'
          Dst:             BN_new
        - Src:             'kex.c:1285,29'
          Dst:             BN_set_word
        - Src:             'kex.c:1286,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1290,29'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1291,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1296,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1302,11'
          Dst:             diffie_hellman_sha_algo
        - Src:             'kex.c:1311,5'
          Dst:             kex_diffie_hellman_cleanup
    - functionName:    kex_method_diffie_hellman_group_exchange_sha256_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1590
      functionLinenumberEnd: 1709
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          336
      EdgeCount:       60
      CyclomaticComplexity: 18
      functionsReached:
        - BN_new
        - BN_num_bits
        - _libssh2_bn_from_bin
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_get_bignum_bytes
        - _libssh2_htonu32
        - _libssh2_packet_require
        - _libssh2_transport_send
        - diffie_hellman_sha_algo
        - kex_diffie_hellman_cleanup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:1595,24'
          Dst:             BN_new
        - Src:             'kex.c:1596,24'
          Dst:             BN_new
        - Src:             'kex.c:1599,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1600,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1601,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1603,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1610,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:1616,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1626,14'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:1633,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1649,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1660,12'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'kex.c:1661,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1666,12'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'kex.c:1667,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1672,12'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1673,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1678,21'
          Dst:             BN_num_bits
        - Src:             'kex.c:1681,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1686,12'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1687,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1692,15'
          Dst:             diffie_hellman_sha_algo
        - Src:             'kex.c:1706,5'
          Dst:             kex_diffie_hellman_cleanup
    - functionName:    ecdh_exchange_state_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2010
      functionLinenumberEnd: 2020
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BN_clear_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:2011,5'
          Dst:             BN_clear_free
    - functionName:    ecdh_sha2_nistp
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2056
      functionLinenumberEnd: 2214
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         107
      ICount:          1276
      EdgeCount:       142
      CyclomaticComplexity: 37
      functionsReached:
        - BN_bn2bin
        - BN_new
        - BN_num_bits
        - _libssh2_ecdh_gen_k
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_htonu32
        - _libssh2_sha256_final
        - _libssh2_sha256_init
        - _libssh2_sha256_update
        - _libssh2_sha384_final
        - _libssh2_sha384_init
        - _libssh2_sha384_update
        - _libssh2_sha512_final
        - _libssh2_sha512_init
        - _libssh2_sha512_update
        - _libssh2_transport_send
        - ecdh_exchange_state_cleanup
        - finish_kex
        - process_host_key
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'kex.c:2146,9'
          Branch Sides:    []
      Callsites:
        - Src:             'kex.c:2063,29'
          Dst:             BN_new
        - Src:             'kex.c:2077,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2082,15'
          Dst:             process_host_key
        - Src:             'kex.c:2088,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:2090,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2096,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:2098,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2104,14'
          Dst:             _libssh2_ecdh_gen_k
        - Src:             'kex.c:2107,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2112,39'
          Dst:             BN_num_bits
        - Src:             'kex.c:2113,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:2120,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2124,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2126,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:2127,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:2129,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:2136,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:2138,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_init
        - Src:             'kex.c:2148,17'
          Dst:             strlen
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             strlen
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             strlen
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             strlen
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2148,17'
          Dst:             _libssh2_sha256_final
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_init
        - Src:             'kex.c:2151,17'
          Dst:             strlen
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             strlen
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             strlen
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             strlen
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2151,17'
          Dst:             _libssh2_sha384_final
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_init
        - Src:             'kex.c:2154,17'
          Dst:             strlen
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             strlen
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             strlen
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             strlen
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2154,17'
          Dst:             _libssh2_sha512_final
        - Src:             'kex.c:2159,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2170,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:2175,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2200,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2204,15'
          Dst:             finish_kex
        - Src:             'kex.c:2211,5'
          Dst:             ecdh_exchange_state_cleanup
    - functionName:    kex_session_ecdh_curve_type
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1984
      functionLinenumberEnd: 2005
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          79
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:1990,8'
          Dst:             strcmp
        - Src:             'kex.c:1992,13'
          Dst:             strcmp
        - Src:             'kex.c:1994,13'
          Dst:             strcmp
    - functionName:    kex_method_ecdh_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2025
      functionLinenumberEnd: 2046
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          111
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - EC_KEY_free
        - ecdh_exchange_state_cleanup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:2032,9'
          Dst:             EC_KEY_free
        - Src:             'kex.c:2044,9'
          Dst:             ecdh_exchange_state_cleanup
    - functionName:    kex_method_ecdh_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2225
      functionLinenumberEnd: 2326
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          293
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_ecdsa_create_key
        - _libssh2_error
        - _libssh2_packet_require
        - _libssh2_store_str
        - _libssh2_transport_send
        - ecdh_sha2_nistp
        - kex_method_ecdh_cleanup
        - kex_session_ecdh_curve_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:2238,14'
          Dst:             kex_session_ecdh_curve_type
        - Src:             'kex.c:2241,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2246,14'
          Dst:             _libssh2_ecdsa_create_key
        - Src:             'kex.c:2251,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2258,9'
          Dst:             _libssh2_store_str
        - Src:             'kex.c:2262,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:2269,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:2275,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2284,14'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:2291,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2301,14'
          Dst:             kex_session_ecdh_curve_type
        - Src:             'kex.c:2304,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2309,15'
          Dst:             ecdh_sha2_nistp
        - Src:             'kex.c:2323,5'
          Dst:             kex_method_ecdh_cleanup
    - functionName:    curve25519_exchange_state_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2756
      functionLinenumberEnd: 2766
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - BN_clear_free
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:2757,5'
          Dst:             BN_clear_free
    - functionName:    curve25519_sha256
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2807
      functionLinenumberEnd: 2940
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         65
      ICount:          654
      EdgeCount:       89
      CyclomaticComplexity: 26
      functionsReached:
        - BN_bn2bin
        - BN_new
        - BN_num_bits
        - _libssh2_curve25519_gen_k
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_htonu32
        - _libssh2_sha256_final
        - _libssh2_sha256_init
        - _libssh2_sha256_update
        - _libssh2_transport_send
        - curve25519_exchange_state_cleanup
        - finish_kex
        - process_host_key
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:2815,29'
          Dst:             BN_new
        - Src:             'kex.c:2827,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2832,15'
          Dst:             process_host_key
        - Src:             'kex.c:2838,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:2840,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2846,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2853,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:2855,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2861,14'
          Dst:             _libssh2_curve25519_gen_k
        - Src:             'kex.c:2864,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2869,39'
          Dst:             BN_num_bits
        - Src:             'kex.c:2870,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:2877,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2881,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2883,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:2884,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:2886,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:2893,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:2895,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_init
        - Src:             'kex.c:2902,9'
          Dst:             strlen
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             strlen
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             strlen
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             strlen
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2902,9'
          Dst:             _libssh2_sha256_final
        - Src:             'kex.c:2905,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2916,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:2921,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2930,15'
          Dst:             finish_kex
        - Src:             'kex.c:2937,5'
          Dst:             curve25519_exchange_state_cleanup
    - functionName:    kex_method_curve25519_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2771
      functionLinenumberEnd: 2796
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          126
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - curve25519_exchange_state_cleanup
        - explicit_bzero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:2773,9'
          Dst:             explicit_bzero
        - Src:             'kex.c:2780,9'
          Dst:             explicit_bzero
        - Src:             'kex.c:2794,9'
          Dst:             curve25519_exchange_state_cleanup
    - functionName:    kex_method_curve25519_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2950
      functionLinenumberEnd: 3043
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          280
      EdgeCount:       52
      CyclomaticComplexity: 15
      functionsReached:
        - _libssh2_curve25519_new
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_packet_require
        - _libssh2_store_str
        - _libssh2_transport_send
        - curve25519_sha256
        - kex_method_curve25519_cleanup
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:2963,14'
          Dst:             strcmp
        - Src:             'kex.c:2965,18'
          Dst:             strcmp
        - Src:             'kex.c:2968,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2973,14'
          Dst:             _libssh2_curve25519_new
        - Src:             'kex.c:2978,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2985,9'
          Dst:             _libssh2_store_str
        - Src:             'kex.c:2989,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:2996,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:3002,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:3011,14'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:3018,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:3028,15'
          Dst:             curve25519_sha256
        - Src:             'kex.c:3040,5'
          Dst:             kex_method_curve25519_cleanup
    - functionName:    kex_agree_hostkey
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3873
      functionLinenumberEnd: 3940
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          285
      EdgeCount:       75
      CyclomaticComplexity: 21
      functionsReached:
        - _libssh2_kex_agree_instr
        - kex_get_method_by_name
        - libssh2_hostkey_methods
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:3874,47'
          Dst:             libssh2_hostkey_methods
        - Src:             'kex.c:3881,50'
          Dst:             strchr
        - Src:             'kex.c:3882,56'
          Dst:             strlen
        - Src:             'kex.c:3883,16'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:3886,21'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:3919,38'
          Dst:             strlen
        - Src:             'kex.c:3917,13'
          Dst:             _libssh2_kex_agree_instr
    - 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:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_kex_agree_instr
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3803
      functionLinenumberEnd: 3850
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          209
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - memchr
        - strncmp
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:3822,9'
          Dst:             strncmp
        - Src:             'kex.c:3830,34'
          Dst:             memchr
        - Src:             'kex.c:3842,13'
          Dst:             strncmp
    - functionName:    kex_get_method_by_name
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3856
      functionLinenumberEnd: 3865
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strlen
        - strncmp
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:3858,13'
          Dst:             strlen
        - Src:             'kex.c:3859,14'
          Dst:             strncmp
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    kex_agree_comp
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4144
      functionLinenumberEnd: 4189
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          189
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - _libssh2_comp_methods
        - _libssh2_kex_agree_instr
        - kex_get_method_by_name
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:4145,41'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:4153,50'
          Dst:             strchr
        - Src:             'kex.c:4154,56'
          Dst:             strlen
        - Src:             'kex.c:4156,16'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:4159,21'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:4180,38'
          Dst:             strlen
        - Src:             'kex.c:4178,13'
          Dst:             _libssh2_kex_agree_instr
    - functionName:    kex_agree_mac
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4083
      functionLinenumberEnd: 4136
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          206
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - _libssh2_kex_agree_instr
        - _libssh2_mac_methods
        - _libssh2_mac_override
        - kex_get_method_by_name
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:4084,39'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:4089,16'
          Dst:             _libssh2_mac_override
        - Src:             'kex.c:4101,50'
          Dst:             strchr
        - Src:             'kex.c:4102,56'
          Dst:             strlen
        - Src:             'kex.c:4104,16'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:4106,21'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:4127,38'
          Dst:             strlen
        - Src:             'kex.c:4125,13'
          Dst:             _libssh2_kex_agree_instr
    - functionName:    kex_agree_crypt
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4029
      functionLinenumberEnd: 4075
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          188
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - _libssh2_kex_agree_instr
        - kex_get_method_by_name
        - libssh2_crypt_methods
        - strchr
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:4030,43'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:4039,50'
          Dst:             strchr
        - Src:             'kex.c:4040,56'
          Dst:             strlen
        - Src:             'kex.c:4042,16'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:4045,21'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:4066,38'
          Dst:             strlen
        - Src:             'kex.c:4064,13'
          Dst:             _libssh2_kex_agree_instr
    - functionName:    kex_agree_kex_hostkey
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3948
      functionLinenumberEnd: 4020
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          288
      EdgeCount:       66
      CyclomaticComplexity: 19
      functionsReached:
        - _libssh2_kex_agree_instr
        - kex_agree_hostkey
        - kex_get_method_by_name
        - strchr
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:3954,8'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:3962,54'
          Dst:             strchr
        - Src:             'kex.c:3963,56'
          Dst:             strlen
        - Src:             'kex.c:3964,17'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:3967,21'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:3979,20'
          Dst:             kex_agree_hostkey
        - Src:             'kex.c:4000,38'
          Dst:             strlen
        - Src:             'kex.c:3998,13'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:4005,16'
          Dst:             kex_agree_hostkey
    - functionName:    kex_method_list
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3585
      functionLinenumberEnd: 3602
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_htonu32
        - strlen
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:3586,5'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3594,35'
          Dst:             strlen
    - functionName:    kex_method_strlen
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3564
      functionLinenumberEnd: 3577
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          77
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - strlen
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:3572,16'
          Dst:             strlen
    - functionName:    libssh2_session_supported_algs
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4603
      functionLinenumberEnd: 4708
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          267
      EdgeCount:       53
      CyclomaticComplexity: 11
      functionsReached:
        - _libssh2_comp_methods
        - _libssh2_error
        - _libssh2_mac_methods
        - libssh2_crypt_methods
        - libssh2_hostkey_methods
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kex.c:4614,5'
          Branch Sides:    []
      Callsites:
        - Src:             'kex.c:4611,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4620,49'
          Dst:             libssh2_hostkey_methods
        - Src:             'kex.c:4625,49'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:4630,49'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:4635,49'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:4644,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4650,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4674,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4680,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4703,16'
          Dst:             _libssh2_error
    - functionName:    libssh2_session_method_pref
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4454
      functionLinenumberEnd: 4592
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          437
      EdgeCount:       72
      CyclomaticComplexity: 16
      functionsReached:
        - _libssh2_comp_methods
        - _libssh2_error
        - _libssh2_mac_methods
        - kex_get_method_by_name
        - libssh2_crypt_methods
        - libssh2_hostkey_methods
        - strchr
        - strlen
      functionUses:    0
      BranchProfiles:
        - Branch String:   'kex.c:4460,5'
          Branch Sides:    []
      Callsites:
        - Src:             'kex.c:4457,24'
          Dst:             strlen
        - Src:             'kex.c:4468,49'
          Dst:             libssh2_hostkey_methods
        - Src:             'kex.c:4473,49'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:4478,49'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:4483,49'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:4488,49'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:4493,49'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:4498,49'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:4517,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4526,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4532,19'
          Dst:             strchr
        - Src:             'kex.c:4533,52'
          Dst:             strlen
        - Src:             'kex.c:4535,13'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:4538,35'
          Dst:             strlen
        - Src:             'kex.c:4560,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4569,37'
          Dst:             strlen
        - Src:             'kex.c:4570,47'
          Dst:             strlen
        - Src:             'kex.c:4573,20'
          Dst:             _libssh2_error
        - Src:             'kex.c:4579,57'
          Dst:             strlen
    - functionName:    kex_agree_methods
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4200
      functionLinenumberEnd: 4304
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          319
      EdgeCount:       59
      CyclomaticComplexity: 19
      functionsReached:
        - _libssh2_check_length
        - _libssh2_debug_low
        - _libssh2_get_string
        - kex_agree_comp
        - kex_agree_crypt
        - kex_agree_kex_hostkey
        - kex_agree_mac
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:4219,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4221,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4223,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4225,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4227,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4229,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4231,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4233,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4239,8'
          Dst:             _libssh2_check_length
        - Src:             'kex.c:4248,8'
          Dst:             kex_agree_kex_hostkey
        - Src:             'kex.c:4252,8'
          Dst:             kex_agree_crypt
        - Src:             'kex.c:4253,8'
          Dst:             kex_agree_crypt
        - Src:             'kex.c:4259,8'
          Dst:             kex_agree_mac
        - Src:             'kex.c:4260,8'
          Dst:             kex_agree_mac
        - Src:             'kex.c:4264,8'
          Dst:             kex_agree_comp
        - Src:             'kex.c:4265,8'
          Dst:             kex_agree_comp
        - Src:             'kex.c:4278,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4281,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4284,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4287,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4290,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4293,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4296,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4299,5'
          Dst:             _libssh2_debug_low
    - functionName:    kexinit
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3626
      functionLinenumberEnd: 3794
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         99
      ICount:          997
      EdgeCount:       125
      CyclomaticComplexity: 28
      functionsReached:
        - _libssh2_comp_methods
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_mac_methods
        - _libssh2_openssl_random
        - _libssh2_transport_send
        - kex_method_list
        - kex_method_strlen
        - libssh2_crypt_methods
        - libssh2_hostkey_methods
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:3641,13'
          Dst:             strlen
        - Src:             'kex.c:3641,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3643,13'
          Dst:             strlen
        - Src:             'kex.c:3643,13'
          Dst:             libssh2_hostkey_methods
        - Src:             'kex.c:3643,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3646,13'
          Dst:             strlen
        - Src:             'kex.c:3646,13'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:3646,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3649,13'
          Dst:             strlen
        - Src:             'kex.c:3649,13'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:3649,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3652,13'
          Dst:             strlen
        - Src:             'kex.c:3652,13'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:3652,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3655,13'
          Dst:             strlen
        - Src:             'kex.c:3655,13'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:3655,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3658,13'
          Dst:             strlen
        - Src:             'kex.c:3658,13'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:3658,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3661,13'
          Dst:             strlen
        - Src:             'kex.c:3661,13'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:3661,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3664,13'
          Dst:             strlen
        - Src:             'kex.c:3664,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3666,13'
          Dst:             strlen
        - Src:             'kex.c:3666,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3674,20'
          Dst:             _libssh2_error
        - Src:             'kex.c:3680,12'
          Dst:             _libssh2_openssl_random
        - Src:             'kex.c:3682,20'
          Dst:             _libssh2_error
        - Src:             'kex.c:3691,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3691,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3693,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3693,9'
          Dst:             libssh2_hostkey_methods
        - Src:             'kex.c:3693,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3695,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3695,9'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:3695,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3697,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3697,9'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:3697,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3699,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3699,9'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:3699,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3701,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3701,9'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:3701,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3703,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3703,9'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:3703,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3705,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3705,9'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:3705,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3707,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3707,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3709,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3709,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3720,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3726,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3729,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3732,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3735,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3738,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3741,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3744,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3747,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3750,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3753,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3756,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3771,10'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:3780,16'
          Dst:             _libssh2_error
    - functionName:    _libssh2_kex_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4315
      functionLinenumberEnd: 4446
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         76
      ICount:          604
      EdgeCount:       102
      CyclomaticComplexity: 28
      functionsReached:
        - _libssh2_error
        - _libssh2_packet_require
        - kex_agree_methods
        - kexinit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:4354,23'
          Dst:             kexinit
        - Src:             'kex.c:4374,17'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:4402,16'
          Dst:             kex_agree_methods
        - Src:             'kex.c:4422,22'
          Dst:             _libssh2_error
    - functionName:    mac_method_none_dtor
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 497
      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:    mac_method_hmac_none_hash
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mac_method_none_init
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mac_method_hmac_sha1_96_hash
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mac_method_hmac_sha1_hash
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mac.c:281,8'
          Dst:             mac_method_hmac_sha1_hash
    - functionName:    mac_method_hmac_sha1_hash
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          130
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_hmac_cleanup
        - _libssh2_hmac_ctx_init
        - _libssh2_hmac_final
        - _libssh2_hmac_sha1_init
        - _libssh2_hmac_update
        - _libssh2_htonu32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mac.c:232,5'
          Dst:             _libssh2_htonu32
        - Src:             'mac.c:234,9'
          Dst:             _libssh2_hmac_ctx_init
        - Src:             'mac.c:236,11'
          Dst:             _libssh2_hmac_sha1_init
        - Src:             'mac.c:237,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:238,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:240,15'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:242,15'
          Dst:             _libssh2_hmac_final
        - Src:             'mac.c:243,5'
          Dst:             _libssh2_hmac_cleanup
    - functionName:    mac_method_hmac_sha2_512_hash
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          130
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_hmac_cleanup
        - _libssh2_hmac_ctx_init
        - _libssh2_hmac_final
        - _libssh2_hmac_sha512_init
        - _libssh2_hmac_update
        - _libssh2_htonu32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mac.c:123,5'
          Dst:             _libssh2_htonu32
        - Src:             'mac.c:125,9'
          Dst:             _libssh2_hmac_ctx_init
        - Src:             'mac.c:127,11'
          Dst:             _libssh2_hmac_sha512_init
        - Src:             'mac.c:128,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:129,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:131,15'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:133,15'
          Dst:             _libssh2_hmac_final
        - Src:             'mac.c:134,5'
          Dst:             _libssh2_hmac_cleanup
    - functionName:    mac_method_common_dtor
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 103
      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:    mac_method_hmac_sha2_256_hash
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          130
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_hmac_cleanup
        - _libssh2_hmac_ctx_init
        - _libssh2_hmac_final
        - _libssh2_hmac_sha256_init
        - _libssh2_hmac_update
        - _libssh2_htonu32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'mac.c:178,5'
          Dst:             _libssh2_htonu32
        - Src:             'mac.c:180,9'
          Dst:             _libssh2_hmac_ctx_init
        - Src:             'mac.c:182,11'
          Dst:             _libssh2_hmac_sha256_init
        - Src:             'mac.c:183,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:184,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:186,15'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:188,15'
          Dst:             _libssh2_hmac_final
        - Src:             'mac.c:189,5'
          Dst:             _libssh2_hmac_cleanup
    - functionName:    mac_method_common_init
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_mac_override
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'mac.c:520,9'
          Dst:             strcmp
        - Src:             'mac.c:521,9'
          Dst:             strcmp
    - functionName:    _libssh2_mac_methods
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 457
      functionLinenumberEnd: 458
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_timingsafe_bcmp
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1004
      functionLinenumberEnd: 1011
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          52
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_eob
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 998
      functionLinenumberEnd: 1000
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_get_bignum_bytes
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 956
      functionLinenumberEnd: 984
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          107
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_check_length
        - _libssh2_get_u32
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:961,8'
          Dst:             _libssh2_get_u32
        - Src:             'misc.c:964,9'
          Dst:             _libssh2_check_length
    - functionName:    _libssh2_get_u32
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 874
      functionLinenumberEnd: 882
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_check_length
        - _libssh2_ntohu32
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:875,9'
          Dst:             _libssh2_check_length
        - Src:             'misc.c:879,12'
          Dst:             _libssh2_ntohu32
    - functionName:    _libssh2_check_length
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 991
      functionLinenumberEnd: 994
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          47
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_ntohu32
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    32
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_copy_string
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 927
      functionLinenumberEnd: 952
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          89
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_get_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:931,8'
          Dst:             _libssh2_get_string
    - functionName:    _libssh2_get_string
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 923
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          79
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_check_length
        - _libssh2_get_u32
      functionUses:    64
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:910,16'
          Dst:             _libssh2_get_u32
        - Src:             'misc.c:913,9'
          Dst:             _libssh2_check_length
    - functionName:    _libssh2_match_string
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 896
      functionLinenumberEnd: 904
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - _libssh2_get_string
        - strlen
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:899,8'
          Dst:             _libssh2_get_string
        - Src:             'misc.c:899,55'
          Dst:             strlen
        - Src:             'misc.c:900,37'
          Dst:             strlen
        - Src:             'misc.c:900,9'
          Dst:             strncmp
    - functionName:    _libssh2_get_u64
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 885
      functionLinenumberEnd: 893
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_check_length
        - _libssh2_ntohu64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:886,9'
          Dst:             _libssh2_check_length
        - Src:             'misc.c:890,12'
          Dst:             _libssh2_ntohu64
    - functionName:    _libssh2_ntohu64
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          52
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_get_boolean
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 863
      functionLinenumberEnd: 871
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_check_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:864,9'
          Dst:             _libssh2_check_length
    - functionName:    _libssh2_get_byte
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 860
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_check_length
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:853,9'
          Dst:             _libssh2_check_length
    - functionName:    _libssh2_string_buf_free
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 840
      functionLinenumberEnd: 849
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_string_buf_new
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 829
      functionLinenumberEnd: 837
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_calloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:832,11'
          Dst:             _libssh2_calloc
    - functionName:    _libssh2_calloc
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 796
      functionLinenumberEnd: 801
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_xor_data
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 810
      functionLinenumberEnd: 815
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          47
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_list_remove
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          64
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_list_prev
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 695
      functionLinenumberEnd: 696
      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:    _libssh2_list_next
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 690
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_list_first
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 683
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_list_add
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 661
      functionLinenumberEnd: 679
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_list_init
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 654
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_trace_sethandler
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 554
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      int
      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:    libssh2_trace
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 548
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_free
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 539
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_base64_encode
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          270
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - strlen
      functionUses:    1
      BranchProfiles:
        - Branch String:   'misc.c:506,9'
          Branch Sides:    []
      Callsites:
        - Src:             'misc.c:531,12'
          Dst:             strlen
    - functionName:    _libssh2_base64_decode
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 406
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          211
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - _libssh2_error
      functionUses:    3
      BranchProfiles:
        - Branch String:   'misc.c:424,9'
          Branch Sides:    []
      Callsites:
        - Src:             'misc.c:416,16'
          Dst:             _libssh2_error
        - Src:             'misc.c:447,16'
          Dst:             _libssh2_error
    - functionName:    _libssh2_error
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_error_flags
      functionUses:    362
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:128,12'
          Dst:             _libssh2_error_flags
    - functionName:    _libssh2_error_flags
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          175
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - _libssh2_debug_low
        - fprintf
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:89,13'
          Dst:             fprintf
        - Src:             'misc.c:100,22'
          Dst:             strlen
        - Src:             'misc.c:119,5'
          Dst:             _libssh2_debug_low
    - functionName:    _libssh2_debug_low
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          190
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - fprintf
        - gettimeofday
        - snprintf
        - vsnprintf
      functionUses:    156
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:598,5'
          Dst:             gettimeofday
        - Src:             'misc.c:604,11'
          Dst:             snprintf
        - Src:             'misc.c:617,15'
          Dst:             vsnprintf
        - Src:             'misc.c:629,9'
          Dst:             fprintf
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    libssh2_base64_decode
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_base64_decode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:390,10'
          Dst:             _libssh2_base64_decode
    - functionName:    _libssh2_store_bignum2_bytes
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 329
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          171
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - __assert_fail
        - _libssh2_store_u32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:340,5'
          Dst:             _libssh2_store_u32
        - Src:             'misc.c:352,5'
          Dst:             __assert_fail
    - functionName:    _libssh2_store_u32
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - _libssh2_htonu32
      functionUses:    55
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:263,5'
          Dst:             _libssh2_htonu32
    - functionName:    _libssh2_htonu32
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          35
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    87
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_store_hybrid_str
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          115
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __assert_fail
        - _libssh2_store_u32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:310,5'
          Dst:             _libssh2_store_u32
        - Src:             'misc.c:321,5'
          Dst:             __assert_fail
    - functionName:    _libssh2_store_str
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - __assert_fail
        - _libssh2_store_u32
      functionUses:    39
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:289,5'
          Dst:             _libssh2_store_u32
        - Src:             'misc.c:295,5'
          Dst:             __assert_fail
    - functionName:    _libssh2_store_u64
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          71
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_send
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:204,10'
          Dst:             send
        - Src:             'misc.c:210,15'
          Dst:             __errno_location
    - functionName:    _libssh2_recv
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - recv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:165,10'
          Dst:             recv
        - Src:             'misc.c:171,15'
          Dst:             __errno_location
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_packet_requirev
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1652
      functionLinenumberEnd: 1696
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          183
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - _libssh2_packet_askv
        - _libssh2_transport_read
        - strchr
        - time
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'packet.c:1653,8'
          Dst:             _libssh2_packet_askv
        - Src:             'packet.c:1661,24'
          Dst:             time
        - Src:             'packet.c:1665,19'
          Dst:             _libssh2_transport_read
        - Src:             'packet.c:1672,24'
          Dst:             time
        - Src:             'packet.c:1683,12'
          Dst:             strchr
        - Src:             'packet.c:1685,19'
          Dst:             _libssh2_packet_askv
    - functionName:    _libssh2_packet_askv
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1495
      functionLinenumberEnd: 1507
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          71
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - _libssh2_packet_ask
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'packet.c:1496,34'
          Dst:             strlen
        - Src:             'packet.c:1499,12'
          Dst:             _libssh2_packet_ask
    - functionName:    _libssh2_packet_ask
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1446
      functionLinenumberEnd: 1480
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          164
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_list_first
        - _libssh2_list_next
        - _libssh2_list_remove
        - libssh2_session_disconnect_ex
        - memcmp
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'packet.c:1447,30'
          Dst:             _libssh2_list_first
        - Src:             'packet.c:1449,5'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1457,14'
          Dst:             memcmp
        - Src:             'packet.c:1462,13'
          Dst:             _libssh2_list_remove
        - Src:             'packet.c:1470,13'
          Dst:             libssh2_session_disconnect_ex
        - Src:             'packet.c:1473,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:1477,18'
          Dst:             _libssh2_list_next
    - functionName:    _libssh2_packet_burn
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1583
      functionLinenumberEnd: 1635
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          162
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_packet_ask
        - _libssh2_packet_askv
        - _libssh2_transport_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'packet.c:1595,12'
          Dst:             _libssh2_packet_askv
        - Src:             'packet.c:1603,9'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1609,15'
          Dst:             _libssh2_transport_read
        - Src:             'packet.c:1624,13'
          Dst:             _libssh2_packet_ask
    - functionName:    _libssh2_packet_require
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1525
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          173
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - _libssh2_packet_ask
        - _libssh2_transport_read
        - time
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'packet.c:1527,12'
          Dst:             _libssh2_packet_ask
        - Src:             'packet.c:1534,24'
          Dst:             time
        - Src:             'packet.c:1540,15'
          Dst:             _libssh2_transport_read
        - Src:             'packet.c:1551,19'
          Dst:             _libssh2_packet_ask
        - Src:             'packet.c:1558,63'
          Dst:             time
    - functionName:    packet_authagent_open
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 638
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          462
      EdgeCount:       52
      CyclomaticComplexity: 16
      functionsReached:
        - _libssh2_channel_nextid
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_get_u32
        - _libssh2_htonu32
        - _libssh2_list_add
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'packet.c:499,16'
          Dst:             _libssh2_error
        - Src:             'packet.c:506,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:507,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:510,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:511,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:514,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:515,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:519,9'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:532,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:545,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:560,33'
          Dst:             _libssh2_channel_nextid
        - Src:             'packet.c:566,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:577,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:578,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:579,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:580,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:586,18'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:593,24'
          Dst:             _libssh2_error
        - Src:             'packet.c:599,13'
          Dst:             _libssh2_list_add
        - Src:             'packet.c:622,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:623,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:624,5'
          Dst:             _libssh2_store_str
        - Src:             'packet.c:625,5'
          Dst:             _libssh2_htonu32
        - Src:             'packet.c:627,10'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:634,16'
          Dst:             _libssh2_error
    - functionName:    packet_x11_open
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          576
      EdgeCount:       61
      CyclomaticComplexity: 19
      functionsReached:
        - _libssh2_calloc
        - _libssh2_channel_nextid
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_get_u32
        - _libssh2_htonu32
        - _libssh2_list_add
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'packet.c:302,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:310,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:311,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:316,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:317,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:322,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:323,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:329,12'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:330,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:339,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:347,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:348,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:354,9'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:364,23'
          Dst:             _libssh2_calloc
        - Src:             'packet.c:366,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:378,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:393,33'
          Dst:             _libssh2_channel_nextid
        - Src:             'packet.c:399,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:409,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:410,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:411,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:412,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:418,18'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:427,24'
          Dst:             _libssh2_error
        - Src:             'packet.c:433,13'
          Dst:             _libssh2_list_add
        - Src:             'packet.c:457,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:458,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:459,5'
          Dst:             _libssh2_store_str
        - Src:             'packet.c:460,5'
          Dst:             _libssh2_htonu32
        - Src:             'packet.c:462,10'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:469,16'
          Dst:             _libssh2_error
    - functionName:    packet_queue_listener
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          634
      EdgeCount:       89
      CyclomaticComplexity: 27
      functionsReached:
        - _libssh2_calloc
        - _libssh2_channel_nextid
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_get_string
        - _libssh2_get_u32
        - _libssh2_htonu32
        - _libssh2_list_add
        - _libssh2_list_first
        - _libssh2_list_next
        - _libssh2_store_str
        - _libssh2_store_u32
        - _libssh2_transport_send
        - memcmp
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'packet.c:76,31'
          Dst:             _libssh2_list_first
        - Src:             'packet.c:89,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:95,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:96,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:99,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:100,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:103,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:104,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:107,12'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:108,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:113,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:114,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:117,12'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:118,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:123,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:124,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:128,9'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:141,18'
          Dst:             strlen
        - Src:             'packet.c:142,18'
          Dst:             memcmp
        - Src:             'packet.c:153,25'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:159,31'
          Dst:             _libssh2_calloc
        - Src:             'packet.c:161,25'
          Dst:             _libssh2_error
        - Src:             'packet.c:177,25'
          Dst:             _libssh2_error
        - Src:             'packet.c:196,41'
          Dst:             _libssh2_channel_nextid
        - Src:             'packet.c:203,21'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:214,21'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:215,21'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:216,21'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:218,21'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:224,26'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:230,32'
          Dst:             _libssh2_error
        - Src:             'packet.c:237,25'
          Dst:             _libssh2_list_add
        - Src:             'packet.c:247,21'
          Dst:             _libssh2_list_next
        - Src:             'packet.c:256,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:257,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:258,5'
          Dst:             _libssh2_store_str
        - Src:             'packet.c:259,5'
          Dst:             _libssh2_htonu32
        - Src:             'packet.c:261,10'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:268,16'
          Dst:             _libssh2_error
    - functionName:    _libssh2_packet_add
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 654
      functionLinenumberEnd: 1433
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         291
      ICount:          2180
      EdgeCount:       384
      CyclomaticComplexity: 95
      functionsReached:
        - _libssh2_channel_locate
        - _libssh2_channel_receive_window_adjust
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_get_byte
        - _libssh2_get_string
        - _libssh2_get_u32
        - _libssh2_kex_agree_instr
        - _libssh2_kex_exchange
        - _libssh2_list_add
        - _libssh2_ntohu32
        - _libssh2_transport_send
        - libssh2_session_disconnect_ex
        - memcmp
        - packet_authagent_open
        - packet_queue_listener
        - packet_x11_open
      functionUses:    1
      BranchProfiles:
        - Branch String:   'packet.c:668,5'
          Branch Sides:    []
        - Branch String:   'packet.c:768,9'
          Branch Sides:    []
      Callsites:
        - Src:             'packet.c:670,9'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:681,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:708,28'
          Dst:             _libssh2_error
        - Src:             'packet.c:724,24'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:727,32'
          Dst:             _libssh2_error
        - Src:             'packet.c:733,24'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'packet.c:743,17'
          Dst:             libssh2_session_disconnect_ex
        - Src:             'packet.c:746,24'
          Dst:             _libssh2_error
        - Src:             'packet.c:757,13'
          Dst:             libssh2_session_disconnect_ex
        - Src:             'packet.c:760,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:786,17'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:787,17'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:788,17'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:796,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:805,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:843,21'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:844,21'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:855,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:878,20'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:880,26'
          Dst:             _libssh2_error
        - Src:             'packet.c:893,21'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:894,21'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:897,25'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:905,25'
          Dst:             memcmp
        - Src:             'packet.c:921,34'
          Dst:             _libssh2_error
        - Src:             'packet.c:942,23'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:945,21'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:956,26'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:991,45'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:990,21'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:994,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:1004,33'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1006,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1020,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1030,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1042,22'
          Dst:             _libssh2_channel_receive_window_adjust
        - Src:             'packet.c:1062,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:1072,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:1084,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:1096,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1113,45'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1112,21'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:1118,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1148,20'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:1149,26'
          Dst:             _libssh2_error
        - Src:             'packet.c:1154,20'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:1155,26'
          Dst:             _libssh2_error
        - Src:             'packet.c:1162,20'
          Dst:             _libssh2_get_byte
        - Src:             'packet.c:1163,26'
          Dst:             _libssh2_error
        - Src:             'packet.c:1168,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1174,21'
          Dst:             memcmp
        - Src:             'packet.c:1179,29'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:1183,29'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1185,25'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1194,26'
          Dst:             memcmp
        - Src:             'packet.c:1198,36'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:1203,29'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1215,34'
          Dst:             _libssh2_error
        - Src:             'packet.c:1223,29'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1239,26'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:1260,45'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1259,21'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:1267,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1292,22'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1293,22'
          Dst:             memcmp
        - Src:             'packet.c:1302,22'
          Dst:             packet_queue_listener
        - Src:             'packet.c:1306,42'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1307,23'
          Dst:             memcmp
        - Src:             'packet.c:1315,22'
          Dst:             packet_x11_open
        - Src:             'packet.c:1320,23'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1321,22'
          Dst:             memcmp
        - Src:             'packet.c:1330,22'
          Dst:             packet_authagent_open
        - Src:             'packet.c:1349,39'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1352,45'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1351,21'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:1356,21'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1379,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1389,9'
          Dst:             _libssh2_list_add
        - Src:             'packet.c:1403,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1426,14'
          Dst:             _libssh2_kex_exchange
    - functionName:    chachapoly_get_length
      functionSourceFile: '/src/libssh2/src/cipher-chachapoly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_ntohu32
        - _libssh2_store_u64
        - chacha_encrypt_bytes
        - chacha_ivsetup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cipher-chachapoly.c:122,5'
          Dst:             _libssh2_store_u64
        - Src:             'cipher-chachapoly.c:123,5'
          Dst:             chacha_ivsetup
        - Src:             'cipher-chachapoly.c:124,5'
          Dst:             chacha_encrypt_bytes
        - Src:             'cipher-chachapoly.c:125,14'
          Dst:             _libssh2_ntohu32
    - functionName:    chachapoly_timingsafe_bcmp
      functionSourceFile: '/src/libssh2/src/cipher-chachapoly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          52
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chachapoly_crypt
      functionSourceFile: '/src/libssh2/src/cipher-chachapoly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          155
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_store_u64
        - chacha_encrypt_bytes
        - chacha_ivsetup
        - chachapoly_timingsafe_bcmp
        - poly1305_auth
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'cipher-chachapoly.c:69,5'
          Dst:             _libssh2_store_u64
        - Src:             'cipher-chachapoly.c:70,5'
          Dst:             chacha_ivsetup
        - Src:             'cipher-chachapoly.c:71,5'
          Dst:             chacha_encrypt_bytes
        - Src:             'cipher-chachapoly.c:78,9'
          Dst:             poly1305_auth
        - Src:             'cipher-chachapoly.c:79,12'
          Dst:             chachapoly_timingsafe_bcmp
        - Src:             'cipher-chachapoly.c:88,9'
          Dst:             chacha_ivsetup
        - Src:             'cipher-chachapoly.c:89,9'
          Dst:             chacha_encrypt_bytes
        - Src:             'cipher-chachapoly.c:93,5'
          Dst:             chacha_ivsetup
        - Src:             'cipher-chachapoly.c:94,5'
          Dst:             chacha_encrypt_bytes
        - Src:             'cipher-chachapoly.c:99,9'
          Dst:             poly1305_auth
    - functionName:    chachapoly_init
      functionSourceFile: '/src/libssh2/src/cipher-chachapoly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - chacha_keysetup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'cipher-chachapoly.c:36,5'
          Dst:             chacha_keysetup
        - Src:             'cipher-chachapoly.c:37,5'
          Dst:             chacha_keysetup
    - functionName:    comp_method_none_decomp
      functionSourceFile: '/src/libssh2/src/comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    comp_method_none_comp
      functionSourceFile: '/src/libssh2/src/comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    comp_method_zlib_free
      functionSourceFile: '/src/libssh2/src/comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 135
      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:    comp_method_zlib_alloc
      functionSourceFile: '/src/libssh2/src/comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    comp_method_zlib_dtor
      functionSourceFile: '/src/libssh2/src/comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - deflateEnd
        - inflateEnd
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'comp.c:341,13'
          Dst:             deflateEnd
        - Src:             'comp.c:343,13'
          Dst:             inflateEnd
    - functionName:    deflateEnd
      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:    inflateEnd
      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:    comp_method_zlib_decomp
      functionSourceFile: '/src/libssh2/src/comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          334
      EdgeCount:       51
      CyclomaticComplexity: 15
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - inflate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'comp.c:245,16'
          Dst:             _libssh2_error
        - Src:             'comp.c:265,16'
          Dst:             _libssh2_error
        - Src:             'comp.c:274,18'
          Dst:             inflate
        - Src:             'comp.c:288,17'
          Dst:             _libssh2_debug_low
        - Src:             'comp.c:290,24'
          Dst:             _libssh2_error
        - Src:             'comp.c:299,13'
          Dst:             _libssh2_debug_low
        - Src:             'comp.c:301,20'
          Dst:             _libssh2_error
        - Src:             'comp.c:307,20'
          Dst:             _libssh2_error
        - Src:             'comp.c:317,20'
          Dst:             _libssh2_error
    - functionName:    inflate
      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:    comp_method_zlib_comp
      functionSourceFile: '/src/libssh2/src/comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          96
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - deflate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'comp.c:206,14'
          Dst:             deflate
        - Src:             'comp.c:213,5'
          Dst:             _libssh2_debug_low
        - Src:             'comp.c:216,12'
          Dst:             _libssh2_error
    - functionName:    deflate
      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:    comp_method_zlib_init
      functionSourceFile: '/src/libssh2/src/comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          91
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - _libssh2_calloc
        - _libssh2_debug_low
        - _libssh2_error
        - deflateInit_
        - inflateInit_
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'comp.c:147,12'
          Dst:             _libssh2_calloc
        - Src:             'comp.c:149,16'
          Dst:             _libssh2_error
        - Src:             'comp.c:159,18'
          Dst:             deflateInit_
        - Src:             'comp.c:163,18'
          Dst:             inflateInit_
        - Src:             'comp.c:168,9'
          Dst:             _libssh2_debug_low
    - functionName:    deflateInit_
      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:    inflateInit_
      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:    _libssh2_comp_methods
      functionSourceFile: '/src/libssh2/src/comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hostkey_method_ssh_rsa_signv
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          109
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_rsa_sha1_sign
        - _libssh2_sha1_final
        - _libssh2_sha1_init
        - _libssh2_sha1_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:245,9'
          Dst:             _libssh2_sha1_init
        - Src:             'hostkey.c:249,13'
          Dst:             _libssh2_sha1_update
        - Src:             'hostkey.c:254,9'
          Dst:             _libssh2_sha1_final
        - Src:             'hostkey.c:258,11'
          Dst:             _libssh2_rsa_sha1_sign
    - functionName:    hostkey_method_ssh_rsa_sig_verify
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_rsa_sha1_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:218,12'
          Dst:             _libssh2_rsa_sha1_verify
    - functionName:    hostkey_method_ssh_rsa_sha2_256_sig_verify
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_rsa_sha2_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:293,12'
          Dst:             _libssh2_rsa_sha2_verify
    - functionName:    hostkey_method_ssh_rsa_sha2_512_sig_verify
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_rsa_sha2_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:367,12'
          Dst:             _libssh2_rsa_sha2_verify
    - functionName:    hostkey_method_ssh_rsa_init
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          198
      EdgeCount:       50
      CyclomaticComplexity: 15
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_eob
        - _libssh2_get_string
        - _libssh2_rsa_new
        - hostkey_method_ssh_rsa_dtor
        - strncmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:73,9'
          Dst:             hostkey_method_ssh_rsa_dtor
        - Src:             'hostkey.c:78,9'
          Dst:             _libssh2_debug_low
        - Src:             'hostkey.c:87,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:93,25'
          Dst:             strncmp
        - Src:             'hostkey.c:99,26'
          Dst:             strncmp
        - Src:             'hostkey.c:102,31'
          Dst:             strncmp
        - Src:             'hostkey.c:108,9'
          Dst:             _libssh2_debug_low
        - Src:             'hostkey.c:113,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:116,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:119,9'
          Dst:             _libssh2_eob
        - Src:             'hostkey.c:122,8'
          Dst:             _libssh2_rsa_new
    - functionName:    hostkey_method_ssh_rsa_dtor
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - RSA_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:431,5'
          Dst:             RSA_free
    - functionName:    hostkey_method_ssh_ecdsa_sig_verify
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 930
      functionLinenumberEnd: 961
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          126
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - _libssh2_ecdsa_verify
        - _libssh2_get_string
        - _libssh2_get_u32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:948,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:951,8'
          Dst:             _libssh2_get_u32
        - Src:             'hostkey.c:954,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:957,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:960,12'
          Dst:             _libssh2_ecdsa_verify
    - functionName:    hostkey_method_ssh_ecdsa_init
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 855
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          264
      EdgeCount:       76
      CyclomaticComplexity: 22
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_ecdsa_curve_name_with_octal_new
        - _libssh2_eob
        - _libssh2_get_string
        - hostkey_method_ssh_ecdsa_dtor
        - strncmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:794,9'
          Dst:             hostkey_method_ssh_ecdsa_dtor
        - Src:             'hostkey.c:799,9'
          Dst:             _libssh2_debug_low
        - Src:             'hostkey.c:808,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:811,8'
          Dst:             strncmp
        - Src:             'hostkey.c:814,13'
          Dst:             strncmp
        - Src:             'hostkey.c:817,13'
          Dst:             strncmp
        - Src:             'hostkey.c:824,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:828,8'
          Dst:             strncmp
        - Src:             'hostkey.c:832,13'
          Dst:             strncmp
        - Src:             'hostkey.c:836,13'
          Dst:             strncmp
        - Src:             'hostkey.c:841,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:844,9'
          Dst:             _libssh2_eob
        - Src:             'hostkey.c:847,8'
          Dst:             _libssh2_ecdsa_curve_name_with_octal_new
    - functionName:    hostkey_method_ssh_ecdsa_dtor
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1032
      functionLinenumberEnd: 1041
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EC_KEY_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:1037,9'
          Dst:             EC_KEY_free
    - functionName:    hostkey_method_ssh_rsa_sha2_256_signv
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          109
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_rsa_sha2_sign
        - _libssh2_sha256_final
        - _libssh2_sha256_init
        - _libssh2_sha256_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:322,9'
          Dst:             _libssh2_sha256_init
        - Src:             'hostkey.c:326,13'
          Dst:             _libssh2_sha256_update
        - Src:             'hostkey.c:331,9'
          Dst:             _libssh2_sha256_final
        - Src:             'hostkey.c:335,11'
          Dst:             _libssh2_rsa_sha2_sign
    - functionName:    hostkey_method_ssh_rsa_sha2_512_signv
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          109
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - _libssh2_rsa_sha2_sign
        - _libssh2_sha512_final
        - _libssh2_sha512_init
        - _libssh2_sha512_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:395,9'
          Dst:             _libssh2_sha512_init
        - Src:             'hostkey.c:399,13'
          Dst:             _libssh2_sha512_update
        - Src:             'hostkey.c:404,9'
          Dst:             _libssh2_sha512_final
        - Src:             'hostkey.c:408,11'
          Dst:             _libssh2_rsa_sha2_sign
    - functionName:    hostkey_method_ssh_rsa_initPEMFromMemory
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _libssh2_rsa_new_private_frommemory
        - hostkey_method_ssh_rsa_dtor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:180,9'
          Dst:             hostkey_method_ssh_rsa_dtor
        - Src:             'hostkey.c:184,11'
          Dst:             _libssh2_rsa_new_private_frommemory
    - functionName:    hostkey_method_ssh_rsa_initPEM
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _libssh2_rsa_new_private
        - hostkey_method_ssh_rsa_dtor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:150,9'
          Dst:             hostkey_method_ssh_rsa_dtor
        - Src:             'hostkey.c:154,11'
          Dst:             _libssh2_rsa_new_private
    - functionName:    hostkey_method_ssh_ecdsa_signv
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1004
      functionLinenumberEnd: 1023
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          309
      EdgeCount:       76
      CyclomaticComplexity: 20
      functionsReached:
        - _libssh2_ecdsa_get_curve_type
        - _libssh2_ecdsa_sign
        - _libssh2_sha256_final
        - _libssh2_sha256_init
        - _libssh2_sha256_update
        - _libssh2_sha384_final
        - _libssh2_sha384_init
        - _libssh2_sha384_update
        - _libssh2_sha512_final
        - _libssh2_sha512_init
        - _libssh2_sha512_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:1006,31'
          Dst:             _libssh2_ecdsa_get_curve_type
        - Src:             'hostkey.c:1010,9'
          Dst:             _libssh2_sha256_init
        - Src:             'hostkey.c:1010,9'
          Dst:             _libssh2_sha256_update
        - Src:             'hostkey.c:1010,9'
          Dst:             _libssh2_sha256_final
        - Src:             'hostkey.c:1010,9'
          Dst:             _libssh2_ecdsa_sign
        - Src:             'hostkey.c:1013,9'
          Dst:             _libssh2_sha384_init
        - Src:             'hostkey.c:1013,9'
          Dst:             _libssh2_sha384_update
        - Src:             'hostkey.c:1013,9'
          Dst:             _libssh2_sha384_final
        - Src:             'hostkey.c:1013,9'
          Dst:             _libssh2_ecdsa_sign
        - Src:             'hostkey.c:1016,9'
          Dst:             _libssh2_sha512_init
        - Src:             'hostkey.c:1016,9'
          Dst:             _libssh2_sha512_update
        - Src:             'hostkey.c:1016,9'
          Dst:             _libssh2_sha512_final
        - Src:             'hostkey.c:1016,9'
          Dst:             _libssh2_ecdsa_sign
    - functionName:    hostkey_method_ssh_ecdsa_initPEMFromMemory
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 896
      functionLinenumberEnd: 917
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          81
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_ecdsa_new_private_frommemory
        - hostkey_method_ssh_ecdsa_dtor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:901,9'
          Dst:             hostkey_method_ssh_ecdsa_dtor
        - Src:             'hostkey.c:905,11'
          Dst:             _libssh2_ecdsa_new_private_frommemory
    - functionName:    hostkey_method_ssh_ecdsa_initPEM
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 867
      functionLinenumberEnd: 882
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          66
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - _libssh2_ecdsa_new_private
        - hostkey_method_ssh_ecdsa_dtor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:872,9'
          Dst:             hostkey_method_ssh_ecdsa_dtor
        - Src:             'hostkey.c:876,11'
          Dst:             _libssh2_ecdsa_new_private
    - functionName:    hostkey_method_ssh_ed25519_dtor
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1301
      functionLinenumberEnd: 1310
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_PKEY_free
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:1306,9'
          Dst:             EVP_PKEY_free
    - functionName:    hostkey_method_ssh_ed25519_signv
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1282
      functionLinenumberEnd: 1292
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - _libssh2_ed25519_sign
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:1289,12'
          Dst:             _libssh2_ed25519_sign
    - functionName:    hostkey_method_ssh_ed25519_sig_verify
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1252
      functionLinenumberEnd: 1268
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - _libssh2_ed25519_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:1267,12'
          Dst:             _libssh2_ed25519_verify
    - functionName:    hostkey_method_ssh_ed25519_initPEMFromMemory
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1218
      functionLinenumberEnd: 1239
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          81
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - _libssh2_ed25519_new_private_frommemory
        - hostkey_method_ssh_ed25519_dtor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:1223,9'
          Dst:             hostkey_method_ssh_ed25519_dtor
        - Src:             'hostkey.c:1227,11'
          Dst:             _libssh2_ed25519_new_private_frommemory
    - functionName:    hostkey_method_ssh_ed25519_initPEM
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1187
      functionLinenumberEnd: 1205
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - _libssh2_ed25519_new_private
        - hostkey_method_ssh_ed25519_dtor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:1192,9'
          Dst:             hostkey_method_ssh_ed25519_dtor
        - Src:             'hostkey.c:1196,11'
          Dst:             _libssh2_ed25519_new_private
    - functionName:    hostkey_method_ssh_ed25519_init
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1137
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          113
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_ed25519_new_public
        - _libssh2_eob
        - _libssh2_get_string
        - _libssh2_match_string
        - hostkey_method_ssh_ed25519_dtor
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:1144,9'
          Dst:             hostkey_method_ssh_ed25519_dtor
        - Src:             'hostkey.c:1149,9'
          Dst:             _libssh2_debug_low
        - Src:             'hostkey.c:1158,8'
          Dst:             _libssh2_match_string
        - Src:             'hostkey.c:1162,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:1165,9'
          Dst:             _libssh2_eob
        - Src:             'hostkey.c:1168,8'
          Dst:             _libssh2_ed25519_new_public
    - functionName:    hostkey_type
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1421
      functionLinenumberEnd: 1476
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          99
      EdgeCount:       28
      CyclomaticComplexity: 10
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:1449,9'
          Dst:             memcmp
        - Src:             'hostkey.c:1460,9'
          Dst:             memcmp
        - Src:             'hostkey.c:1466,9'
          Dst:             memcmp
        - Src:             'hostkey.c:1469,9'
          Dst:             memcmp
        - Src:             'hostkey.c:1472,9'
          Dst:             memcmp
    - functionName:    libssh2_session_hostkey
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1486
      functionLinenumberEnd: 1498
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - hostkey_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'hostkey.c:1491,21'
          Dst:             hostkey_type
    - functionName:    libssh2_hostkey_hash
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1399
      functionLinenumberEnd: 1418
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'hostkey.c:1400,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    libssh2_hostkey_methods
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1385
      functionLinenumberEnd: 1386
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    poly1305_auth
      functionSourceFile: '/src/libssh2/src/poly1305.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          1262
      EdgeCount:       31
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chacha_encrypt_bytes
      functionSourceFile: '/src/libssh2/src/chacha.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          2017
      EdgeCount:       67
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chacha_ivsetup
      functionSourceFile: '/src/libssh2/src/chacha.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          154
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    chacha_keysetup
      functionSourceFile: '/src/libssh2/src/chacha.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          388
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
...
