---
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: 26
      functionLinenumberEnd: 95
      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:33,10'
          Dst:             libssh2_init
        - Src:             'ssh2_client_fuzzer.cc:36,9'
          Dst:             fprintf
        - Src:             'ssh2_client_fuzzer.cc:41,10'
          Dst:             socketpair
        - Src:             'ssh2_client_fuzzer.cc:42,5'
          Dst:             __errno_location
        - Src:             'ssh2_client_fuzzer.cc:42,5'
          Dst:             strerror
        - Src:             'ssh2_client_fuzzer.cc:42,5'
          Dst:             fprintf
        - Src:             'ssh2_client_fuzzer.cc:44,15'
          Dst:             send
        - Src:             'ssh2_client_fuzzer.cc:51,17'
          Dst:             __errno_location
        - Src:             'ssh2_client_fuzzer.cc:48,9'
          Dst:             fprintf
        - Src:             'ssh2_client_fuzzer.cc:55,10'
          Dst:             shutdown
        - Src:             'ssh2_client_fuzzer.cc:57,9'
          Dst:             fprintf
        - Src:             'ssh2_client_fuzzer.cc:63,15'
          Dst:             libssh2_session_init_ex
        - Src:             'ssh2_client_fuzzer.cc:65,9'
          Dst:             libssh2_session_set_blocking
        - Src:             'ssh2_client_fuzzer.cc:71,8'
          Dst:             libssh2_session_handshake
        - Src:             'ssh2_client_fuzzer.cc:82,13'
          Dst:             libssh2_session_disconnect_ex
        - Src:             'ssh2_client_fuzzer.cc:87,9'
          Dst:             libssh2_session_free
        - Src:             'ssh2_client_fuzzer.cc:90,5'
          Dst:             libssh2_exit
        - Src:             'ssh2_client_fuzzer.cc:92,5'
          Dst:             close
        - Src:             'ssh2_client_fuzzer.cc:93,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: 74
      functionLinenumberEnd: 77
      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:76,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: 1225
      functionLinenumberEnd: 1283
      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:1244,5'
          Dst:             RSA_get0_key
        - Src:             'openssl.c:1254,15'
          Dst:             BN_num_bits
        - Src:             'openssl.c:1255,15'
          Dst:             BN_num_bits
        - Src:             'openssl.c:1268,5'
          Dst:             _libssh2_htonu32
        - Src:             'openssl.c:1274,9'
          Dst:             write_bn
        - Src:             'openssl.c:1275,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: 223
      functionLinenumberEnd: 236
      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:230,5'
          Dst:             BN_bn2bin
        - Src:             'openssl.c:234,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: 3766
      functionLinenumberEnd: 3889
      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:3772,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:3775,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3777,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3781,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3782,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3786,10'
          Dst:             _libssh2_ecdsa_curve_name_with_octal_new
        - Src:             'openssl.c:3791,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3796,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3797,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3801,17'
          Dst:             _libssh2_get_byte
        - Src:             'openssl.c:3802,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3808,12'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3809,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3827,24'
          Dst:             EVP_PKEY_new
        - Src:             'openssl.c:3828,9'
          Dst:             EVP_PKEY_set1_EC_KEY
        - Src:             'openssl.c:3831,14'
          Dst:             gen_publickey_from_ec_evp
        - Src:             'openssl.c:3837,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:3853,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:3857,13'
          Dst:             explicit_bzero
        - Src:             'openssl.c:3870,9'
          Dst:             EC_KEY_free
        - Src:             'openssl.c:3876,9'
          Dst:             EC_KEY_free
    - functionName:    _libssh2_ecdsa_curve_name_with_octal_new
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 767
      functionLinenumberEnd: 848
      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:818,22'
          Dst:             EC_KEY_new_by_curve_name
        - Src:             'openssl.c:824,20'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl.c:825,17'
          Dst:             EC_POINT_new
        - Src:             'openssl.c:828,19'
          Dst:             EC_POINT_oct2point
        - Src:             'openssl.c:830,23'
          Dst:             EC_KEY_set_public_key
        - Src:             'openssl.c:832,13'
          Dst:             EC_POINT_free
        - Src:             'openssl.c:840,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: 3451
      functionLinenumberEnd: 3606
      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:3473,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:3476,14'
          Dst:             BN_CTX_new
        - Src:             'openssl.c:3480,10'
          Dst:             EVP_PKEY_get1_EC_KEY
        - Src:             'openssl.c:3486,18'
          Dst:             EC_KEY_get0_public_key
        - Src:             'openssl.c:3487,13'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl.c:3488,12'
          Dst:             _libssh2_ecdsa_get_curve_type
        - Src:             'openssl.c:3498,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3515,9'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:3528,17'
          Dst:             EC_POINT_point2oct
        - Src:             'openssl.c:3543,8'
          Dst:             EC_POINT_point2oct
        - Src:             'openssl.c:3563,5'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:3567,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:3570,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:3574,5'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:3589,9'
          Dst:             EC_KEY_free
        - Src:             'openssl.c:3592,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: 710
      functionLinenumberEnd: 728
      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:727,29'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl.c:728,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: 3617
      functionLinenumberEnd: 3752
      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:3632,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:3635,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3637,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3642,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3643,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3647,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:3648,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3690,10'
          Dst:             _libssh2_ecdsa_curve_name_with_octal_new
        - Src:             'openssl.c:3695,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3700,19'
          Dst:             BN_new
        - Src:             'openssl.c:3703,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3708,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:3709,11'
          Dst:             EC_KEY_set_private_key
        - Src:             'openssl.c:3716,24'
          Dst:             EVP_PKEY_new
        - Src:             'openssl.c:3717,9'
          Dst:             EVP_PKEY_set1_EC_KEY
        - Src:             'openssl.c:3720,14'
          Dst:             gen_publickey_from_ec_evp
        - Src:             'openssl.c:3726,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:3738,9'
          Dst:             EC_KEY_free
        - Src:             'openssl.c:3749,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:    rsa_new_additional_parameters
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1352
      functionLinenumberEnd: 1421
      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:1363,5'
          Dst:             RSA_get0_key
        - Src:             'openssl.c:1364,5'
          Dst:             RSA_get0_factors
        - Src:             'openssl.c:1371,11'
          Dst:             BN_CTX_new
        - Src:             'openssl.c:1375,11'
          Dst:             BN_new
        - Src:             'openssl.c:1381,12'
          Dst:             BN_new
        - Src:             'openssl.c:1387,12'
          Dst:             BN_new
        - Src:             'openssl.c:1393,24'
          Dst:             BN_value_one
        - Src:             'openssl.c:1393,9'
          Dst:             BN_sub
        - Src:             'openssl.c:1394,9'
          Dst:             BN_div
        - Src:             'openssl.c:1395,24'
          Dst:             BN_value_one
        - Src:             'openssl.c:1395,9'
          Dst:             BN_sub
        - Src:             'openssl.c:1396,9'
          Dst:             BN_div
        - Src:             'openssl.c:1402,5'
          Dst:             RSA_set0_crt_params
        - Src:             'openssl.c:1410,9'
          Dst:             BN_clear_free
        - Src:             'openssl.c:1411,5'
          Dst:             BN_CTX_free
        - Src:             'openssl.c:1415,13'
          Dst:             BN_clear_free
        - Src:             'openssl.c:1417,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: 1432
      functionLinenumberEnd: 1528
      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
        - gen_publickey_from_rsa_evp
        - rsa_new_additional_parameters
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1438,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:1442,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1443,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1447,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1448,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1453,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1454,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1458,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1459,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1463,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1464,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1468,8'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'openssl.c:1469,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1473,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:1474,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1478,10'
          Dst:             _libssh2_rsa_new
        - Src:             'openssl.c:1487,9'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:1494,14'
          Dst:             rsa_new_additional_parameters
        - Src:             'openssl.c:1501,24'
          Dst:             EVP_PKEY_new
        - Src:             'openssl.c:1502,9'
          Dst:             EVP_PKEY_set1_RSA
        - Src:             'openssl.c:1505,14'
          Dst:             gen_publickey_from_rsa_evp
        - Src:             'openssl.c:1510,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:1517,9'
          Dst:             RSA_free
        - Src:             'openssl.c:1524,9'
          Dst:             RSA_free
        - Src:             'openssl.c:1526,12'
          Dst:             _libssh2_error
    - functionName:    _libssh2_rsa_new
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 405
      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:356,9'
          Dst:             BN_new
        - Src:             'openssl.c:357,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:359,9'
          Dst:             BN_new
        - Src:             'openssl.c:360,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:363,13'
          Dst:             BN_new
        - Src:             'openssl.c:364,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:366,13'
          Dst:             BN_new
        - Src:             'openssl.c:367,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:369,13'
          Dst:             BN_new
        - Src:             'openssl.c:370,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:372,16'
          Dst:             BN_new
        - Src:             'openssl.c:373,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:375,16'
          Dst:             BN_new
        - Src:             'openssl.c:376,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:378,16'
          Dst:             BN_new
        - Src:             'openssl.c:379,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:382,12'
          Dst:             RSA_new
        - Src:             'openssl.c:384,5'
          Dst:             RSA_set0_key
        - Src:             'openssl.c:392,5'
          Dst:             RSA_set0_factors
        - Src:             'openssl.c:399,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: 1292
      functionLinenumberEnd: 1348
      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:1298,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:1304,11'
          Dst:             EVP_PKEY_get1_RSA
        - Src:             'openssl.c:1316,11'
          Dst:             gen_publickey_from_rsa
        - Src:             'openssl.c:1321,5'
          Dst:             RSA_free
        - Src:             'openssl.c:1339,9'
          Dst:             RSA_free
        - Src:             'openssl.c:1346,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: 1121
      functionLinenumberEnd: 1132
      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:1122,31'
          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: 5178
      functionLinenumberEnd: 5197
      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:5183,9'
          Dst:             memcmp
        - Src:             'openssl.c:5185,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: 5164
      functionLinenumberEnd: 5170
      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:5165,9'
          Dst:             BN_bin2bn
    - functionName:    _libssh2_dh_dtor
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5158
      functionLinenumberEnd: 5161
      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:5159,5'
          Dst:             BN_clear_free
    - functionName:    _libssh2_dh_secret
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5151
      functionLinenumberEnd: 5154
      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:5153,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: 5141
      functionLinenumberEnd: 5145
      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:5143,5'
          Dst:             BN_rand
        - Src:             'openssl.c:5144,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: 5134
      functionLinenumberEnd: 5136
      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:5135,14'
          Dst:             BN_new
    - functionName:    _libssh2_sk_pub_keyfilememory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5095
      functionLinenumberEnd: 5131
      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
        - sk_pub_openssh_keyfilememory
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:5100,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:5103,10'
          Dst:             BIO_new_mem_buf
        - Src:             'openssl.c:5105,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5108,11'
          Dst:             BIO_ctrl
        - Src:             'openssl.c:5109,10'
          Dst:             PEM_read_bio_PrivateKey
        - Src:             'openssl.c:5111,5'
          Dst:             BIO_free
        - Src:             'openssl.c:5115,14'
          Dst:             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:    sk_pub_openssh_keyfilememory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4884
      functionLinenumberEnd: 4973
      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:4893,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4896,20'
          Dst:             strlen
        - Src:             'openssl.c:4897,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4899,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:4901,10'
          Dst:             _libssh2_openssh_pem_parse_memory
        - Src:             'openssl.c:4909,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:4912,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4930,8'
          Dst:             strcmp
        - Src:             'openssl.c:4933,12'
          Dst:             strcmp
        - Src:             'openssl.c:4934,18'
          Dst:             gen_publickey_from_sk_ed25519_openssh_priv_data
        - Src:             'openssl.c:4949,8'
          Dst:             strcmp
        - Src:             'openssl.c:4951,14'
          Dst:             gen_publickey_from_sk_ecdsa_openssh_priv_data
        - Src:             'openssl.c:4964,14'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4970,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: 2304
      functionLinenumberEnd: 2441
      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:2315,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2318,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2320,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2325,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2326,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2330,17'
          Dst:             _libssh2_get_byte
        - Src:             'openssl.c:2331,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2337,12'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2338,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2352,11'
          Dst:             EVP_PKEY_new_raw_public_key
        - Src:             'openssl.c:2357,9'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2362,22'
          Dst:             strlen
        - Src:             'openssl.c:2364,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2372,15'
          Dst:             _libssh2_calloc
        - Src:             'openssl.c:2374,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2381,42'
          Dst:             strlen
        - Src:             'openssl.c:2381,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2382,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2383,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2387,13'
          Dst:             explicit_bzero
        - Src:             'openssl.c:2393,38'
          Dst:             strlen
        - Src:             'openssl.c:2401,27'
          Dst:             strlen
        - Src:             'openssl.c:2414,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:2422,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: 4987
      functionLinenumberEnd: 5080
      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
        - gen_publickey_from_ec_evp
        - gen_publickey_from_ed_evp
        - gen_publickey_from_rsa_evp
        - pub_priv_openssh_keyfilememory
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl.c:5045,5'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl.c:4996,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:4999,10'
          Dst:             BIO_new_mem_buf
        - Src:             'openssl.c:5001,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5004,11'
          Dst:             BIO_ctrl
        - Src:             'openssl.c:5005,10'
          Dst:             PEM_read_bio_PrivateKey
        - Src:             'openssl.c:5010,5'
          Dst:             BIO_free
        - Src:             'openssl.c:5014,14'
          Dst:             pub_priv_openssh_keyfilememory
        - Src:             'openssl.c:5033,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5040,14'
          Dst:             EVP_PKEY_id
        - Src:             'openssl.c:5048,14'
          Dst:             gen_publickey_from_ed_evp
        - Src:             'openssl.c:5054,14'
          Dst:             gen_publickey_from_rsa_evp
        - Src:             'openssl.c:5066,14'
          Dst:             gen_publickey_from_ec_evp
        - Src:             'openssl.c:5071,14'
          Dst:             _libssh2_error
        - Src:             'openssl.c:5078,5'
          Dst:             EVP_PKEY_free
    - functionName:    pub_priv_openssh_keyfilememory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4736
      functionLinenumberEnd: 4867
      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:4745,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4748,21'
          Dst:             strlen
        - Src:             'openssl.c:4748,46'
          Dst:             strlen
        - Src:             'openssl.c:4749,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4751,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:4753,10'
          Dst:             _libssh2_openssh_pem_parse_memory
        - Src:             'openssl.c:4761,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:4764,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4777,8'
          Dst:             strcmp
        - Src:             'openssl.c:4778,25'
          Dst:             strcmp
        - Src:             'openssl.c:4779,18'
          Dst:             gen_publickey_from_ed25519_openssh_priv_data
        - Src:             'openssl.c:4789,8'
          Dst:             strcmp
        - Src:             'openssl.c:4791,12'
          Dst:             strcmp
        - Src:             'openssl.c:4792,18'
          Dst:             gen_publickey_from_sk_ed25519_openssh_priv_data
        - Src:             'openssl.c:4805,8'
          Dst:             strcmp
        - Src:             'openssl.c:4806,25'
          Dst:             strcmp
        - Src:             'openssl.c:4807,18'
          Dst:             gen_publickey_from_rsa_openssh_priv_data
        - Src:             'openssl.c:4830,12'
          Dst:             strcmp
        - Src:             'openssl.c:4832,18'
          Dst:             gen_publickey_from_sk_ecdsa_openssh_priv_data
        - Src:             'openssl.c:4842,17'
          Dst:             _libssh2_ecdsa_curve_type_from_name
        - Src:             'openssl.c:4844,29'
          Dst:             strcmp
        - Src:             'openssl.c:4845,22'
          Dst:             gen_publickey_from_ecdsa_openssh_priv_data
        - Src:             'openssl.c:4858,14'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4864,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: 2092
      functionLinenumberEnd: 2151
      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:2100,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2105,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2111,8'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'openssl.c:2112,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2121,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2126,5'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2127,5'
          Dst:             _libssh2_store_u32
        - Src:             'openssl.c:2129,8'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'openssl.c:2130,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: 2161
      functionLinenumberEnd: 2290
      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:2170,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2173,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2175,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2180,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2182,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2189,11'
          Dst:             EVP_PKEY_new_raw_private_key
        - Src:             'openssl.c:2194,8'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2195,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2200,34'
          Dst:             _libssh2_calloc
        - Src:             'openssl.c:2206,13'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2217,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2225,9'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:2231,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2239,15'
          Dst:             _libssh2_calloc
        - Src:             'openssl.c:2241,13'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2248,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2249,9'
          Dst:             _libssh2_store_str
        - Src:             'openssl.c:2273,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:2281,9'
          Dst:             EVP_PKEY_free
    - functionName:    _libssh2_ecdsa_curve_type_from_name
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 737
      functionLinenumberEnd: 758
      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:740,17'
          Dst:             strlen
        - Src:             'openssl.c:743,8'
          Dst:             strcmp
        - Src:             'openssl.c:745,13'
          Dst:             strcmp
        - Src:             'openssl.c:747,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:    pub_priv_openssh_keyfile
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4537
      functionLinenumberEnd: 4632
      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:4544,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4548,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:4550,10'
          Dst:             fopen
        - Src:             'openssl.c:4552,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4557,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:4559,5'
          Dst:             fclose
        - Src:             'openssl.c:4561,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4566,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:4569,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4583,8'
          Dst:             strcmp
        - Src:             'openssl.c:4584,14'
          Dst:             gen_publickey_from_ed25519_openssh_priv_data
        - Src:             'openssl.c:4592,8'
          Dst:             strcmp
        - Src:             'openssl.c:4593,14'
          Dst:             gen_publickey_from_rsa_openssh_priv_data
        - Src:             'openssl.c:4611,12'
          Dst:             _libssh2_ecdsa_curve_type_from_name
        - Src:             'openssl.c:4613,18'
          Dst:             gen_publickey_from_ecdsa_openssh_priv_data
        - Src:             'openssl.c:4624,9'
          Dst:             _libssh2_string_buf_free
        - Src:             'openssl.c:4627,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: 4641
      functionLinenumberEnd: 4724
      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
        - gen_publickey_from_ec_evp
        - gen_publickey_from_ed_evp
        - gen_publickey_from_rsa_evp
        - pub_priv_openssh_keyfile
      functionUses:    0
      BranchProfiles:
        - Branch String:   'openssl.c:4689,5'
          Branch Sides:    []
      Callsites:
        - Src:             'openssl.c:4648,5'
          Dst:             _libssh2_debug_low
        - Src:             'openssl.c:4652,10'
          Dst:             BIO_new_file
        - Src:             'openssl.c:4654,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4659,11'
          Dst:             BIO_ctrl
        - Src:             'openssl.c:4660,10'
          Dst:             PEM_read_bio_PrivateKey
        - Src:             'openssl.c:4662,5'
          Dst:             BIO_free
        - Src:             'openssl.c:4667,14'
          Dst:             pub_priv_openssh_keyfile
        - Src:             'openssl.c:4673,20'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4684,14'
          Dst:             EVP_PKEY_id
        - Src:             'openssl.c:4692,14'
          Dst:             gen_publickey_from_ed_evp
        - Src:             'openssl.c:4698,14'
          Dst:             gen_publickey_from_rsa_evp
        - Src:             'openssl.c:4710,14'
          Dst:             gen_publickey_from_ec_evp
        - Src:             'openssl.c:4715,14'
          Dst:             _libssh2_error
        - Src:             'openssl.c:4722,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: 4508
      functionLinenumberEnd: 4526
      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:4511,26'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:4515,11'
          Dst:             EVP_DigestVerifyInit
        - Src:             'openssl.c:4519,11'
          Dst:             EVP_DigestVerify
        - Src:             'openssl.c:4523,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: 4431
      functionLinenumberEnd: 4504
      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:4442,14'
          Dst:             BN_CTX_new
        - Src:             'openssl.c:4446,16'
          Dst:             EVP_PKEY_new_raw_public_key
        - Src:             'openssl.c:4450,18'
          Dst:             EVP_PKEY_new_raw_private_key
        - Src:             'openssl.c:4458,22'
          Dst:             EVP_PKEY_CTX_new
        - Src:             'openssl.c:4463,10'
          Dst:             EVP_PKEY_derive_init
        - Src:             'openssl.c:4468,10'
          Dst:             EVP_PKEY_derive_set_peer
        - Src:             'openssl.c:4473,10'
          Dst:             EVP_PKEY_derive
        - Src:             'openssl.c:4483,10'
          Dst:             EVP_PKEY_derive
        - Src:             'openssl.c:4486,9'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:4495,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl.c:4497,9'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:4499,9'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:4501,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: 4387
      functionLinenumberEnd: 4424
      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:4389,26'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:4394,12'
          Dst:             EVP_DigestSignInit
        - Src:             'openssl.c:4396,12'
          Dst:             EVP_DigestSign
        - Src:             'openssl.c:4402,15'
          Dst:             _libssh2_calloc
        - Src:             'openssl.c:4406,14'
          Dst:             EVP_DigestSign
        - Src:             'openssl.c:4422,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: 4202
      functionLinenumberEnd: 4378
      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:4313,14'
          Dst:             BN_CTX_new
        - Src:             'openssl.c:4321,25'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl.c:4323,31'
          Dst:             EC_POINT_new
        - Src:             'openssl.c:4327,10'
          Dst:             EC_POINT_oct2point
        - Src:             'openssl.c:4334,19'
          Dst:             EC_GROUP_get_degree
        - Src:             'openssl.c:4341,18'
          Dst:             ECDH_compute_key
        - Src:             'openssl.c:4349,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:4364,9'
          Dst:             EC_POINT_free
        - Src:             'openssl.c:4367,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: 4088
      functionLinenumberEnd: 4193
      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:4140,22'
          Dst:             BN_CTX_new
        - Src:             'openssl.c:4144,19'
          Dst:             EC_KEY_new_by_curve_name
        - Src:             'openssl.c:4145,13'
          Dst:             EC_KEY_get0_group
        - Src:             'openssl.c:4147,5'
          Dst:             EC_KEY_generate_key
        - Src:             'openssl.c:4148,18'
          Dst:             EC_KEY_get0_public_key
        - Src:             'openssl.c:4151,17'
          Dst:             EC_POINT_point2oct
        - Src:             'openssl.c:4160,8'
          Dst:             EC_POINT_point2oct
        - Src:             'openssl.c:4189,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:    ecdsa_new_openssh_private_sk
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3957
      functionLinenumberEnd: 4011
      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:3964,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3968,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:3970,10'
          Dst:             fopen
        - Src:             'openssl.c:3972,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3977,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:3978,5'
          Dst:             fclose
        - Src:             'openssl.c:3984,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3987,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3992,8'
          Dst:             strcmp
        - Src:             'openssl.c:3993,14'
          Dst:             gen_publickey_from_sk_ecdsa_openssh_priv_data
        - Src:             'openssl.c:4008,9'
          Dst:             _libssh2_string_buf_free
    - functionName:    _libssh2_ecdsa_new_private_sk
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4049
      functionLinenumberEnd: 4077
      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_init_if_needed
        - ecdsa_new_openssh_private_sk
        - read_private_key_from_file
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4060,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:4062,10'
          Dst:             read_private_key_from_file
        - Src:             'openssl.c:4066,16'
          Dst:             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: 1170
      functionLinenumberEnd: 1185
      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:1175,10'
          Dst:             BIO_new_file
        - Src:             'openssl.c:1180,16'
          Dst:             passphrase_cb
        - Src:             'openssl.c:1183,5'
          Dst:             BIO_free
    - functionName:    ecdsa_new_openssh_private
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3895
      functionLinenumberEnd: 3947
      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:3903,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3907,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:3909,10'
          Dst:             fopen
        - Src:             'openssl.c:3911,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3916,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:3917,5'
          Dst:             fclose
        - Src:             'openssl.c:3923,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:3926,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:3931,10'
          Dst:             _libssh2_ecdsa_curve_type_from_name
        - Src:             'openssl.c:3934,14'
          Dst:             gen_publickey_from_ecdsa_openssh_priv_data
        - Src:             'openssl.c:3944,9'
          Dst:             _libssh2_string_buf_free
    - functionName:    _libssh2_ecdsa_new_private
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4017
      functionLinenumberEnd: 4039
      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_init_if_needed
        - ecdsa_new_openssh_private
        - read_private_key_from_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:4028,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:4030,10'
          Dst:             read_private_key_from_file
        - Src:             'openssl.c:4034,16'
          Dst:             ecdsa_new_openssh_private
    - functionName:    _libssh2_sha512_final
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3347
      functionLinenumberEnd: 3351
      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:3349,15'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3350,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: 3338
      functionLinenumberEnd: 3340
      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:3340,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: 3316
      functionLinenumberEnd: 3334
      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:3318,12'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3323,29'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3323,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3326,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: 3276
      functionLinenumberEnd: 3280
      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:3278,15'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3279,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_sha384_update
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3267
      functionLinenumberEnd: 3269
      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:3269,12'
          Dst:             EVP_DigestUpdate
    - functionName:    _libssh2_sha384_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3245
      functionLinenumberEnd: 3263
      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:3247,12'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3252,29'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3252,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3255,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_sha256_final
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3205
      functionLinenumberEnd: 3209
      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:3207,15'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3208,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_sha256_update
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3196
      functionLinenumberEnd: 3198
      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:3198,12'
          Dst:             EVP_DigestUpdate
    - functionName:    _libssh2_sha256_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3174
      functionLinenumberEnd: 3192
      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:3176,12'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3181,29'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3181,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3184,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_sha1_final
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3135
      functionLinenumberEnd: 3139
      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:3137,15'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3138,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_sha1_update
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3126
      functionLinenumberEnd: 3128
      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:3128,12'
          Dst:             EVP_DigestUpdate
    - functionName:    _libssh2_sha1_init
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3105
      functionLinenumberEnd: 3123
      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:3107,12'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3112,29'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3112,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3115,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_ecdsa_sign
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3006
      functionLinenumberEnd: 3101
      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:3049,11'
          Dst:             ECDSA_do_sign
        - Src:             'openssl.c:3055,5'
          Dst:             ECDSA_SIG_get0
        - Src:             'openssl.c:3061,13'
          Dst:             BN_num_bits
        - Src:             'openssl.c:3062,13'
          Dst:             BN_num_bits
        - Src:             'openssl.c:3071,10'
          Dst:             write_bn
        - Src:             'openssl.c:3072,10'
          Dst:             write_bn
        - Src:             'openssl.c:3076,18'
          Dst:             _libssh2_calloc
        - Src:             'openssl.c:3093,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: 2922
      functionLinenumberEnd: 2924
      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:2923,12'
          Dst:             _libssh2_rsa_sha2_sign
    - functionName:    _libssh2_rsa_sha2_sign
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2836
      functionLinenumberEnd: 2914
      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:2855,15'
          Dst:             RSA_size
        - Src:             'openssl.c:2890,15'
          Dst:             RSA_sign
        - Src:             'openssl.c:2893,15'
          Dst:             RSA_sign
        - Src:             'openssl.c:2896,15'
          Dst:             RSA_sign
        - Src:             'openssl.c:2899,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: 2643
      functionLinenumberEnd: 2661
      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:2649,11'
          Dst:             EVP_PKEY_new_raw_public_key
        - Src:             'openssl.c:2652,16'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2658,9'
          Dst:             EVP_PKEY_free
    - functionName:    _libssh2_ed25519_new_private_frommemory_sk
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2620
      functionLinenumberEnd: 2636
      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:
        - sk_pub_openssh_keyfilememory
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2622,12'
          Dst:             sk_pub_openssh_keyfilememory
    - functionName:    _libssh2_ed25519_new_private_frommemory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2583
      functionLinenumberEnd: 2608
      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
        - pub_priv_openssh_keyfilememory
        - read_private_key_from_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:2586,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:2588,8'
          Dst:             read_private_key_from_memory
        - Src:             'openssl.c:2588,8'
          Dst:             PEM_read_bio_PrivateKey
        - Src:             'openssl.c:2593,12'
          Dst:             EVP_PKEY_id
        - Src:             'openssl.c:2594,13'
          Dst:             EVP_PKEY_free
        - Src:             'openssl.c:2595,20'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2603,12'
          Dst:             pub_priv_openssh_keyfilememory
    - functionName:    read_private_key_from_memory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1147
      functionLinenumberEnd: 1162
      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:1152,10'
          Dst:             BIO_new_mem_buf
        - Src:             'openssl.c:1157,16'
          Dst:             passphrase_cb
        - Src:             'openssl.c:1160,5'
          Dst:             BIO_free
    - functionName:    _libssh2_ed25519_new_private_sk
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2514
      functionLinenumberEnd: 2576
      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:2522,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2526,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:2528,10'
          Dst:             fopen
        - Src:             'openssl.c:2530,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2535,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:2536,5'
          Dst:             fclose
        - Src:             'openssl.c:2542,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2545,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2550,8'
          Dst:             strcmp
        - Src:             'openssl.c:2551,14'
          Dst:             gen_publickey_from_sk_ed25519_openssh_priv_data
        - Src:             'openssl.c:2566,9'
          Dst:             _libssh2_string_buf_free
        - Src:             'openssl.c:2572,13'
          Dst:             EVP_PKEY_free
    - functionName:    _libssh2_ed25519_new_private
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2447
      functionLinenumberEnd: 2504
      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:2455,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2459,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:2461,10'
          Dst:             fopen
        - Src:             'openssl.c:2463,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2468,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:2469,5'
          Dst:             fclose
        - Src:             'openssl.c:2475,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:2478,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:2483,8'
          Dst:             strcmp
        - Src:             'openssl.c:2484,14'
          Dst:             gen_publickey_from_ed25519_openssh_priv_data
        - Src:             'openssl.c:2494,9'
          Dst:             _libssh2_string_buf_free
        - Src:             'openssl.c:2500,13'
          Dst:             EVP_PKEY_free
    - functionName:    _libssh2_curve25519_new
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2023
      functionLinenumberEnd: 2084
      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:2030,12'
          Dst:             EVP_PKEY_CTX_new_id
        - Src:             'openssl.c:2034,8'
          Dst:             EVP_PKEY_keygen_init
        - Src:             'openssl.c:2035,8'
          Dst:             EVP_PKEY_keygen
        - Src:             'openssl.c:2045,12'
          Dst:             EVP_PKEY_get_raw_private_key
        - Src:             'openssl.c:2060,12'
          Dst:             EVP_PKEY_get_raw_public_key
        - Src:             'openssl.c:2075,9'
          Dst:             EVP_PKEY_CTX_free
        - Src:             'openssl.c:2077,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: 1997
      functionLinenumberEnd: 2013
      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:
        - sk_pub_openssh_keyfilememory
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1999,12'
          Dst:             sk_pub_openssh_keyfilememory
    - functionName:    _libssh2_ecdsa_new_private_frommemory
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1960
      functionLinenumberEnd: 1985
      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
        - pub_priv_openssh_keyfilememory
        - read_private_key_from_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1971,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:1973,10'
          Dst:             read_private_key_from_memory
        - Src:             'openssl.c:1978,14'
          Dst:             pub_priv_openssh_keyfilememory
    - functionName:    rsa_new_openssh_private
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1534
      functionLinenumberEnd: 1582
      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:1541,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1545,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:1547,10'
          Dst:             fopen
        - Src:             'openssl.c:1549,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1554,10'
          Dst:             _libssh2_openssh_pem_parse
        - Src:             'openssl.c:1555,5'
          Dst:             fclose
        - Src:             'openssl.c:1561,10'
          Dst:             _libssh2_get_string
        - Src:             'openssl.c:1564,9'
          Dst:             _libssh2_error
        - Src:             'openssl.c:1569,8'
          Dst:             strcmp
        - Src:             'openssl.c:1570,14'
          Dst:             gen_publickey_from_rsa_openssh_priv_data
        - Src:             'openssl.c:1579,9'
          Dst:             _libssh2_string_buf_free
    - functionName:    _libssh2_rsa_new_private
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1588
      functionLinenumberEnd: 1609
      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
        - read_private_key_from_file
        - rsa_new_openssh_private
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1599,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:1601,10'
          Dst:             read_private_key_from_file
        - Src:             'openssl.c:1605,14'
          Dst:             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: 1194
      functionLinenumberEnd: 1219
      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
        - pub_priv_openssh_keyfilememory
        - read_private_key_from_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'openssl.c:1205,5'
          Dst:             _libssh2_init_if_needed
        - Src:             'openssl.c:1207,10'
          Dst:             read_private_key_from_memory
        - Src:             'openssl.c:1212,14'
          Dst:             pub_priv_openssh_keyfilememory
    - functionName:    _libssh2_openssl_crypto_exit
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1114
      functionLinenumberEnd: 1114
      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: 1108
      functionLinenumberEnd: 1112
      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: 995
      functionLinenumberEnd: 1104
      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:1018,5'
          Dst:             __assert_fail
        - Src:             'openssl.c:1019,5'
          Dst:             __assert_fail
        - Src:             'openssl.c:1026,19'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'openssl.c:1031,19'
          Dst:             EVP_Cipher
        - Src:             'openssl.c:1039,19'
          Dst:             EVP_CIPHER_CTX_ctrl
        - Src:             'openssl.c:1050,15'
          Dst:             EVP_Cipher
        - Src:             'openssl.c:1075,19'
          Dst:             EVP_Cipher
        - Src:             'openssl.c:1088,21'
          Dst:             __assert_fail
        - Src:             'openssl.c:1089,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: 960
      functionLinenumberEnd: 977
      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:968,10'
          Dst:             EVP_CIPHER_CTX_new
        - Src:             'openssl.c:969,11'
          Dst:             EVP_CipherInit
        - Src:             'openssl.c:973,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: 3288
      functionLinenumberEnd: 3313
      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:3290,23'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3295,28'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3295,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3296,9'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl.c:3297,9'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3298,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'openssl.c:3301,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_ecdsa_verify
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 952
      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:881,31'
          Dst:             _libssh2_ecdsa_get_curve_type
        - Src:             'openssl.c:892,28'
          Dst:             ECDSA_SIG_new
        - Src:             'openssl.c:893,18'
          Dst:             BN_new
        - Src:             'openssl.c:894,18'
          Dst:             BN_new
        - Src:             'openssl.c:896,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:897,5'
          Dst:             BN_bin2bn
        - Src:             'openssl.c:898,5'
          Dst:             ECDSA_SIG_set0
        - Src:             'openssl.c:923,9'
          Dst:             _libssh2_sha256
        - Src:             'openssl.c:923,9'
          Dst:             ECDSA_do_verify
        - Src:             'openssl.c:926,9'
          Dst:             _libssh2_sha384
        - Src:             'openssl.c:926,9'
          Dst:             ECDSA_do_verify
        - Src:             'openssl.c:929,9'
          Dst:             _libssh2_sha512
        - Src:             'openssl.c:929,9'
          Dst:             ECDSA_do_verify
        - Src:             'openssl.c:944,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: 3217
      functionLinenumberEnd: 3242
      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:3219,23'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3224,28'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3224,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3225,9'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl.c:3226,9'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3227,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'openssl.c:3230,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: 3359
      functionLinenumberEnd: 3384
      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:3361,23'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3366,28'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3366,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3367,9'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl.c:3368,9'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3369,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'openssl.c:3372,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    _libssh2_rsa_sha1_verify
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 497
      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:496,12'
          Dst:             _libssh2_rsa_sha2_verify
    - functionName:    _libssh2_rsa_sha2_verify
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 488
      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:429,15'
          Dst:             _libssh2_sha1
        - Src:             'openssl.c:433,15'
          Dst:             _libssh2_sha256
        - Src:             'openssl.c:437,15'
          Dst:             _libssh2_sha512
        - Src:             'openssl.c:480,11'
          Dst:             RSA_verify
    - functionName:    _libssh2_sha1
      functionSourceFile: '/src/libssh2/src/openssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3146
      functionLinenumberEnd: 3171
      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:3148,23'
          Dst:             EVP_MD_CTX_new
        - Src:             'openssl.c:3153,28'
          Dst:             EVP_get_digestbyname
        - Src:             'openssl.c:3153,8'
          Dst:             EVP_DigestInit
        - Src:             'openssl.c:3154,9'
          Dst:             EVP_DigestUpdate
        - Src:             'openssl.c:3155,9'
          Dst:             EVP_DigestFinal
        - Src:             'openssl.c:3156,9'
          Dst:             EVP_MD_CTX_free
        - Src:             'openssl.c:3159,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: 256
      functionLinenumberEnd: 262
      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:261,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: 183
      functionLinenumberEnd: 191
      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:187,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: 172
      functionLinenumberEnd: 176
      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:176,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: 156
      functionLinenumberEnd: 164
      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:164,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: 144
      functionLinenumberEnd: 148
      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:148,49'
          Dst:             EVP_sha512
        - Src:             'openssl.c:148,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: 133
      functionLinenumberEnd: 137
      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:137,49'
          Dst:             EVP_sha256
        - Src:             'openssl.c:137,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: 122
      functionLinenumberEnd: 126
      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:126,49'
          Dst:             EVP_sha1
        - Src:             'openssl.c:126,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: 956
      functionLinenumberEnd: 986
      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:971,14'
          Dst:             read_asn1_length
    - functionName:    read_asn1_length
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 895
      functionLinenumberEnd: 925
      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: 928
      functionLinenumberEnd: 952
      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:943,14'
          Dst:             read_asn1_length
    - functionName:    _libssh2_openssh_pem_parse_memory
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 891
      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:827,16'
          Dst:             _libssh2_error
        - Src:             'pem.c:835,20'
          Dst:             _libssh2_error
        - Src:             'pem.c:839,12'
          Dst:             readline_memory
        - Src:             'pem.c:842,13'
          Dst:             strcmp
        - Src:             'pem.c:851,23'
          Dst:             strlen
        - Src:             'pem.c:854,23'
          Dst:             _libssh2_error
        - Src:             'pem.c:867,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:872,12'
          Dst:             readline_memory
        - Src:             'pem.c:876,13'
          Dst:             strcmp
        - Src:             'pem.c:879,16'
          Dst:             _libssh2_error
        - Src:             'pem.c:882,11'
          Dst:             _libssh2_openssh_pem_parse_data
        - Src:             'pem.c:887,9'
          Dst:             explicit_bzero
    - functionName:    readline_memory
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 94
      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: 418
      functionLinenumberEnd: 742
      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:440,8'
          Dst:             _libssh2_base64_decode
        - Src:             'pem.c:452,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:456,8'
          Dst:             strncmp
        - Src:             'pem.c:458,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:465,8'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:467,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:472,8'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:474,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:479,8'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:480,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:489,24'
          Dst:             strlen
        - Src:             'pem.c:490,8'
          Dst:             strcmp
        - Src:             'pem.c:496,8'
          Dst:             strcmp
        - Src:             'pem.c:497,8'
          Dst:             strcmp
        - Src:             'pem.c:498,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:502,9'
          Dst:             strcmp
        - Src:             'pem.c:503,8'
          Dst:             strcmp
        - Src:             'pem.c:504,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:508,8'
          Dst:             _libssh2_get_u32
        - Src:             'pem.c:509,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:516,8'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:517,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:523,8'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:524,15'
          Dst:             _libssh2_error
        - Src:             'pem.c:533,22'
          Dst:             strcmp
        - Src:             'pem.c:536,23'
          Dst:             libssh2_crypt_methods
        - Src:             'pem.c:541,24'
          Dst:             strlen
        - Src:             'pem.c:540,17'
          Dst:             memcmp
        - Src:             'pem.c:549,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:564,15'
          Dst:             _libssh2_calloc
        - Src:             'pem.c:566,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:571,12'
          Dst:             strcmp
        - Src:             'pem.c:572,17'
          Dst:             _libssh2_get_string
        - Src:             'pem.c:573,17'
          Dst:             _libssh2_get_u32
        - Src:             'pem.c:574,23'
          Dst:             _libssh2_error
        - Src:             'pem.c:580,38'
          Dst:             strlen
        - Src:             'pem.c:579,16'
          Dst:             _libssh2_bcrypt_pbkdf
        - Src:             'pem.c:583,23'
          Dst:             _libssh2_error
        - Src:             'pem.c:589,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:597,20'
          Dst:             _libssh2_calloc
        - Src:             'pem.c:599,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:604,19'
          Dst:             _libssh2_calloc
        - Src:             'pem.c:606,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:663,16'
          Dst:             strcmp
        - Src:             'pem.c:664,16'
          Dst:             strcmp
        - Src:             'pem.c:665,21'
          Dst:             _libssh2_check_length
        - Src:             'pem.c:666,27'
          Dst:             _libssh2_error
        - Src:             'pem.c:673,27'
          Dst:             _libssh2_error
        - Src:             'pem.c:687,8'
          Dst:             _libssh2_get_u32
        - Src:             'pem.c:688,8'
          Dst:             _libssh2_get_u32
        - Src:             'pem.c:690,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:698,38'
          Dst:             _libssh2_string_buf_new
        - Src:             'pem.c:700,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:706,25'
          Dst:             _libssh2_calloc
        - Src:             'pem.c:708,19'
          Dst:             _libssh2_error
        - Src:             'pem.c:711,13'
          Dst:             _libssh2_string_buf_free
        - Src:             'pem.c:726,9'
          Dst:             explicit_bzero
        - Src:             'pem.c:730,9'
          Dst:             explicit_bzero
        - Src:             'pem.c:734,9'
          Dst:             explicit_bzero
        - Src:             'pem.c:738,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: 44
      functionLinenumberEnd: 69
      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:50,9'
          Dst:             fgets
        - Src:             'pem.c:55,15'
          Dst:             strlen
        - Src:             'pem.c:62,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: 748
      functionLinenumberEnd: 812
      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:759,12'
          Dst:             readline
        - Src:             'pem.c:762,13'
          Dst:             strcmp
        - Src:             'pem.c:764,8'
          Dst:             readline
        - Src:             'pem.c:773,23'
          Dst:             strlen
        - Src:             'pem.c:776,17'
          Dst:             _libssh2_error
        - Src:             'pem.c:788,12'
          Dst:             readline
        - Src:             'pem.c:792,13'
          Dst:             strcmp
        - Src:             'pem.c:798,11'
          Dst:             _libssh2_openssh_pem_parse_data
        - Src:             'pem.c:805,9'
          Dst:             explicit_bzero
    - functionName:    hex_decode
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 104
      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: 175
      functionLinenumberEnd: 406
      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:187,12'
          Dst:             readline_memory
        - Src:             'pem.c:193,13'
          Dst:             strcmp
        - Src:             'pem.c:195,8'
          Dst:             readline_memory
        - Src:             'pem.c:200,39'
          Dst:             strlen
        - Src:             'pem.c:200,8'
          Dst:             memcmp
        - Src:             'pem.c:204,12'
          Dst:             readline_memory
        - Src:             'pem.c:209,23'
          Dst:             libssh2_crypt_methods
        - Src:             'pem.c:214,23'
          Dst:             strlen
        - Src:             'pem.c:213,16'
          Dst:             memcmp
        - Src:             'pem.c:216,35'
          Dst:             strlen
        - Src:             'pem.c:223,13'
          Dst:             _libssh2_error
        - Src:             'pem.c:231,37'
          Dst:             hex_decode
        - Src:             'pem.c:232,22'
          Dst:             hex_decode
        - Src:             'pem.c:236,12'
          Dst:             readline_memory
        - Src:             'pem.c:249,23'
          Dst:             strlen
        - Src:             'pem.c:252,17'
          Dst:             _libssh2_error
        - Src:             'pem.c:264,12'
          Dst:             readline_memory
        - Src:             'pem.c:268,13'
          Dst:             strcmp
        - Src:             'pem.c:274,8'
          Dst:             _libssh2_base64_decode
        - Src:             'pem.c:392,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:402,9'
          Dst:             explicit_bzero
    - functionName:    _libssh2_pem_parse
      functionSourceFile: '/src/libssh2/src/pem.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          156
      EdgeCount:       29
      CyclomaticComplexity: 10
      functionsReached:
        - _libssh2_error
        - _libssh2_pem_parse_memory
        - fread
        - fseek
        - ftell
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'pem.c:118,8'
          Dst:             fseek
        - Src:             'pem.c:119,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:123,17'
          Dst:             ftell
        - Src:             'pem.c:125,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:130,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:135,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:139,8'
          Dst:             fseek
        - Src:             'pem.c:140,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:148,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:153,8'
          Dst:             fread
        - Src:             'pem.c:154,9'
          Dst:             _libssh2_error
        - Src:             'pem.c:158,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: 99
      functionLinenumberEnd: 190
      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:124,17'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:128,13'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:182,16'
          Dst:             _libssh2_error
        - Src:             'session.c:187,5'
          Dst:             _libssh2_debug_low
    - functionName:    banner_send
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 271
      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:209,26'
          Dst:             strlen
        - Src:             'session.c:226,13'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:242,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:247,9'
          Dst:             _libssh2_debug_low
    - functionName:    session_nonblock
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 313
      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:285,13'
          Dst:             fcntl
        - Src:             'session.c:287,16'
          Dst:             fcntl
        - Src:             'session.c:289,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: 319
      functionLinenumberEnd: 367
      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:322,17'
          Dst:             fcntl
    - functionName:    libssh2_session_banner_get
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1888
      functionLinenumberEnd: 1897
      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: 1532
      functionLinenumberEnd: 1533
      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:1533,12'
          Dst:             _libssh2_list_first
    - functionName:    poll_channel_write
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1523
      functionLinenumberEnd: 1524
      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: 1542
      functionLinenumberEnd: 1869
      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:1560,9'
          Branch Sides:    []
        - Branch String:   'session.c:1679,17'
          Branch Sides:    []
        - Branch String:   'session.c:1761,17'
          Branch Sides:    []
      Callsites:
        - Src:             'session.c:1585,17'
          Dst:             _libssh2_error
        - Src:             'session.c:1686,29'
          Dst:             libssh2_poll_channel_read
        - Src:             'session.c:1695,29'
          Dst:             libssh2_poll_channel_read
        - Src:             'session.c:1704,29'
          Dst:             poll_channel_write
        - Src:             'session.c:1725,29'
          Dst:             poll_listener_queued
        - Src:             'session.c:1752,13'
          Dst:             gettimeofday
        - Src:             'session.c:1753,22'
          Dst:             poll
        - Src:             'session.c:1754,13'
          Dst:             gettimeofday
        - Src:             'session.c:1773,31'
          Dst:             _libssh2_transport_read
        - Src:             'session.c:1787,31'
          Dst:             _libssh2_transport_read
    - functionName:    libssh2_poll_channel_read
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1484
      functionLinenumberEnd: 1516
      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:1492,14'
          Dst:             _libssh2_list_first
        - Src:             'session.c:1496,20'
          Dst:             _libssh2_error
        - Src:             'session.c:1500,33'
          Dst:             _libssh2_ntohu32
        - Src:             'session.c:1512,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: 1474
      functionLinenumberEnd: 1475
      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: 1462
      functionLinenumberEnd: 1467
      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: 1452
      functionLinenumberEnd: 1453
      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: 1443
      functionLinenumberEnd: 1445
      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: 1433
      functionLinenumberEnd: 1434
      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: 1424
      functionLinenumberEnd: 1426
      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:1425,11'
          Dst:             _libssh2_session_set_blocking
    - functionName:    _libssh2_session_set_blocking
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1409
      functionLinenumberEnd: 1415
      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:1411,5'
          Dst:             _libssh2_debug_low
    - functionName:    libssh2_session_flag
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1384
      functionLinenumberEnd: 1401
      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:1385,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    libssh2_session_set_last_error
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1372
      functionLinenumberEnd: 1373
      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:1373,12'
          Dst:             _libssh2_error_flags
    - functionName:    libssh2_session_last_errno
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1357
      functionLinenumberEnd: 1358
      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: 1306
      functionLinenumberEnd: 1350
      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:1331,18'
          Dst:             strlen
    - functionName:    libssh2_session_abstract
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1294
      functionLinenumberEnd: 1295
      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: 1231
      functionLinenumberEnd: 1287
      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:1235,5'
          Branch Sides:    []
      Callsites:
        - Src:             'session.c:1275,9'
          Dst:             _libssh2_error
        - Src:             'session.c:1281,9'
          Dst:             _libssh2_error
    - functionName:    session_disconnect
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1162
      functionLinenumberEnd: 1208
      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:1168,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:1172,25'
          Dst:             strlen
        - Src:             'session.c:1175,24'
          Dst:             strlen
        - Src:             'session.c:1178,20'
          Dst:             _libssh2_error
        - Src:             'session.c:1182,20'
          Dst:             _libssh2_error
        - Src:             'session.c:1191,9'
          Dst:             _libssh2_store_u32
        - Src:             'session.c:1192,9'
          Dst:             _libssh2_store_str
        - Src:             'session.c:1194,9'
          Dst:             _libssh2_store_u32
        - Src:             'session.c:1199,10'
          Dst:             _libssh2_transport_send
    - functionName:    libssh2_session_disconnect_ex
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1213
      functionLinenumberEnd: 1220
      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:1217,5'
          Dst:             time
        - Src:             'session.c:1217,5'
          Dst:             session_disconnect
        - Src:             'session.c:1217,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: 579
      functionLinenumberEnd: 711
      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:593,10'
          Dst:             libssh2_keepalive_send
        - Src:             'session.c:600,11'
          Dst:             libssh2_session_block_directions
        - Src:             'session.c:603,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:613,22'
          Dst:             time
        - Src:             'session.c:614,36'
          Dst:             difftime
        - Src:             'session.c:616,20'
          Dst:             _libssh2_error
        - Src:             'session.c:642,14'
          Dst:             poll
        - Src:             'session.c:690,16'
          Dst:             _libssh2_error
        - Src:             'session.c:698,15'
          Dst:             __errno_location
        - Src:             'session.c:706,16'
          Dst:             _libssh2_error
    - functionName:    libssh2_session_block_directions
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1879
      functionLinenumberEnd: 1880
      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: 886
      functionLinenumberEnd: 1143
      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:894,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:903,21'
          Dst:             _libssh2_list_first
        - Src:             'session.c:904,18'
          Dst:             _libssh2_channel_free
        - Src:             'session.c:914,20'
          Dst:             _libssh2_list_first
        - Src:             'session.c:915,18'
          Dst:             _libssh2_channel_forward_cancel
        - Src:             'session.c:1106,18'
          Dst:             _libssh2_list_first
        - Src:             'session.c:1108,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:1111,9'
          Dst:             _libssh2_list_remove
        - Src:             'session.c:1118,5'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:1123,14'
          Dst:             session_nonblock
        - Src:             'session.c:1125,13'
          Dst:             _libssh2_debug_low
    - functionName:    libssh2_session_free
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1151
      functionLinenumberEnd: 1156
      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:1154,5'
          Dst:             time
        - Src:             'session.c:1154,5'
          Dst:             session_free
        - Src:             'session.c:1154,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_session_startup
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 876
      functionLinenumberEnd: 877
      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:877,12'
          Dst:             libssh2_session_handshake
    - functionName:    libssh2_session_handshake
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 861
      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:859,5'
          Dst:             time
        - Src:             'session.c:859,5'
          Dst:             session_startup
        - Src:             'session.c:859,5'
          Dst:             _libssh2_wait_socket
    - functionName:    session_startup
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 714
      functionLinenumberEnd: 846
      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:718,9'
          Dst:             fprintf
        - Src:             'session.c:723,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:727,20'
          Dst:             _libssh2_error
        - Src:             'session.c:733,14'
          Dst:             get_socket_nonblocking
        - Src:             'session.c:737,18'
          Dst:             session_nonblock
        - Src:             'session.c:739,24'
          Dst:             _libssh2_error
        - Src:             'session.c:749,14'
          Dst:             banner_send
        - Src:             'session.c:753,20'
          Dst:             _libssh2_error
        - Src:             'session.c:761,18'
          Dst:             banner_receive
        - Src:             'session.c:765,24'
          Dst:             _libssh2_error
        - Src:             'session.c:766,17'
          Dst:             strncmp
        - Src:             'session.c:772,14'
          Dst:             _libssh2_kex_exchange
        - Src:             'session.c:776,20'
          Dst:             _libssh2_error
        - Src:             'session.c:783,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:788,9'
          Dst:             _libssh2_htonu32
        - Src:             'session.c:797,14'
          Dst:             _libssh2_transport_send
        - Src:             'session.c:802,20'
          Dst:             _libssh2_error
        - Src:             'session.c:811,14'
          Dst:             _libssh2_packet_require
        - Src:             'session.c:816,20'
          Dst:             _libssh2_error
        - Src:             'session.c:827,12'
          Dst:             _libssh2_match_string
        - Src:             'session.c:830,20'
          Dst:             _libssh2_error
    - functionName:    libssh2_session_callback_set
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 564
      functionLinenumberEnd: 566
      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:565,20'
          Dst:             libssh2_session_callback_set2
    - functionName:    libssh2_session_callback_set2
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 537
      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:482,5'
          Branch Sides:    []
      Callsites:
        - Src:             'session.c:533,5'
          Dst:             _libssh2_debug_low
    - functionName:    libssh2_default_realloc
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 89
      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:89,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: 80
      functionLinenumberEnd: 83
      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: 73
      functionLinenumberEnd: 75
      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: 427
      functionLinenumberEnd: 464
      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:460,9'
          Dst:             _libssh2_debug_low
        - Src:             'session.c:462,9'
          Dst:             _libssh2_init_if_needed
    - functionName:    libssh2_banner_set
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 411
      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:411,12'
          Dst:             libssh2_session_banner_set
    - functionName:    libssh2_session_banner_set
      functionSourceFile: '/src/libssh2/src/session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 402
      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:375,34'
          Dst:             strlen
        - Src:             'session.c:387,16'
          Dst:             _libssh2_error
        - Src:             'session.c:395,5'
          Dst:             _libssh2_debug_low
    - functionName:    send_existing
      functionSourceFile: '/src/libssh2/src/transport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 912
      functionLinenumberEnd: 975
      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:929,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:942,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:946,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:949,9'
          Dst:             debugdump
    - functionName:    debugdump
      functionSourceFile: '/src/libssh2/src/transport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 114
      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:71,12'
          Dst:             snprintf
        - Src:             'transport.c:77,9'
          Dst:             fprintf
        - Src:             'transport.c:81,16'
          Dst:             snprintf
        - Src:             'transport.c:103,30'
          Dst:             __ctype_b_loc
        - Src:             'transport.c:112,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: 996
      functionLinenumberEnd: 1311
      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:1030,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:1032,14'
          Dst:             _libssh2_kex_exchange
        - Src:             'transport.c:1037,5'
          Dst:             debugdump
        - Src:             'transport.c:1039,9'
          Dst:             debugdump
        - Src:             'transport.c:1043,10'
          Dst:             send_existing
        - Src:             'transport.c:1165,5'
          Dst:             _libssh2_htonu32
        - Src:             'transport.c:1170,8'
          Dst:             _libssh2_openssl_random
        - Src:             'transport.c:1171,16'
          Dst:             _libssh2_error
        - Src:             'transport.c:1189,24'
          Dst:             _libssh2_error
        - Src:             'transport.c:1233,17'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:1247,17'
          Dst:             __assert_fail
        - Src:             'transport.c:1269,24'
          Dst:             _libssh2_error
        - Src:             'transport.c:1283,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:1287,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:1290,9'
          Dst:             debugdump
    - functionName:    fullpacket
      functionSourceFile: '/src/libssh2/src/transport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 355
      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:226,16'
          Dst:             _libssh2_timingsafe_bcmp
        - Src:             'transport.c:229,17'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:245,22'
          Dst:             decrypt
        - Src:             'transport.c:273,26'
          Dst:             decrypt
        - Src:             'transport.c:329,9'
          Dst:             debugdump
        - Src:             'transport.c:336,14'
          Dst:             _libssh2_packet_add
    - functionName:    decrypt
      functionSourceFile: '/src/libssh2/src/transport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 172
      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:134,9'
          Dst:             __assert_fail
    - functionName:    _libssh2_transport_read
      functionSourceFile: '/src/libssh2/src/transport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 908
      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:411,9'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:413,14'
          Dst:             _libssh2_kex_exchange
        - Src:             'transport.c:466,9'
          Dst:             __assert_fail
        - Src:             'transport.c:499,17'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:505,13'
          Dst:             _libssh2_debug_low
        - Src:             'transport.c:510,13'
          Dst:             debugdump
        - Src:             'transport.c:571,17'
          Dst:             _libssh2_store_u32
        - Src:             'transport.c:574,17'
          Dst:             _libssh2_store_u32
        - Src:             'transport.c:579,26'
          Dst:             decrypt
        - Src:             'transport.c:601,36'
          Dst:             _libssh2_ntohu32
        - Src:             'transport.c:619,40'
          Dst:             _libssh2_ntohu32
        - Src:             'transport.c:648,36'
          Dst:             _libssh2_ntohu32
        - Src:             'transport.c:796,9'
          Dst:             __assert_fail
        - Src:             'transport.c:832,22'
          Dst:             decrypt
        - Src:             'transport.c:881,18'
          Dst:             fullpacket
    - functionName:    Blowfish_encipher
      functionSourceFile: '/src/libssh2/src/./blowfish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 114
      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: 545
      functionLinenumberEnd: 554
      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:551,9'
          Dst:             Blowfish_encipher
    - functionName:    Blowfish_stream2word
      functionSourceFile: '/src/libssh2/src/./blowfish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 451
      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: 456
      functionLinenumberEnd: 489
      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:467,16'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:475,9'
          Dst:             Blowfish_encipher
        - Src:             './blowfish.c:483,13'
          Dst:             Blowfish_encipher
    - functionName:    Blowfish_expandstate
      functionSourceFile: '/src/libssh2/src/./blowfish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 531
      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:505,16'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:513,18'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:514,18'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:515,9'
          Dst:             Blowfish_encipher
        - Src:             './blowfish.c:523,22'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:524,22'
          Dst:             Blowfish_stream2word
        - Src:             './blowfish.c:525,13'
          Dst:             Blowfish_encipher
    - functionName:    Blowfish_initstate
      functionSourceFile: '/src/libssh2/src/./blowfish.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 431
      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: 55
      functionLinenumberEnd: 94
      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:68,5'
          Dst:             Blowfish_initstate
        - Src:             'bcrypt_pbkdf.c:69,5'
          Dst:             Blowfish_expandstate
        - Src:             'bcrypt_pbkdf.c:71,9'
          Dst:             Blowfish_expand0state
        - Src:             'bcrypt_pbkdf.c:72,9'
          Dst:             Blowfish_expand0state
        - Src:             'bcrypt_pbkdf.c:78,20'
          Dst:             Blowfish_stream2word
        - Src:             'bcrypt_pbkdf.c:80,9'
          Dst:             blf_enc
        - Src:             'bcrypt_pbkdf.c:91,5'
          Dst:             explicit_bzero
        - Src:             'bcrypt_pbkdf.c:92,5'
          Dst:             explicit_bzero
        - Src:             'bcrypt_pbkdf.c:93,5'
          Dst:             explicit_bzero
    - functionName:    bcrypt_pbkdf
      functionSourceFile: '/src/libssh2/src/bcrypt_pbkdf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 187
      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:118,17'
          Dst:             calloc
        - Src:             'bcrypt_pbkdf.c:127,9'
          Dst:             _libssh2_sha512_init
        - Src:             'bcrypt_pbkdf.c:128,9'
          Dst:             _libssh2_sha512_update
        - Src:             'bcrypt_pbkdf.c:129,9'
          Dst:             _libssh2_sha512_final
        - Src:             'bcrypt_pbkdf.c:142,13'
          Dst:             _libssh2_sha512_init
        - Src:             'bcrypt_pbkdf.c:143,13'
          Dst:             _libssh2_sha512_update
        - Src:             'bcrypt_pbkdf.c:144,13'
          Dst:             _libssh2_sha512_final
        - Src:             'bcrypt_pbkdf.c:145,13'
          Dst:             explicit_bzero
        - Src:             'bcrypt_pbkdf.c:150,9'
          Dst:             bcrypt_hash
        - Src:             'bcrypt_pbkdf.c:155,17'
          Dst:             _libssh2_sha512_init
        - Src:             'bcrypt_pbkdf.c:156,17'
          Dst:             _libssh2_sha512_update
        - Src:             'bcrypt_pbkdf.c:157,17'
          Dst:             _libssh2_sha512_final
        - Src:             'bcrypt_pbkdf.c:158,17'
          Dst:             explicit_bzero
        - Src:             'bcrypt_pbkdf.c:163,13'
          Dst:             bcrypt_hash
        - Src:             'bcrypt_pbkdf.c:183,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: 198
      functionLinenumberEnd: 205
      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:199,12'
          Dst:             bcrypt_pbkdf
    - functionName:    channel_signal
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2946
      functionLinenumberEnd: 2995
      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:2961,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:2966,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:2967,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:2969,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:2977,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:2980,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:2986,20'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_signal_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3000
      functionLinenumberEnd: 3009
      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:3006,5'
          Dst:             time
        - Src:             'channel.c:3006,5'
          Dst:             channel_signal
        - Src:             'channel.c:3006,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_window_write_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2916
      functionLinenumberEnd: 2927
      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: 2841
      functionLinenumberEnd: 2849
      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:2847,5'
          Dst:             time
        - Src:             'channel.c:2847,5'
          Dst:             _libssh2_channel_free
        - Src:             'channel.c:2847,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_free
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2715
      functionLinenumberEnd: 2831
      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:2722,5'
          Dst:             __assert_fail
        - Src:             'channel.c:2725,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2735,14'
          Dst:             _libssh2_channel_close
        - Src:             'channel.c:2757,5'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:2758,12'
          Dst:             _libssh2_packet_ask
        - Src:             'channel.c:2760,12'
          Dst:             _libssh2_packet_ask
        - Src:             'channel.c:2771,5'
          Dst:             _libssh2_list_remove
    - functionName:    _libssh2_channel_close
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2557
      functionLinenumberEnd: 2634
      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:2569,14'
          Dst:             channel_send_eof
        - Src:             'channel.c:2574,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:2583,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2587,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:2593,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:2596,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:2600,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:2615,18'
          Dst:             _libssh2_transport_read
    - functionName:    channel_send_eof
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2415
      functionLinenumberEnd: 2437
      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:2420,5'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2424,5'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:2425,10'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:2427,9'
          Dst:             _libssh2_error
        - Src:             'channel.c:2431,16'
          Dst:             _libssh2_error
    - functionName:    channel_wait_closed
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2655
      functionLinenumberEnd: 2691
      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:2660,16'
          Dst:             _libssh2_error
        - Src:             'channel.c:2666,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2679,18'
          Dst:             _libssh2_transport_read
    - functionName:    libssh2_channel_wait_closed
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2698
      functionLinenumberEnd: 2706
      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:2704,5'
          Dst:             time
        - Src:             'channel.c:2704,5'
          Dst:             channel_wait_closed
        - Src:             'channel.c:2704,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_close
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2641
      functionLinenumberEnd: 2649
      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:2647,5'
          Dst:             time
        - Src:             'channel.c:2647,5'
          Dst:             _libssh2_channel_close
        - Src:             'channel.c:2647,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_wait_eof
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2498
      functionLinenumberEnd: 2539
      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:2503,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2521,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:2525,14'
          Dst:             _libssh2_transport_read
        - Src:             'channel.c:2531,20'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_wait_eof
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2546
      functionLinenumberEnd: 2554
      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:2552,5'
          Dst:             time
        - Src:             'channel.c:2552,5'
          Dst:             channel_wait_eof
        - Src:             'channel.c:2552,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_eof
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2459
      functionLinenumberEnd: 2492
      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:2468,14'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:2472,23'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:2476,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2484,35'
          Dst:             _libssh2_ntohu32
    - functionName:    libssh2_channel_send_eof
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2444
      functionLinenumberEnd: 2452
      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:2450,5'
          Dst:             time
        - Src:             'channel.c:2450,5'
          Dst:             channel_send_eof
        - Src:             'channel.c:2450,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_write_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2399
      functionLinenumberEnd: 2409
      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:2405,5'
          Dst:             time
        - Src:             'channel.c:2405,5'
          Dst:             _libssh2_channel_write
        - Src:             'channel.c:2405,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_write
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2263
      functionLinenumberEnd: 2391
      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:2282,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2288,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:2292,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:2300,18'
          Dst:             _libssh2_transport_read
        - Src:             'channel.c:2304,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:2324,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:2326,13'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:2331,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2339,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2348,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:2351,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2360,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:2364,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:2368,20'
          Dst:             _libssh2_error
    - functionName:    _libssh2_channel_packet_data_len
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2202
      functionLinenumberEnd: 2252
      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:2208,19'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:2214,23'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:2218,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2223,25'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:2236,32'
          Dst:             _libssh2_ntohu32
    - functionName:    libssh2_channel_window_read_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2863
      functionLinenumberEnd: 2904
      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:2875,13'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:2879,27'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:2883,17'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2893,18'
          Dst:             _libssh2_ntohu32
    - functionName:    libssh2_channel_read_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2175
      functionLinenumberEnd: 2194
      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:2182,19'
          Dst:             libssh2_channel_window_read_ex
        - Src:             'channel.c:2185,9'
          Dst:             time
        - Src:             'channel.c:2185,9'
          Dst:             _libssh2_channel_receive_window_adjust
        - Src:             'channel.c:2185,9'
          Dst:             _libssh2_wait_socket
        - Src:             'channel.c:2191,5'
          Dst:             time
        - Src:             'channel.c:2191,5'
          Dst:             _libssh2_channel_read
        - Src:             'channel.c:2191,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_receive_window_adjust
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1812
      functionLinenumberEnd: 1875
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          235
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - _libssh2_debug_low
        - _libssh2_error
        - _libssh2_htonu32
        - _libssh2_transport_send
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'channel.c:1821,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1839,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1840,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1841,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1849,10'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1852,9'
          Dst:             _libssh2_error
        - Src:             'channel.c:1858,16'
          Dst:             _libssh2_error
        - Src:             'channel.c:1864,20'
          Dst:             _libssh2_error
    - functionName:    _libssh2_channel_read
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2007
      functionLinenumberEnd: 2158
      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:2016,5'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2035,14'
          Dst:             _libssh2_channel_receive_window_adjust
        - Src:             'channel.c:2046,14'
          Dst:             _libssh2_transport_read
        - Src:             'channel.c:2050,16'
          Dst:             _libssh2_error
        - Src:             'channel.c:2052,19'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:2065,21'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:2072,17'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2079,34'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:2092,32'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:2112,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:2129,17'
          Dst:             _libssh2_list_remove
        - Src:             'channel.c:2151,16'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_handle_extended_data
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1990
      functionLinenumberEnd: 1992
      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:1991,11'
          Dst:             libssh2_channel_handle_extended_data2
    - functionName:    libssh2_channel_handle_extended_data2
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1967
      functionLinenumberEnd: 1976
      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:1973,5'
          Dst:             time
        - Src:             'channel.c:1973,5'
          Dst:             _libssh2_channel_extended_data
        - Src:             'channel.c:1973,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_extended_data
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1939
      functionLinenumberEnd: 1962
      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:1941,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1953,17'
          Dst:             _libssh2_channel_flush
    - functionName:    _libssh2_channel_flush
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1618
      functionLinenumberEnd: 1705
      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:1621,13'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:1627,35'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:1631,17'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1641,18'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:1649,40'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:1653,28'
          Dst:             _libssh2_error
        - Src:             'channel.c:1667,21'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1680,21'
          Dst:             _libssh2_list_remove
        - Src:             'channel.c:1695,13'
          Dst:             _libssh2_channel_receive_window_adjust
    - functionName:    libssh2_channel_receive_window_adjust2
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1925
      functionLinenumberEnd: 1936
      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:1931,5'
          Dst:             time
        - Src:             'channel.c:1931,5'
          Dst:             _libssh2_channel_receive_window_adjust
        - Src:             'channel.c:1931,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_receive_window_adjust
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1893
      functionLinenumberEnd: 1908
      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:1900,5'
          Dst:             time
        - Src:             'channel.c:1900,5'
          Dst:             _libssh2_channel_receive_window_adjust
        - Src:             'channel.c:1900,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_get_exit_signal
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1755
      functionLinenumberEnd: 1799
      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:1762,23'
          Dst:             strlen
        - Src:             'channel.c:1766,28'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_get_exit_status
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1732
      functionLinenumberEnd: 1737
      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: 1713
      functionLinenumberEnd: 1722
      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:1719,5'
          Dst:             time
        - Src:             'channel.c:1719,5'
          Dst:             _libssh2_channel_flush
        - Src:             'channel.c:1719,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_set_blocking
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1608
      functionLinenumberEnd: 1611
      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:1610,15'
          Dst:             _libssh2_session_set_blocking
    - functionName:    libssh2_channel_process_startup
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1589
      functionLinenumberEnd: 1600
      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:1595,5'
          Dst:             time
        - Src:             'channel.c:1595,5'
          Dst:             _libssh2_channel_process_startup
        - Src:             'channel.c:1595,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_process_startup
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1481
      functionLinenumberEnd: 1578
      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:1489,16'
          Dst:             _libssh2_error
        - Src:             'channel.c:1504,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1511,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1516,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1517,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1521,13'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1527,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1533,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:1540,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1546,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1555,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:1563,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1575,12'
          Dst:             _libssh2_error
    - functionName:    channel_x11_req
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1330
      functionLinenumberEnd: 1454
      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:1336,22'
          Dst:             strlen
        - Src:             'channel.c:1338,23'
          Dst:             strlen
        - Src:             'channel.c:1351,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1363,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1368,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1369,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1374,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1377,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1390,16'
          Dst:             _libssh2_openssl_random
        - Src:             'channel.c:1391,24'
          Dst:             _libssh2_error
        - Src:             'channel.c:1396,17'
          Dst:             snprintf
        - Src:             'channel.c:1401,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1406,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1409,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:1416,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1422,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1432,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:1440,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1452,12'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_x11_req_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1463
      functionLinenumberEnd: 1473
      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:1469,5'
          Dst:             time
        - Src:             'channel.c:1469,5'
          Dst:             channel_x11_req
        - Src:             'channel.c:1469,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_request_pty_size
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1252
      functionLinenumberEnd: 1303
      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:1265,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1272,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1273,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1276,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1277,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1278,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1279,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1285,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1288,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:1294,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1297,9'
          Dst:             _libssh2_htonu32
    - functionName:    libssh2_channel_request_pty_size_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1309
      functionLinenumberEnd: 1319
      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:1315,5'
          Dst:             time
        - Src:             'channel.c:1315,5'
          Dst:             channel_request_pty_size
        - Src:             'channel.c:1315,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_request_pty
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 982
      functionLinenumberEnd: 1071
      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:994,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1004,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1011,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1012,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1016,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1017,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1018,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1019,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1020,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1021,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1027,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1030,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:1035,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1038,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1047,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:1055,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1068,12'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_request_pty_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1237
      functionLinenumberEnd: 1248
      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:1243,5'
          Dst:             time
        - Src:             'channel.c:1243,5'
          Dst:             channel_request_pty
        - Src:             'channel.c:1243,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_request_auth_agent
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1079
      functionLinenumberEnd: 1174
      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:1091,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1104,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:1116,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:1117,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:1126,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:1131,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:1137,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1140,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:1150,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:1159,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:1172,12'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_request_auth_agent
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1226
      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:1197,9'
          Dst:             time
        - Src:             'channel.c:1197,9'
          Dst:             channel_request_auth_agent
        - Src:             'channel.c:1197,9'
          Dst:             _libssh2_wait_socket
        - Src:             'channel.c:1210,9'
          Dst:             time
        - Src:             'channel.c:1210,9'
          Dst:             channel_request_auth_agent
        - Src:             'channel.c:1210,9'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_setenv
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 953
      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:873,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:881,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:887,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:888,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:890,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:891,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:897,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:902,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:910,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:917,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:923,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:931,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:937,20'
          Dst:             _libssh2_error
        - Src:             'channel.c:951,12'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_setenv_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 962
      functionLinenumberEnd: 972
      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:968,5'
          Dst:             time
        - Src:             'channel.c:968,5'
          Dst:             channel_setenv
        - Src:             'channel.c:968,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_forward_accept
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 803
      functionLinenumberEnd: 832
      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:807,14'
          Dst:             _libssh2_transport_read
        - Src:             'channel.c:810,8'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:811,36'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:814,9'
          Dst:             _libssh2_list_remove
        - Src:             'channel.c:819,9'
          Dst:             _libssh2_list_add
        - Src:             'channel.c:825,9'
          Dst:             _libssh2_error
        - Src:             'channel.c:829,9'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_forward_accept
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 839
      functionLinenumberEnd: 848
      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:845,5'
          Dst:             time
        - Src:             'channel.c:845,5'
          Dst:             channel_forward_accept
        - Src:             'channel.c:845,5'
          Dst:             libssh2_session_last_errno
        - Src:             'channel.c:845,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_forward_cancel
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 788
      functionLinenumberEnd: 797
      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:794,5'
          Dst:             time
        - Src:             'channel.c:794,5'
          Dst:             _libssh2_channel_forward_cancel
        - Src:             'channel.c:794,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_forward_cancel
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 778
      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:705,23'
          Dst:             strlen
        - Src:             'channel.c:713,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:719,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:725,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:729,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:730,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:739,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:741,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:746,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:760,14'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:762,33'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:764,14'
          Dst:             _libssh2_channel_free
        - Src:             'channel.c:773,5'
          Dst:             _libssh2_list_remove
    - functionName:    channel_forward_listen
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 672
      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:539,47'
          Dst:             strlen
        - Src:             'channel.c:550,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:557,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:563,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:566,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:567,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:573,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:578,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:584,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:601,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:605,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:609,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:617,24'
          Dst:             _libssh2_calloc
        - Src:             'channel.c:619,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:625,21'
          Dst:             _libssh2_error
        - Src:             'channel.c:636,42'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:637,25'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:648,21'
          Dst:             _libssh2_list_add
        - Src:             'channel.c:662,13'
          Dst:             _libssh2_error
    - functionName:    libssh2_channel_forward_listen_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 682
      functionLinenumberEnd: 692
      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:688,5'
          Dst:             time
        - Src:             'channel.c:688,5'
          Dst:             channel_forward_listen
        - Src:             'channel.c:688,5'
          Dst:             libssh2_session_last_errno
        - Src:             'channel.c:688,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_direct_streamlocal
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 501
      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:457,36'
          Dst:             strlen
        - Src:             'channel.c:458,37'
          Dst:             strlen
        - Src:             'channel.c:462,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:469,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:474,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:475,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:476,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:480,9'
          Dst:             _libssh2_channel_open
        - Src:             'channel.c:488,8'
          Dst:             libssh2_session_last_errno
    - functionName:    _libssh2_channel_open
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 340
      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:279,13'
          Branch Sides:    []
      Callsites:
        - Src:             'channel.c:146,39'
          Dst:             _libssh2_channel_nextid
        - Src:             'channel.c:152,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:156,13'
          Dst:             _libssh2_calloc
        - Src:             'channel.c:158,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:166,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:182,9'
          Dst:             _libssh2_list_add
        - Src:             'channel.c:187,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:192,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:193,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:194,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:195,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:203,14'
          Dst:             _libssh2_transport_send
        - Src:             'channel.c:208,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:213,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:221,14'
          Dst:             _libssh2_packet_requirev
        - Src:             'channel.c:228,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:232,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:237,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:245,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:251,17'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:253,17'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:255,17'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:257,17'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:258,13'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:278,17'
          Dst:             _libssh2_ntohu32
        - Src:             'channel.c:281,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:286,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:290,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:294,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:298,17'
          Dst:             _libssh2_error
        - Src:             'channel.c:318,9'
          Dst:             _libssh2_list_remove
        - Src:             'channel.c:321,9'
          Dst:             _libssh2_htonu32
        - Src:             'channel.c:322,16'
          Dst:             _libssh2_packet_ask
        - Src:             'channel.c:326,16'
          Dst:             _libssh2_packet_ask
    - functionName:    _libssh2_channel_nextid
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 85
      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:66,15'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:72,19'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:83,5'
          Dst:             _libssh2_debug_low
    - functionName:    libssh2_channel_direct_streamlocal_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 520
      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:516,5'
          Dst:             time
        - Src:             'channel.c:516,5'
          Dst:             channel_direct_streamlocal
        - Src:             'channel.c:516,5'
          Dst:             libssh2_session_last_errno
        - Src:             'channel.c:516,5'
          Dst:             _libssh2_wait_socket
    - functionName:    channel_direct_tcpip
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 424
      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:379,36'
          Dst:             strlen
        - Src:             'channel.c:380,37'
          Dst:             strlen
        - Src:             'channel.c:385,9'
          Dst:             _libssh2_debug_low
        - Src:             'channel.c:392,13'
          Dst:             _libssh2_error
        - Src:             'channel.c:397,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:398,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:399,9'
          Dst:             _libssh2_store_str
        - Src:             'channel.c:400,9'
          Dst:             _libssh2_store_u32
        - Src:             'channel.c:403,15'
          Dst:             _libssh2_channel_open
        - Src:             'channel.c:411,8'
          Dst:             libssh2_session_last_errno
    - functionName:    libssh2_channel_direct_tcpip_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 443
      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:439,5'
          Dst:             time
        - Src:             'channel.c:439,5'
          Dst:             channel_direct_tcpip
        - Src:             'channel.c:439,5'
          Dst:             libssh2_session_last_errno
        - Src:             'channel.c:439,5'
          Dst:             _libssh2_wait_socket
    - functionName:    libssh2_channel_open_ex
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 366
      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:359,5'
          Dst:             time
        - Src:             'channel.c:359,5'
          Dst:             _libssh2_channel_open
        - Src:             'channel.c:359,5'
          Dst:             libssh2_session_last_errno
        - Src:             'channel.c:359,5'
          Dst:             _libssh2_wait_socket
    - functionName:    _libssh2_channel_locate
      functionSourceFile: '/src/libssh2/src/channel.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 118
      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:97,19'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:99,19'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:107,13'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:109,23'
          Dst:             _libssh2_list_first
        - Src:             'channel.c:111,23'
          Dst:             _libssh2_list_next
        - Src:             'channel.c:108,13'
          Dst:             _libssh2_list_next
    - functionName:    crypt_dtor
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 135
      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:131,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: 119
      functionLinenumberEnd: 124
      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:123,12'
          Dst:             _libssh2_cipher_crypt
    - functionName:    crypt_init
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 111
      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:103,8'
          Dst:             _libssh2_cipher_init
    - functionName:    crypt_dtor_chacha20_poly
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 475
      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: 419
      functionLinenumberEnd: 451
      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:434,19'
          Dst:             chachapoly_crypt
        - Src:             'crypt.c:440,19'
          Dst:             chachapoly_crypt
    - functionName:    crypt_get_length_chacha20_poly
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 465
      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:464,12'
          Dst:             chachapoly_get_length
    - functionName:    crypt_init_chacha20_poly
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 411
      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:402,8'
          Dst:             chachapoly_init
    - functionName:    libssh2_crypt_methods
      functionSourceFile: '/src/libssh2/src/crypt.c'
      linkageType:     InternalLinkage
      functionLinenumber: 533
      functionLinenumberEnd: 534
      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: 59
      functionLinenumberEnd: 99
      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:68,11'
          Dst:             time
        - Src:             'keepalive.c:80,14'
          Dst:             _libssh2_transport_send
        - Src:             'keepalive.c:84,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: 1428
      functionLinenumberEnd: 1546
      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:1433,24'
          Dst:             BN_new
        - Src:             'kex.c:1434,24'
          Dst:             BN_new
        - Src:             'kex.c:1437,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1438,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1439,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1441,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1448,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:1454,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1463,14'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:1470,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1486,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1497,12'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'kex.c:1498,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1503,12'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'kex.c:1504,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1509,12'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1510,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1515,21'
          Dst:             BN_num_bits
        - Src:             'kex.c:1518,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1523,12'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1524,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1529,15'
          Dst:             diffie_hellman_sha_algo
        - Src:             'kex.c:1543,5'
          Dst:             kex_diffie_hellman_cleanup
    - functionName:    diffie_hellman_sha_algo
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 639
      functionLinenumberEnd: 1005
      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_transport_send
        - diffie_hellman_state_cleanup
        - finish_kex
        - process_host_key
        - sha_algo_ctx_final
        - sha_algo_ctx_init
        - sha_algo_ctx_update
        - strlen
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:654,15'
          Dst:             _libssh2_error
        - Src:             'kex.c:664,31'
          Dst:             BN_CTX_new
        - Src:             'kex.c:665,9'
          Dst:             _libssh2_dh_init
        - Src:             'kex.c:666,29'
          Dst:             BN_new
        - Src:             'kex.c:667,29'
          Dst:             BN_new
        - Src:             'kex.c:669,29'
          Dst:             BN_new
        - Src:             'kex.c:677,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:678,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:683,14'
          Dst:             _libssh2_dh_key_pair
        - Src:             'kex.c:686,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:694,13'
          Dst:             BN_num_bits
        - Src:             'kex.c:695,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:703,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:708,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:710,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:711,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:713,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:720,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:722,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:728,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:734,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:740,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:754,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:758,17'
          Dst:             _libssh2_packet_burn
        - Src:             'kex.c:769,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:783,14'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:791,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:796,15'
          Dst:             process_host_key
        - Src:             'kex.c:801,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:803,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:808,12'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:811,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:816,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:818,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:824,9'
          Dst:             _libssh2_dh_secret
        - Src:             'kex.c:826,39'
          Dst:             BN_num_bits
        - Src:             'kex.c:827,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:834,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:838,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:840,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:841,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:843,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:850,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:852,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:858,13'
          Dst:             sha_algo_ctx_init
        - Src:             'kex.c:859,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:866,28'
          Dst:             strlen
        - Src:             'kex.c:865,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:867,20'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:871,37'
          Dst:             strlen
        - Src:             'kex.c:869,20'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:874,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:876,20'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:878,20'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:884,36'
          Dst:             strlen
        - Src:             'kex.c:883,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:885,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:889,36'
          Dst:             strlen
        - Src:             'kex.c:887,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:891,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:893,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:895,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:899,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:901,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:903,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:907,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:909,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:911,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:917,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:919,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:921,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:923,20'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:928,20'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:932,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:936,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:938,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:940,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:944,16'
          Dst:             sha_algo_ctx_update
        - Src:             'kex.c:949,13'
          Dst:             sha_algo_ctx_final
        - Src:             'kex.c:951,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:964,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:967,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:973,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:981,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:986,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:995,15'
          Dst:             finish_kex
        - Src:             'kex.c:1002,5'
          Dst:             diffie_hellman_state_cleanup
    - functionName:    kex_diffie_hellman_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 604
      functionLinenumberEnd: 621
      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:606,9'
          Dst:             BN_clear_free
        - Src:             'kex.c:608,9'
          Dst:             BN_clear_free
        - Src:             'kex.c:619,9'
          Dst:             diffie_hellman_state_cleanup
    - functionName:    diffie_hellman_state_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 573
      functionLinenumberEnd: 600
      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:574,5'
          Dst:             _libssh2_dh_dtor
        - Src:             'kex.c:575,5'
          Dst:             BN_clear_free
        - Src:             'kex.c:577,5'
          Dst:             BN_clear_free
        - Src:             'kex.c:579,5'
          Dst:             BN_clear_free
        - Src:             'kex.c:581,5'
          Dst:             BN_CTX_free
    - functionName:    process_host_key
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 355
      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:291,12'
          Dst:             _libssh2_sha1_init
        - Src:             'kex.c:292,12'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:294,12'
          Dst:             _libssh2_sha1_final
        - Src:             'kex.c:307,13'
          Dst:             snprintf
        - Src:             'kex.c:310,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:318,12'
          Dst:             _libssh2_sha256_init
        - Src:             'kex.c:319,12'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:321,12'
          Dst:             _libssh2_sha256_final
        - Src:             'kex.c:332,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:350,16'
          Dst:             _libssh2_error
    - functionName:    sha_algo_ctx_init
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 136
      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:119,16'
          Dst:             _libssh2_sha512_init
        - Src:             'kex.c:122,16'
          Dst:             _libssh2_sha384_init
        - Src:             'kex.c:125,16'
          Dst:             _libssh2_sha256_init
        - Src:             'kex.c:128,16'
          Dst:             _libssh2_sha1_init
        - Src:             'kex.c:132,9'
          Dst:             __assert_fail
    - functionName:    sha_algo_ctx_update
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 163
      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:143,16'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:147,16'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:151,16'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:155,16'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:159,9'
          Dst:             __assert_fail
    - functionName:    sha_algo_ctx_final
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 189
      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:169,16'
          Dst:             _libssh2_sha512_final
        - Src:             'kex.c:173,16'
          Dst:             _libssh2_sha384_final
        - Src:             'kex.c:177,16'
          Dst:             _libssh2_sha256_final
        - Src:             'kex.c:181,16'
          Dst:             _libssh2_sha1_final
        - Src:             'kex.c:185,9'
          Dst:             __assert_fail
    - functionName:    finish_kex
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 569
      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
        - explicit_bzero
        - sha_algo_value_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'kex.c:362,10'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:370,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:376,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:385,20'
          Dst:             _libssh2_error
        - Src:             'kex.c:391,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:404,9'
          Dst:             sha_algo_value_hash
        - Src:             'kex.c:412,9'
          Dst:             sha_algo_value_hash
        - Src:             'kex.c:430,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:435,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:439,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:451,9'
          Dst:             sha_algo_value_hash
        - Src:             'kex.c:458,9'
          Dst:             sha_algo_value_hash
        - Src:             'kex.c:475,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:480,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:484,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:495,9'
          Dst:             sha_algo_value_hash
        - Src:             'kex.c:506,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:510,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:521,9'
          Dst:             sha_algo_value_hash
        - Src:             'kex.c:532,13'
          Dst:             explicit_bzero
        - Src:             'kex.c:536,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:552,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:565,5'
          Dst:             _libssh2_debug_low
    - functionName:    sha_algo_value_hash
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 214
      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:198,9'
          Dst:             _libssh2_sha512_init
        - Src:             'kex.c:198,9'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:198,9'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:198,9'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:198,9'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:198,9'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:198,9'
          Dst:             _libssh2_sha512_final
        - Src:             'kex.c:201,9'
          Dst:             _libssh2_sha384_init
        - Src:             'kex.c:201,9'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:201,9'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:201,9'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:201,9'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:201,9'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:201,9'
          Dst:             _libssh2_sha384_final
        - Src:             'kex.c:204,9'
          Dst:             _libssh2_sha256_init
        - Src:             'kex.c:204,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:204,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:204,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:204,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:204,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:204,9'
          Dst:             _libssh2_sha256_final
        - Src:             'kex.c:207,9'
          Dst:             _libssh2_sha1_init
        - Src:             'kex.c:207,9'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:207,9'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:207,9'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:207,9'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:207,9'
          Dst:             _libssh2_sha1_update
        - Src:             'kex.c:207,9'
          Dst:             _libssh2_sha1_final
        - Src:             'kex.c:211,9'
          Dst:             __assert_fail
    - functionName:    kex_method_diffie_hellman_group1_sha1_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1012
      functionLinenumberEnd: 1071
      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:1037,24'
          Dst:             BN_new
        - Src:             'kex.c:1039,24'
          Dst:             BN_new
        - Src:             'kex.c:1042,29'
          Dst:             BN_set_word
        - Src:             'kex.c:1043,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1047,29'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1048,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1053,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1059,11'
          Dst:             diffie_hellman_sha_algo
        - Src:             'kex.c:1068,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: 1173
      functionLinenumberEnd: 1176
      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:1175,12'
          Dst:             kex_method_diffie_hellman_group14_key_exchange
        - Src:             'kex.c:1175,12'
          Dst:             diffie_hellman_sha_algo
    - functionName:    kex_method_diffie_hellman_group14_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1094
      functionLinenumberEnd: 1166
      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:1132,24'
          Dst:             BN_new
        - Src:             'kex.c:1134,24'
          Dst:             BN_new
        - Src:             'kex.c:1138,29'
          Dst:             BN_set_word
        - Src:             'kex.c:1139,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1144,17'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1145,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1150,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1163,5'
          Dst:             kex_diffie_hellman_cleanup
    - functionName:    kex_method_diffie_hellman_group14_sha256_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1186
      functionLinenumberEnd: 1189
      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:1188,12'
          Dst:             kex_method_diffie_hellman_group14_key_exchange
        - Src:             'kex.c:1188,12'
          Dst:             diffie_hellman_sha_algo
    - functionName:    kex_method_diffie_hellman_group18_sha512_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1291
      functionLinenumberEnd: 1420
      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:1384,24'
          Dst:             BN_new
        - Src:             'kex.c:1386,24'
          Dst:             BN_new
        - Src:             'kex.c:1390,29'
          Dst:             BN_set_word
        - Src:             'kex.c:1391,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1396,17'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1397,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1402,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1408,11'
          Dst:             diffie_hellman_sha_algo
        - Src:             'kex.c:1417,5'
          Dst:             kex_diffie_hellman_cleanup
    - functionName:    kex_method_diffie_hellman_group16_sha512_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1199
      functionLinenumberEnd: 1284
      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:1249,24'
          Dst:             BN_new
        - Src:             'kex.c:1251,24'
          Dst:             BN_new
        - Src:             'kex.c:1255,29'
          Dst:             BN_set_word
        - Src:             'kex.c:1256,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1260,29'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1261,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1266,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1272,11'
          Dst:             diffie_hellman_sha_algo
        - Src:             'kex.c:1281,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: 1554
      functionLinenumberEnd: 1673
      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:1559,24'
          Dst:             BN_new
        - Src:             'kex.c:1560,24'
          Dst:             BN_new
        - Src:             'kex.c:1563,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1564,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1565,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:1567,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:1574,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:1580,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1590,14'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:1597,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1613,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1624,12'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'kex.c:1625,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1630,12'
          Dst:             _libssh2_get_bignum_bytes
        - Src:             'kex.c:1631,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1636,12'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1637,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1642,21'
          Dst:             BN_num_bits
        - Src:             'kex.c:1645,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1650,12'
          Dst:             _libssh2_bn_from_bin
        - Src:             'kex.c:1651,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:1656,15'
          Dst:             diffie_hellman_sha_algo
        - Src:             'kex.c:1670,5'
          Dst:             kex_diffie_hellman_cleanup
    - functionName:    ecdh_exchange_state_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1965
      functionLinenumberEnd: 1975
      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:1966,5'
          Dst:             BN_clear_free
    - functionName:    ecdh_sha2_nistp
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2010
      functionLinenumberEnd: 2168
      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:2100,9'
          Branch Sides:    []
      Callsites:
        - Src:             'kex.c:2017,29'
          Dst:             BN_new
        - Src:             'kex.c:2031,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2036,15'
          Dst:             process_host_key
        - Src:             'kex.c:2042,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:2044,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2050,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:2052,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2058,14'
          Dst:             _libssh2_ecdh_gen_k
        - Src:             'kex.c:2061,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2066,39'
          Dst:             BN_num_bits
        - Src:             'kex.c:2067,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:2074,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2078,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2080,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:2081,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:2083,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:2090,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:2092,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_init
        - Src:             'kex.c:2102,13'
          Dst:             strlen
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             strlen
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             strlen
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             strlen
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2102,13'
          Dst:             _libssh2_sha256_final
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_init
        - Src:             'kex.c:2105,13'
          Dst:             strlen
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             strlen
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             strlen
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             strlen
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_update
        - Src:             'kex.c:2105,13'
          Dst:             _libssh2_sha384_final
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_init
        - Src:             'kex.c:2108,13'
          Dst:             strlen
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             strlen
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             strlen
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             strlen
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_update
        - Src:             'kex.c:2108,13'
          Dst:             _libssh2_sha512_final
        - Src:             'kex.c:2113,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2124,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:2129,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2154,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2158,15'
          Dst:             finish_kex
        - Src:             'kex.c:2165,5'
          Dst:             ecdh_exchange_state_cleanup
    - functionName:    kex_session_ecdh_curve_type
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1940
      functionLinenumberEnd: 1961
      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:1946,8'
          Dst:             strcmp
        - Src:             'kex.c:1948,13'
          Dst:             strcmp
        - Src:             'kex.c:1950,13'
          Dst:             strcmp
    - functionName:    kex_method_ecdh_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1979
      functionLinenumberEnd: 2000
      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:1986,9'
          Dst:             EC_KEY_free
        - Src:             'kex.c:1998,9'
          Dst:             ecdh_exchange_state_cleanup
    - functionName:    kex_method_ecdh_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2176
      functionLinenumberEnd: 2273
      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:2189,14'
          Dst:             kex_session_ecdh_curve_type
        - Src:             'kex.c:2192,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2196,14'
          Dst:             _libssh2_ecdsa_create_key
        - Src:             'kex.c:2201,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2207,9'
          Dst:             _libssh2_store_str
        - Src:             'kex.c:2211,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:2218,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:2224,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2232,14'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:2239,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2249,14'
          Dst:             kex_session_ecdh_curve_type
        - Src:             'kex.c:2252,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2256,15'
          Dst:             ecdh_sha2_nistp
        - Src:             'kex.c:2270,5'
          Dst:             kex_method_ecdh_cleanup
    - functionName:    curve25519_exchange_state_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2698
      functionLinenumberEnd: 2708
      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:2699,5'
          Dst:             BN_clear_free
    - functionName:    curve25519_sha256
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2748
      functionLinenumberEnd: 2881
      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:2756,29'
          Dst:             BN_new
        - Src:             'kex.c:2768,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2773,15'
          Dst:             process_host_key
        - Src:             'kex.c:2779,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:2781,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2787,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2794,12'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:2796,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2802,14'
          Dst:             _libssh2_curve25519_gen_k
        - Src:             'kex.c:2805,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2810,39'
          Dst:             BN_num_bits
        - Src:             'kex.c:2811,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:2818,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2822,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2824,12'
          Dst:             BN_num_bits
        - Src:             'kex.c:2825,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:2827,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:2834,16'
          Dst:             BN_bn2bin
        - Src:             'kex.c:2836,23'
          Dst:             _libssh2_error
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_init
        - Src:             'kex.c:2843,9'
          Dst:             strlen
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             strlen
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             strlen
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             strlen
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_update
        - Src:             'kex.c:2843,9'
          Dst:             _libssh2_sha256_final
        - Src:             'kex.c:2846,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2857,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:2862,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2871,15'
          Dst:             finish_kex
        - Src:             'kex.c:2878,5'
          Dst:             curve25519_exchange_state_cleanup
    - functionName:    kex_method_curve25519_cleanup
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2712
      functionLinenumberEnd: 2737
      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:2714,9'
          Dst:             explicit_bzero
        - Src:             'kex.c:2721,9'
          Dst:             explicit_bzero
        - Src:             'kex.c:2735,9'
          Dst:             curve25519_exchange_state_cleanup
    - functionName:    kex_method_curve25519_key_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2888
      functionLinenumberEnd: 2979
      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:2901,14'
          Dst:             strcmp
        - Src:             'kex.c:2903,18'
          Dst:             strcmp
        - Src:             'kex.c:2906,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2911,14'
          Dst:             _libssh2_curve25519_new
        - Src:             'kex.c:2916,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2922,9'
          Dst:             _libssh2_store_str
        - Src:             'kex.c:2926,9'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:2933,14'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:2939,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2947,14'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:2954,19'
          Dst:             _libssh2_error
        - Src:             'kex.c:2964,15'
          Dst:             curve25519_sha256
        - Src:             'kex.c:2976,5'
          Dst:             kex_method_curve25519_cleanup
    - functionName:    kex_agree_hostkey
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3780
      functionLinenumberEnd: 3846
      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:3781,46'
          Dst:             libssh2_hostkey_methods
        - Src:             'kex.c:3788,49'
          Dst:             strchr
        - Src:             'kex.c:3789,56'
          Dst:             strlen
        - Src:             'kex.c:3790,16'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:3792,52'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:3825,38'
          Dst:             strlen
        - Src:             'kex.c:3823,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: 3711
      functionLinenumberEnd: 3758
      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:3730,9'
          Dst:             strncmp
        - Src:             'kex.c:3738,33'
          Dst:             memchr
        - Src:             'kex.c:3750,13'
          Dst:             strncmp
    - functionName:    kex_get_method_by_name
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3763
      functionLinenumberEnd: 3772
      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:3765,13'
          Dst:             strlen
        - Src:             'kex.c:3766,13'
          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: 4049
      functionLinenumberEnd: 4093
      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:4050,40'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:4058,49'
          Dst:             strchr
        - Src:             'kex.c:4059,56'
          Dst:             strlen
        - Src:             'kex.c:4061,16'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:4063,49'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:4084,38'
          Dst:             strlen
        - Src:             'kex.c:4082,13'
          Dst:             _libssh2_kex_agree_instr
    - functionName:    kex_agree_mac
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3988
      functionLinenumberEnd: 4041
      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:3989,38'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:3994,16'
          Dst:             _libssh2_mac_override
        - Src:             'kex.c:4006,49'
          Dst:             strchr
        - Src:             'kex.c:4007,56'
          Dst:             strlen
        - Src:             'kex.c:4009,16'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:4011,48'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:4032,38'
          Dst:             strlen
        - Src:             'kex.c:4030,13'
          Dst:             _libssh2_kex_agree_instr
    - functionName:    kex_agree_crypt
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3935
      functionLinenumberEnd: 3980
      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:3936,42'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:3945,49'
          Dst:             strchr
        - Src:             'kex.c:3946,56'
          Dst:             strlen
        - Src:             'kex.c:3948,16'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:3950,50'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:3971,38'
          Dst:             strlen
        - Src:             'kex.c:3969,13'
          Dst:             _libssh2_kex_agree_instr
    - functionName:    kex_agree_kex_hostkey
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3854
      functionLinenumberEnd: 3926
      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:3860,8'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:3868,53'
          Dst:             strchr
        - Src:             'kex.c:3869,56'
          Dst:             strlen
        - Src:             'kex.c:3870,17'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:3873,48'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:3885,20'
          Dst:             kex_agree_hostkey
        - Src:             'kex.c:3906,38'
          Dst:             strlen
        - Src:             'kex.c:3904,13'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'kex.c:3911,16'
          Dst:             kex_agree_hostkey
    - functionName:    kex_method_list
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3501
      functionLinenumberEnd: 3518
      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:3502,5'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3510,35'
          Dst:             strlen
    - functionName:    kex_method_strlen
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3481
      functionLinenumberEnd: 3494
      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:3489,16'
          Dst:             strlen
    - functionName:    libssh2_session_supported_algs
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4505
      functionLinenumberEnd: 4610
      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:4516,5'
          Branch Sides:    []
      Callsites:
        - Src:             'kex.c:4513,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4522,48'
          Dst:             libssh2_hostkey_methods
        - Src:             'kex.c:4527,48'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:4532,48'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:4537,48'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:4546,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4552,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4576,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4582,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4605,16'
          Dst:             _libssh2_error
    - functionName:    libssh2_session_method_pref
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4357
      functionLinenumberEnd: 4495
      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:4363,5'
          Branch Sides:    []
      Callsites:
        - Src:             'kex.c:4360,24'
          Dst:             strlen
        - Src:             'kex.c:4371,48'
          Dst:             libssh2_hostkey_methods
        - Src:             'kex.c:4376,48'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:4381,48'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:4386,48'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:4391,48'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:4396,48'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:4401,48'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:4420,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4429,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4435,19'
          Dst:             strchr
        - Src:             'kex.c:4436,52'
          Dst:             strlen
        - Src:             'kex.c:4438,13'
          Dst:             kex_get_method_by_name
        - Src:             'kex.c:4441,35'
          Dst:             strlen
        - Src:             'kex.c:4463,16'
          Dst:             _libssh2_error
        - Src:             'kex.c:4472,37'
          Dst:             strlen
        - Src:             'kex.c:4473,47'
          Dst:             strlen
        - Src:             'kex.c:4476,20'
          Dst:             _libssh2_error
        - Src:             'kex.c:4482,57'
          Dst:             strlen
    - functionName:    kex_agree_methods
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4104
      functionLinenumberEnd: 4208
      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:4123,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4125,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4127,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4129,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4131,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4133,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4135,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4137,8'
          Dst:             _libssh2_get_string
        - Src:             'kex.c:4143,8'
          Dst:             _libssh2_check_length
        - Src:             'kex.c:4152,8'
          Dst:             kex_agree_kex_hostkey
        - Src:             'kex.c:4156,8'
          Dst:             kex_agree_crypt
        - Src:             'kex.c:4157,8'
          Dst:             kex_agree_crypt
        - Src:             'kex.c:4163,8'
          Dst:             kex_agree_mac
        - Src:             'kex.c:4164,8'
          Dst:             kex_agree_mac
        - Src:             'kex.c:4168,8'
          Dst:             kex_agree_comp
        - Src:             'kex.c:4169,8'
          Dst:             kex_agree_comp
        - Src:             'kex.c:4182,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4185,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4188,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4191,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4194,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4197,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4200,5'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:4203,5'
          Dst:             _libssh2_debug_low
    - functionName:    kexinit
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3542
      functionLinenumberEnd: 3701
      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:3556,19'
          Dst:             strlen
        - Src:             'kex.c:3556,19'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3557,23'
          Dst:             strlen
        - Src:             'kex.c:3557,23'
          Dst:             libssh2_hostkey_methods
        - Src:             'kex.c:3557,23'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3559,24'
          Dst:             strlen
        - Src:             'kex.c:3559,24'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:3559,24'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3561,24'
          Dst:             strlen
        - Src:             'kex.c:3561,24'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:3561,24'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3563,22'
          Dst:             strlen
        - Src:             'kex.c:3563,22'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:3563,22'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3565,22'
          Dst:             strlen
        - Src:             'kex.c:3565,22'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:3565,22'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3567,23'
          Dst:             strlen
        - Src:             'kex.c:3567,23'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:3567,23'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3569,23'
          Dst:             strlen
        - Src:             'kex.c:3569,23'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:3569,23'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3572,13'
          Dst:             strlen
        - Src:             'kex.c:3572,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3574,13'
          Dst:             strlen
        - Src:             'kex.c:3574,13'
          Dst:             kex_method_strlen
        - Src:             'kex.c:3582,20'
          Dst:             _libssh2_error
        - Src:             'kex.c:3588,12'
          Dst:             _libssh2_openssl_random
        - Src:             'kex.c:3590,20'
          Dst:             _libssh2_error
        - Src:             'kex.c:3599,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3599,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3600,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3600,9'
          Dst:             libssh2_hostkey_methods
        - Src:             'kex.c:3600,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3602,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3602,9'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:3602,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3604,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3604,9'
          Dst:             libssh2_crypt_methods
        - Src:             'kex.c:3604,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3606,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3606,9'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:3606,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3608,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3608,9'
          Dst:             _libssh2_mac_methods
        - Src:             'kex.c:3608,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3610,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3610,9'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:3610,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3612,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3612,9'
          Dst:             _libssh2_comp_methods
        - Src:             'kex.c:3612,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3614,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3614,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3616,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3616,9'
          Dst:             kex_method_list
        - Src:             'kex.c:3627,9'
          Dst:             _libssh2_htonu32
        - Src:             'kex.c:3633,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3636,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3639,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3642,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3645,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3648,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3651,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3654,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3657,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3660,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3663,13'
          Dst:             _libssh2_debug_low
        - Src:             'kex.c:3678,10'
          Dst:             _libssh2_transport_send
        - Src:             'kex.c:3687,16'
          Dst:             _libssh2_error
    - functionName:    _libssh2_kex_exchange
      functionSourceFile: '/src/libssh2/src/kex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4218
      functionLinenumberEnd: 4349
      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:4257,23'
          Dst:             kexinit
        - Src:             'kex.c:4277,17'
          Dst:             _libssh2_packet_require
        - Src:             'kex.c:4305,16'
          Dst:             kex_agree_methods
        - Src:             'kex.c:4325,22'
          Dst:             _libssh2_error
    - functionName:    mac_method_none_dtor
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 482
      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: 466
      functionLinenumberEnd: 475
      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: 452
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      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: 271
      functionLinenumberEnd: 280
      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:274,8'
          Dst:             mac_method_hmac_sha1_hash
    - functionName:    mac_method_hmac_sha1_hash
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 240
      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:226,5'
          Dst:             _libssh2_htonu32
        - Src:             'mac.c:228,9'
          Dst:             _libssh2_hmac_ctx_init
        - Src:             'mac.c:230,11'
          Dst:             _libssh2_hmac_sha1_init
        - Src:             'mac.c:231,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:232,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:234,15'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:236,15'
          Dst:             _libssh2_hmac_final
        - Src:             'mac.c:237,5'
          Dst:             _libssh2_hmac_cleanup
    - functionName:    mac_method_hmac_sha2_512_hash
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 133
      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:119,5'
          Dst:             _libssh2_htonu32
        - Src:             'mac.c:121,9'
          Dst:             _libssh2_hmac_ctx_init
        - Src:             'mac.c:123,11'
          Dst:             _libssh2_hmac_sha512_init
        - Src:             'mac.c:124,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:125,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:127,15'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:129,15'
          Dst:             _libssh2_hmac_final
        - Src:             'mac.c:130,5'
          Dst:             _libssh2_hmac_cleanup
    - functionName:    mac_method_common_dtor
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 100
      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: 167
      functionLinenumberEnd: 187
      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:173,5'
          Dst:             _libssh2_htonu32
        - Src:             'mac.c:175,9'
          Dst:             _libssh2_hmac_ctx_init
        - Src:             'mac.c:177,11'
          Dst:             _libssh2_hmac_sha256_init
        - Src:             'mac.c:178,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:179,11'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:181,15'
          Dst:             _libssh2_hmac_update
        - Src:             'mac.c:183,15'
          Dst:             _libssh2_hmac_final
        - Src:             'mac.c:184,5'
          Dst:             _libssh2_hmac_cleanup
    - functionName:    mac_method_common_init
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 87
      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: 503
      functionLinenumberEnd: 512
      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:505,9'
          Dst:             strcmp
        - Src:             'mac.c:506,9'
          Dst:             strcmp
    - functionName:    _libssh2_mac_methods
      functionSourceFile: '/src/libssh2/src/mac.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 446
      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: 984
      functionLinenumberEnd: 991
      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: 978
      functionLinenumberEnd: 980
      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: 936
      functionLinenumberEnd: 964
      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:941,8'
          Dst:             _libssh2_get_u32
        - Src:             'misc.c:944,9'
          Dst:             _libssh2_check_length
    - functionName:    _libssh2_get_u32
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 854
      functionLinenumberEnd: 862
      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:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:855,9'
          Dst:             _libssh2_check_length
        - Src:             'misc.c:859,12'
          Dst:             _libssh2_ntohu32
    - functionName:    _libssh2_check_length
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 971
      functionLinenumberEnd: 974
      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: 224
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    30
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_copy_string
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 907
      functionLinenumberEnd: 932
      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:911,8'
          Dst:             _libssh2_get_string
    - functionName:    _libssh2_get_string
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 888
      functionLinenumberEnd: 903
      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:    65
      BranchProfiles:  []
      Callsites:
        - Src:             'misc.c:890,16'
          Dst:             _libssh2_get_u32
        - Src:             'misc.c:893,9'
          Dst:             _libssh2_check_length
    - functionName:    _libssh2_match_string
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 876
      functionLinenumberEnd: 884
      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:879,8'
          Dst:             _libssh2_get_string
        - Src:             'misc.c:879,55'
          Dst:             strlen
        - Src:             'misc.c:880,36'
          Dst:             strlen
        - Src:             'misc.c:880,8'
          Dst:             strncmp
    - functionName:    _libssh2_get_u64
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 865
      functionLinenumberEnd: 873
      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:866,9'
          Dst:             _libssh2_check_length
        - Src:             'misc.c:870,12'
          Dst:             _libssh2_ntohu64
    - functionName:    _libssh2_ntohu64
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 242
      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: 843
      functionLinenumberEnd: 851
      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:844,9'
          Dst:             _libssh2_check_length
    - functionName:    _libssh2_get_byte
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 840
      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:833,9'
          Dst:             _libssh2_check_length
    - functionName:    _libssh2_string_buf_free
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 820
      functionLinenumberEnd: 829
      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: 809
      functionLinenumberEnd: 817
      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:812,11'
          Dst:             _libssh2_calloc
    - functionName:    _libssh2_calloc
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 781
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    _libssh2_xor_data
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 795
      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: 687
      functionLinenumberEnd: 697
      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: 681
      functionLinenumberEnd: 682
      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: 675
      functionLinenumberEnd: 676
      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: 669
      functionLinenumberEnd: 670
      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: 647
      functionLinenumberEnd: 665
      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: 640
      functionLinenumberEnd: 642
      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: 541
      functionLinenumberEnd: 544
      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: 533
      functionLinenumberEnd: 535
      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: 524
      functionLinenumberEnd: 526
      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: 455
      functionLinenumberEnd: 519
      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:493,9'
          Branch Sides:    []
      Callsites:
        - Src:             'misc.c:518,12'
          Dst:             strlen
    - functionName:    _libssh2_base64_decode
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 439
      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:411,9'
          Branch Sides:    []
      Callsites:
        - Src:             'misc.c:403,16'
          Dst:             _libssh2_error
        - Src:             'misc.c:434,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:    372
      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: 549
      functionLinenumberEnd: 616
      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:584,5'
          Dst:             gettimeofday
        - Src:             'misc.c:590,11'
          Dst:             snprintf
        - Src:             'misc.c:603,15'
          Dst:             vsnprintf
        - Src:             'misc.c:615,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: 374
      functionLinenumberEnd: 383
      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:378,10'
          Dst:             _libssh2_base64_decode
    - functionName:    _libssh2_store_bignum2_bytes
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 342
      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:329,5'
          Dst:             _libssh2_store_u32
        - Src:             'misc.c:341,5'
          Dst:             __assert_fail
    - functionName:    _libssh2_store_u32
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 257
      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:255,5'
          Dst:             _libssh2_htonu32
    - functionName:    _libssh2_htonu32
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 251
      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: 291
      functionLinenumberEnd: 312
      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:299,5'
          Dst:             _libssh2_store_u32
        - Src:             'misc.c:310,5'
          Dst:             __assert_fail
    - functionName:    _libssh2_store_str
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 286
      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:279,5'
          Dst:             _libssh2_store_u32
        - Src:             'misc.c:285,5'
          Dst:             __assert_fail
    - functionName:    _libssh2_store_u64
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 273
      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: 196
      functionLinenumberEnd: 221
      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:201,10'
          Dst:             send
        - Src:             'misc.c:207,15'
          Dst:             __errno_location
    - functionName:    _libssh2_recv
      functionSourceFile: '/src/libssh2/src/misc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 188
      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:163,10'
          Dst:             recv
        - Src:             'misc.c:169,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: 1650
      functionLinenumberEnd: 1694
      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:1651,8'
          Dst:             _libssh2_packet_askv
        - Src:             'packet.c:1659,24'
          Dst:             time
        - Src:             'packet.c:1663,19'
          Dst:             _libssh2_transport_read
        - Src:             'packet.c:1670,24'
          Dst:             time
        - Src:             'packet.c:1681,12'
          Dst:             strchr
        - Src:             'packet.c:1683,19'
          Dst:             _libssh2_packet_askv
    - functionName:    _libssh2_packet_askv
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1503
      functionLinenumberEnd: 1515
      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:1504,34'
          Dst:             strlen
        - Src:             'packet.c:1507,12'
          Dst:             _libssh2_packet_ask
    - functionName:    _libssh2_packet_ask
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1457
      functionLinenumberEnd: 1491
      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:1458,29'
          Dst:             _libssh2_list_first
        - Src:             'packet.c:1460,5'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1468,14'
          Dst:             memcmp
        - Src:             'packet.c:1473,13'
          Dst:             _libssh2_list_remove
        - Src:             'packet.c:1481,13'
          Dst:             libssh2_session_disconnect_ex
        - Src:             'packet.c:1484,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:1488,18'
          Dst:             _libssh2_list_next
    - functionName:    _libssh2_packet_burn
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1586
      functionLinenumberEnd: 1637
      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:1598,12'
          Dst:             _libssh2_packet_askv
        - Src:             'packet.c:1606,9'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1612,15'
          Dst:             _libssh2_transport_read
        - Src:             'packet.c:1626,12'
          Dst:             _libssh2_packet_ask
    - functionName:    _libssh2_packet_require
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1531
      functionLinenumberEnd: 1577
      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:1533,12'
          Dst:             _libssh2_packet_ask
        - Src:             'packet.c:1540,24'
          Dst:             time
        - Src:             'packet.c:1546,15'
          Dst:             _libssh2_transport_read
        - Src:             'packet.c:1557,19'
          Dst:             _libssh2_packet_ask
        - Src:             'packet.c:1564,63'
          Dst:             time
    - functionName:    packet_authagent_open
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 631
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          455
      EdgeCount:       52
      CyclomaticComplexity: 16
      functionsReached:
        - _libssh2_calloc
        - _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:493,16'
          Dst:             _libssh2_error
        - Src:             'packet.c:500,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:501,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:504,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:505,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:508,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:509,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:513,9'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:522,23'
          Dst:             _libssh2_calloc
        - Src:             'packet.c:526,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:538,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:553,33'
          Dst:             _libssh2_channel_nextid
        - Src:             'packet.c:559,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:570,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:571,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:572,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:573,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:579,18'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:586,24'
          Dst:             _libssh2_error
        - Src:             'packet.c:592,13'
          Dst:             _libssh2_list_add
        - Src:             'packet.c:615,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:616,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:617,5'
          Dst:             _libssh2_store_str
        - Src:             'packet.c:618,5'
          Dst:             _libssh2_htonu32
        - Src:             'packet.c:620,10'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:627,16'
          Dst:             _libssh2_error
    - functionName:    packet_x11_open
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          577
      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:298,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:306,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:307,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:312,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:313,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:318,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:319,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:325,12'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:326,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:335,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:343,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:344,13'
          Dst:             _libssh2_error
        - Src:             'packet.c:350,9'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:360,23'
          Dst:             _libssh2_calloc
        - Src:             'packet.c:362,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:374,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:389,33'
          Dst:             _libssh2_channel_nextid
        - Src:             'packet.c:395,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:405,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:406,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:407,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:408,13'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:414,18'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:423,24'
          Dst:             _libssh2_error
        - Src:             'packet.c:429,13'
          Dst:             _libssh2_list_add
        - Src:             'packet.c:453,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:454,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:455,5'
          Dst:             _libssh2_store_str
        - Src:             'packet.c:456,5'
          Dst:             _libssh2_htonu32
        - Src:             'packet.c:458,10'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:465,16'
          Dst:             _libssh2_error
    - functionName:    packet_queue_listener
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          635
      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:74,31'
          Dst:             _libssh2_list_first
        - Src:             'packet.c:87,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:93,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:94,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:97,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:98,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:101,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:102,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:105,12'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:106,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:111,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:112,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:115,12'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:116,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:121,12'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:122,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:126,9'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:139,17'
          Dst:             strlen
        - Src:             'packet.c:140,17'
          Dst:             memcmp
        - Src:             'packet.c:151,25'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:157,31'
          Dst:             _libssh2_calloc
        - Src:             'packet.c:159,25'
          Dst:             _libssh2_error
        - Src:             'packet.c:175,25'
          Dst:             _libssh2_error
        - Src:             'packet.c:194,41'
          Dst:             _libssh2_channel_nextid
        - Src:             'packet.c:201,21'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:212,21'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:213,21'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:214,21'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:216,21'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:222,26'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:228,32'
          Dst:             _libssh2_error
        - Src:             'packet.c:235,25'
          Dst:             _libssh2_list_add
        - Src:             'packet.c:245,21'
          Dst:             _libssh2_list_next
        - Src:             'packet.c:254,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:255,5'
          Dst:             _libssh2_store_u32
        - Src:             'packet.c:256,5'
          Dst:             _libssh2_store_str
        - Src:             'packet.c:257,5'
          Dst:             _libssh2_htonu32
        - Src:             'packet.c:259,10'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:266,16'
          Dst:             _libssh2_error
    - functionName:    _libssh2_packet_add
      functionSourceFile: '/src/libssh2/src/packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 644
      functionLinenumberEnd: 1447
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         301
      ICount:          2213
      EdgeCount:       397
      CyclomaticComplexity: 98
      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:658,5'
          Branch Sides:    []
        - Branch String:   'packet.c:758,9'
          Branch Sides:    []
      Callsites:
        - Src:             'packet.c:660,9'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:671,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:698,28'
          Dst:             _libssh2_error
        - Src:             'packet.c:714,24'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:717,32'
          Dst:             _libssh2_error
        - Src:             'packet.c:723,24'
          Dst:             _libssh2_kex_agree_instr
        - Src:             'packet.c:733,17'
          Dst:             libssh2_session_disconnect_ex
        - Src:             'packet.c:736,24'
          Dst:             _libssh2_error
        - Src:             'packet.c:747,13'
          Dst:             libssh2_session_disconnect_ex
        - Src:             'packet.c:750,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:776,17'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:777,17'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:778,17'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:786,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:795,20'
          Dst:             _libssh2_error
        - Src:             'packet.c:833,21'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:834,21'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:844,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:867,20'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:869,26'
          Dst:             _libssh2_error
        - Src:             'packet.c:882,24'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:884,24'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:888,25'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:896,24'
          Dst:             memcmp
        - Src:             'packet.c:912,34'
          Dst:             _libssh2_error
        - Src:             'packet.c:933,23'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:936,21'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:947,26'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:982,45'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:981,21'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:985,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:995,33'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:997,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1011,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1021,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1033,22'
          Dst:             _libssh2_channel_receive_window_adjust
        - Src:             'packet.c:1053,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:1063,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:1075,17'
          Dst:             _libssh2_error
        - Src:             'packet.c:1087,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1104,45'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1103,21'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:1109,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1138,20'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:1139,26'
          Dst:             _libssh2_error
        - Src:             'packet.c:1144,20'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:1145,26'
          Dst:             _libssh2_error
        - Src:             'packet.c:1152,20'
          Dst:             _libssh2_get_byte
        - Src:             'packet.c:1153,26'
          Dst:             _libssh2_error
        - Src:             'packet.c:1158,17'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1164,21'
          Dst:             memcmp
        - Src:             'packet.c:1168,36'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:1173,28'
          Dst:             _libssh2_get_u32
        - Src:             'packet.c:1174,34'
          Dst:             _libssh2_error
        - Src:             'packet.c:1180,25'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1189,26'
          Dst:             memcmp
        - Src:             'packet.c:1194,36'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:1201,28'
          Dst:             _libssh2_get_string
        - Src:             'packet.c:1202,34'
          Dst:             _libssh2_error
        - Src:             'packet.c:1207,34'
          Dst:             _libssh2_error
        - Src:             'packet.c:1219,33'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1227,38'
          Dst:             _libssh2_error
        - Src:             'packet.c:1244,26'
          Dst:             _libssh2_transport_send
        - Src:             'packet.c:1265,45'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1264,21'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:1272,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1297,22'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1298,22'
          Dst:             memcmp
        - Src:             'packet.c:1307,22'
          Dst:             packet_queue_listener
        - Src:             'packet.c:1311,41'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1312,22'
          Dst:             memcmp
        - Src:             'packet.c:1320,22'
          Dst:             packet_x11_open
        - Src:             'packet.c:1325,22'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1326,22'
          Dst:             memcmp
        - Src:             'packet.c:1335,22'
          Dst:             packet_authagent_open
        - Src:             'packet.c:1354,39'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1357,45'
          Dst:             _libssh2_ntohu32
        - Src:             'packet.c:1356,21'
          Dst:             _libssh2_channel_locate
        - Src:             'packet.c:1360,30'
          Dst:             _libssh2_error
        - Src:             'packet.c:1366,25'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1391,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1401,9'
          Dst:             _libssh2_list_add
        - Src:             'packet.c:1416,13'
          Dst:             _libssh2_debug_low
        - Src:             'packet.c:1440,14'
          Dst:             _libssh2_kex_exchange
    - functionName:    chachapoly_get_length
      functionSourceFile: '/src/libssh2/src/cipher-chachapoly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 120
      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:115,5'
          Dst:             _libssh2_store_u64
        - Src:             'cipher-chachapoly.c:116,5'
          Dst:             chacha_ivsetup
        - Src:             'cipher-chachapoly.c:117,5'
          Dst:             chacha_encrypt_bytes
        - Src:             'cipher-chachapoly.c:118,14'
          Dst:             _libssh2_ntohu32
    - functionName:    chachapoly_timingsafe_bcmp
      functionSourceFile: '/src/libssh2/src/cipher-chachapoly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 129
      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: 51
      functionLinenumberEnd: 101
      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:66,5'
          Dst:             _libssh2_store_u64
        - Src:             'cipher-chachapoly.c:67,5'
          Dst:             chacha_ivsetup
        - Src:             'cipher-chachapoly.c:68,5'
          Dst:             chacha_encrypt_bytes
        - Src:             'cipher-chachapoly.c:74,9'
          Dst:             poly1305_auth
        - Src:             'cipher-chachapoly.c:75,12'
          Dst:             chachapoly_timingsafe_bcmp
        - Src:             'cipher-chachapoly.c:84,9'
          Dst:             chacha_ivsetup
        - Src:             'cipher-chachapoly.c:85,9'
          Dst:             chacha_encrypt_bytes
        - Src:             'cipher-chachapoly.c:89,5'
          Dst:             chacha_ivsetup
        - Src:             'cipher-chachapoly.c:90,5'
          Dst:             chacha_encrypt_bytes
        - Src:             'cipher-chachapoly.c:94,9'
          Dst:             poly1305_auth
    - functionName:    chachapoly_init
      functionSourceFile: '/src/libssh2/src/cipher-chachapoly.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 37
      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:34,5'
          Dst:             chacha_keysetup
        - Src:             'cipher-chachapoly.c:35,5'
          Dst:             chacha_keysetup
    - functionName:    comp_method_none_decomp
      functionSourceFile: '/src/libssh2/src/comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 92
      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: 63
      functionLinenumberEnd: 71
      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: 127
      functionLinenumberEnd: 131
      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: 116
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    comp_method_zlib_dtor
      functionSourceFile: '/src/libssh2/src/comp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 329
      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:322,13'
          Dst:             deflateEnd
        - Src:             'comp.c:324,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: 216
      functionLinenumberEnd: 310
      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:230,16'
          Dst:             _libssh2_error
        - Src:             'comp.c:246,16'
          Dst:             _libssh2_error
        - Src:             'comp.c:255,18'
          Dst:             inflate
        - Src:             'comp.c:269,17'
          Dst:             _libssh2_debug_low
        - Src:             'comp.c:271,24'
          Dst:             _libssh2_error
        - Src:             'comp.c:280,13'
          Dst:             _libssh2_debug_low
        - Src:             'comp.c:282,20'
          Dst:             _libssh2_error
        - Src:             'comp.c:288,20'
          Dst:             _libssh2_error
        - Src:             'comp.c:298,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: 184
      functionLinenumberEnd: 205
      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:194,14'
          Dst:             deflate
        - Src:             'comp.c:201,5'
          Dst:             _libssh2_debug_low
        - Src:             'comp.c:204,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: 138
      functionLinenumberEnd: 170
      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:142,12'
          Dst:             _libssh2_calloc
        - Src:             'comp.c:144,16'
          Dst:             _libssh2_error
        - Src:             'comp.c:154,18'
          Dst:             deflateInit_
        - Src:             'comp.c:158,18'
          Dst:             inflateInit_
        - Src:             'comp.c:163,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: 371
      functionLinenumberEnd: 376
      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: 219
      functionLinenumberEnd: 252
      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:231,9'
          Dst:             _libssh2_sha1_init
        - Src:             'hostkey.c:235,13'
          Dst:             _libssh2_sha1_update
        - Src:             'hostkey.c:240,9'
          Dst:             _libssh2_sha1_final
        - Src:             'hostkey.c:244,11'
          Dst:             _libssh2_rsa_sha1_sign
    - functionName:    hostkey_method_ssh_rsa_sig_verify
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 208
      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:207,12'
          Dst:             _libssh2_rsa_sha1_verify
    - functionName:    hostkey_method_ssh_rsa_sha2_256_sig_verify
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 279
      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:277,12'
          Dst:             _libssh2_rsa_sha2_verify
    - functionName:    hostkey_method_ssh_rsa_sha2_512_sig_verify
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 347
      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:345,12'
          Dst:             _libssh2_rsa_sha2_verify
    - functionName:    hostkey_method_ssh_rsa_init
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 130
      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:70,9'
          Dst:             hostkey_method_ssh_rsa_dtor
        - Src:             'hostkey.c:75,9'
          Dst:             _libssh2_debug_low
        - Src:             'hostkey.c:84,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:90,25'
          Dst:             strncmp
        - Src:             'hostkey.c:96,26'
          Dst:             strncmp
        - Src:             'hostkey.c:99,31'
          Dst:             strncmp
        - Src:             'hostkey.c:105,9'
          Dst:             _libssh2_debug_low
        - Src:             'hostkey.c:110,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:113,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:116,9'
          Dst:             _libssh2_eob
        - Src:             'hostkey.c:119,8'
          Dst:             _libssh2_rsa_new
    - functionName:    hostkey_method_ssh_rsa_dtor
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 400
      functionLinenumberEnd: 408
      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:404,5'
          Dst:             RSA_free
    - functionName:    hostkey_method_ssh_ecdsa_sig_verify
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 875
      functionLinenumberEnd: 906
      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:893,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:896,8'
          Dst:             _libssh2_get_u32
        - Src:             'hostkey.c:899,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:902,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:905,12'
          Dst:             _libssh2_ecdsa_verify
    - functionName:    hostkey_method_ssh_ecdsa_init
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 808
      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:747,9'
          Dst:             hostkey_method_ssh_ecdsa_dtor
        - Src:             'hostkey.c:752,9'
          Dst:             _libssh2_debug_low
        - Src:             'hostkey.c:761,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:764,8'
          Dst:             strncmp
        - Src:             'hostkey.c:767,13'
          Dst:             strncmp
        - Src:             'hostkey.c:770,13'
          Dst:             strncmp
        - Src:             'hostkey.c:777,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:781,8'
          Dst:             strncmp
        - Src:             'hostkey.c:785,13'
          Dst:             strncmp
        - Src:             'hostkey.c:789,13'
          Dst:             strncmp
        - Src:             'hostkey.c:794,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:797,9'
          Dst:             _libssh2_eob
        - Src:             'hostkey.c:800,8'
          Dst:             _libssh2_ecdsa_curve_name_with_octal_new
    - functionName:    hostkey_method_ssh_ecdsa_dtor
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 972
      functionLinenumberEnd: 981
      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:977,9'
          Dst:             EC_KEY_free
    - functionName:    hostkey_method_ssh_rsa_sha2_256_signv
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 323
      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:302,9'
          Dst:             _libssh2_sha256_init
        - Src:             'hostkey.c:306,13'
          Dst:             _libssh2_sha256_update
        - Src:             'hostkey.c:311,9'
          Dst:             _libssh2_sha256_final
        - Src:             'hostkey.c:315,11'
          Dst:             _libssh2_rsa_sha2_sign
    - functionName:    hostkey_method_ssh_rsa_sha2_512_signv
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 358
      functionLinenumberEnd: 391
      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:370,9'
          Dst:             _libssh2_sha512_init
        - Src:             'hostkey.c:374,13'
          Dst:             _libssh2_sha512_update
        - Src:             'hostkey.c:379,9'
          Dst:             _libssh2_sha512_final
        - Src:             'hostkey.c:383,11'
          Dst:             _libssh2_rsa_sha2_sign
    - functionName:    hostkey_method_ssh_rsa_initPEMFromMemory
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 186
      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:172,9'
          Dst:             hostkey_method_ssh_rsa_dtor
        - Src:             'hostkey.c:176,11'
          Dst:             _libssh2_rsa_new_private_frommemory
    - functionName:    hostkey_method_ssh_rsa_initPEM
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 156
      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:144,9'
          Dst:             hostkey_method_ssh_rsa_dtor
        - Src:             'hostkey.c:148,11'
          Dst:             _libssh2_rsa_new_private
    - functionName:    hostkey_method_ssh_ecdsa_signv
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 946
      functionLinenumberEnd: 965
      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:948,31'
          Dst:             _libssh2_ecdsa_get_curve_type
        - Src:             'hostkey.c:952,9'
          Dst:             _libssh2_sha256_init
        - Src:             'hostkey.c:952,9'
          Dst:             _libssh2_sha256_update
        - Src:             'hostkey.c:952,9'
          Dst:             _libssh2_sha256_final
        - Src:             'hostkey.c:952,9'
          Dst:             _libssh2_ecdsa_sign
        - Src:             'hostkey.c:955,9'
          Dst:             _libssh2_sha384_init
        - Src:             'hostkey.c:955,9'
          Dst:             _libssh2_sha384_update
        - Src:             'hostkey.c:955,9'
          Dst:             _libssh2_sha384_final
        - Src:             'hostkey.c:955,9'
          Dst:             _libssh2_ecdsa_sign
        - Src:             'hostkey.c:958,9'
          Dst:             _libssh2_sha512_init
        - Src:             'hostkey.c:958,9'
          Dst:             _libssh2_sha512_update
        - Src:             'hostkey.c:958,9'
          Dst:             _libssh2_sha512_final
        - Src:             'hostkey.c:958,9'
          Dst:             _libssh2_ecdsa_sign
    - functionName:    hostkey_method_ssh_ecdsa_initPEMFromMemory
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 844
      functionLinenumberEnd: 865
      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:849,9'
          Dst:             hostkey_method_ssh_ecdsa_dtor
        - Src:             'hostkey.c:853,11'
          Dst:             _libssh2_ecdsa_new_private_frommemory
    - functionName:    hostkey_method_ssh_ecdsa_initPEM
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 817
      functionLinenumberEnd: 832
      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:822,9'
          Dst:             hostkey_method_ssh_ecdsa_dtor
        - Src:             'hostkey.c:826,11'
          Dst:             _libssh2_ecdsa_new_private
    - functionName:    hostkey_method_ssh_ed25519_dtor
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1226
      functionLinenumberEnd: 1235
      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:1231,9'
          Dst:             EVP_PKEY_free
    - functionName:    hostkey_method_ssh_ed25519_signv
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1209
      functionLinenumberEnd: 1219
      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:1216,12'
          Dst:             _libssh2_ed25519_sign
    - functionName:    hostkey_method_ssh_ed25519_sig_verify
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1182
      functionLinenumberEnd: 1198
      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:1197,12'
          Dst:             _libssh2_ed25519_verify
    - functionName:    hostkey_method_ssh_ed25519_initPEMFromMemory
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1151
      functionLinenumberEnd: 1172
      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:1156,9'
          Dst:             hostkey_method_ssh_ed25519_dtor
        - Src:             'hostkey.c:1160,11'
          Dst:             _libssh2_ed25519_new_private_frommemory
    - functionName:    hostkey_method_ssh_ed25519_initPEM
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1122
      functionLinenumberEnd: 1140
      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:1127,9'
          Dst:             hostkey_method_ssh_ed25519_dtor
        - Src:             'hostkey.c:1131,11'
          Dst:             _libssh2_ed25519_new_private
    - functionName:    hostkey_method_ssh_ed25519_init
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1074
      functionLinenumberEnd: 1112
      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:1081,9'
          Dst:             hostkey_method_ssh_ed25519_dtor
        - Src:             'hostkey.c:1086,9'
          Dst:             _libssh2_debug_low
        - Src:             'hostkey.c:1095,8'
          Dst:             _libssh2_match_string
        - Src:             'hostkey.c:1099,8'
          Dst:             _libssh2_get_string
        - Src:             'hostkey.c:1102,9'
          Dst:             _libssh2_eob
        - Src:             'hostkey.c:1105,8'
          Dst:             _libssh2_ed25519_new_public
    - functionName:    hostkey_type
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1338
      functionLinenumberEnd: 1393
      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:1366,9'
          Dst:             memcmp
        - Src:             'hostkey.c:1377,9'
          Dst:             memcmp
        - Src:             'hostkey.c:1383,9'
          Dst:             memcmp
        - Src:             'hostkey.c:1386,9'
          Dst:             memcmp
        - Src:             'hostkey.c:1389,9'
          Dst:             memcmp
    - functionName:    libssh2_session_hostkey
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1401
      functionLinenumberEnd: 1413
      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:1406,21'
          Dst:             hostkey_type
    - functionName:    libssh2_hostkey_hash
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1319
      functionLinenumberEnd: 1335
      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:1320,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    libssh2_hostkey_methods
      functionSourceFile: '/src/libssh2/src/hostkey.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1307
      functionLinenumberEnd: 1308
      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: 207
      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: 87
      functionLinenumberEnd: 218
      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: 78
      functionLinenumberEnd: 83
      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: 53
      functionLinenumberEnd: 75
      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:       []
...
