Archived Forum Post

Index of archived forum posts

Question:

Failed to convert data socket to TLS

Dec 10 '15 at 11:44

I'm attempting to upload to an FTP site with TLS enabled. I can connect fine but the PutFile fails. I have checked with our sysadmin on the settings and he confirmed I have them right but unfamiliar with the error.

FTP2.AuthTls = True
FTP2.Ssl = True
FTP2.Passive = True
FTP2.SslProtocol = "default"
Ftp2.Port = 21

My lastErrorText:

ChilkatLog:
  PutFile:
    DllDate: Dec 12 2012
    UnlockPrefix: RYANCOFTP
    Username: CARL-PC:carl
    Architecture: Little Endian; 32-bit
    Language: .NET 4.0
    VerboseLogging: 0
    LocalFilename: C:republiccheck21Answers ETC.D12072015.T1014210.X937
    RemoteFilename: AnswersETC.D12072015.T1014210.X937
    ProgressMonitoring:
      enabled: no
      heartbeatMs: 0
      sendBufferSize: 65536
    --ProgressMonitoring
    IdleTimeoutMs: 60000
    ReceiveTimeoutMs: 60000
    ConnectTimeoutSeconds: 60
    initialGreeting: 220 Microsoft FTP Service
    restartNext: 0
    ModeZ: 0
    BinaryMode: 1
    Sent PROT P command.
    ProtPResponse: 200 PROT command successful.
    PbszProt: Elapsed time: 47 millisec
    Passive transfer mode
    setupPassiveDataSocket3:
      hostAddr: 10.10.10.16
      DataConnect:
        hostname: 10.10.10.16
        port: 5054
        ConnectTimeoutMs_1: 60000
        calling ConnectSocket2
        IPV6 enabled connect with NO heartbeat.
        This is an IPV4 numeric address...
        AddrInfoList:
          AddrInfo:
            ai_flags: 4
            ai_family: 2
            ai_socktype: 1
            ai_protocol: 0
            ai_addrlen: 16
            ai_canonname: (NULL)
          --AddrInfo
        --AddrInfoList
        Connect using IPV4.
        ipAddress1: 10.10.10.16
        myIP_3: 10.10.1.114
        myPort_3: 63751
        connect successful (2)
        socketOptions:
          SO_SNDBUF: 8192
          SO_RCVBUF: 8192
          TCP_NODELAY: 8192
        --socketOptions
      --DataConnect
    --setupPassiveDataSocket3
    SetupPassiveDataSocket: Elapsed time: 124 millisec
    command: STOR 
    PutFilename: [AnswersETC.D12072015.T1014210.X937]
    DataConnectionReady: Elapsed time: 0 millisec
    ssl_protocol_5: SSL 3.0
    ConvertToTls: Elapsed time: 47 millisec
    Failed to convert data socket to TLS
    TotalTime: Elapsed time: 218 millisec
    Failed.
  --PutFile
--ChilkatLog


Answer

This uses an old version of Chilkat. Always test first with the latest version to see whether the problem remains, or if it manifests differently. Also, notice that the protocol here is "SSL 3.0". The latest version of Chilkat will most certainly use "TLS 1.2" by default. This is likely the solution.


Answer

I had tried "default", "TLS 1.2 or above" and actually all of the choices listed in the docs and they all gave the same result. I'll get latest and let you know.

Thanks, Catl


Answer

I got latest and it's still giving the same error...

ChilkatLog:
  PutFile:
    DllDate: Oct 29 2015
    ChilkatVersion: 9.5.0.54
    UnlockPrefix: RYANCOFTP
    Username: CARL-PC:carl
    Architecture: Little Endian; 32-bit
    Language: .NET 4.0
    VerboseLogging: 0
    LocalFilename: C:republiccheck21Answers ETC.D12102015.T1042090.X937
    RemoteFilename: AnswersETC.D12102015.T1042090.X937
    ProgressMonitoring:
      enabled: yes
      heartbeatMs: 0
      sendBufferSize: 65536
    --ProgressMonitoring
    IdleTimeoutMs: 60000
    ReceiveTimeoutMs: 60000
    ConnectTimeoutSeconds: 30
    uploadFromLocalFile:
      localFileSize: 15482
      uploadFromDataSource:
        initialGreeting: 220 Microsoft FTP Service
        restartNext: 0
        modeZ: 0
        binaryMode: 1
        pbsz_protp:
          simpleCommand:
            sendCommand:
              sendingCommand: PBSZ 0
            --sendCommand
            readCommandResponse:
              replyLineQP: 200 PBSZ command successful.
            --readCommandResponse
          --simpleCommand
          simpleCommand:
            sendCommand:
              sendingCommand: PROT P
            --sendCommand
            readCommandResponse:
              replyLineQP: 200 PROT command successful.
            --readCommandResponse
          --simpleCommand
        --pbsz_protp
        setupDataConnection:
          passive transfer mode
          setupPassiveDataSocket:
            sendCommand:
              sendingCommand: PASV
            --sendCommand
            readCommandResponse:
              replyLineQP: 227 Entering Passive Mode (10,10,10,16,19,215).
            --readCommandResponse
            dataConnect:
              hostname: 10.10.10.16
              port: 5079
              socketOptions:
                SO_SNDBUF: 262144
                SO_RCVBUF: 4194304
                TCP_NODELAY: 0
                SO_KEEPALIVE: 0
              --socketOptions
              dataConnectSuccess: 1
            --dataConnect
          --setupPassiveDataSocket
        --setupDataConnection
        sendUploadCommand:
          sendCommand:
            sendingCommand: STOR AnswersETC.D12102015.T1042090.X937
          --sendCommand
        --sendUploadCommand
        Reading intermediate response for upload...
        readCommandResponse:
          replyLineQP: 150 Opening BINARY mode data connection.
        --readCommandResponse
        convertDataConnToSsl:
          ConvertToTls: Elapsed time: 16 millisec
          Failed to convert data connection to TLS
        --convertDataConnToSsl
      --uploadFromDataSource
      Failed.
    --uploadFromLocalFile
    TotalTime: Elapsed time: 140 millisec
    Failed.
  --PutFile
--ChilkatLog