Sample code for 30+ languages & platforms
DataFlex

SSL Client Example

See more Socket/SSL/TLS Examples

Demonstrates how to connect to an SSL server, send a simple message, receive a simple response, and disconnect.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoSocket
    Boolean iSsl
    Integer iMaxWaitMillisec
    String sSslServerHost
    Integer iSslServerPort
    String sReceivedMsg
    String sTemp1
    Boolean bTemp1

    Move False To iSuccess

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    Get Create (RefClass(cComChilkatSocket)) To hoSocket
    If (Not(IsComObjectCreated(hoSocket))) Begin
        Send CreateComObject of hoSocket
    End

    Move True To iSsl
    Move 20000 To iMaxWaitMillisec

    // The SSL server hostname may be an IP address, a domain name,
    // or "localhost".  You'll need to change this:

    Move "123.123.88.88" To sSslServerHost
    Move 8123 To iSslServerPort

    // Connect to the SSL server:
    Get ComConnect Of hoSocket sSslServerHost iSslServerPort iSsl iMaxWaitMillisec To iSuccess
    If (iSuccess <> True) Begin
        Get ComLastErrorText Of hoSocket To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    // Set maximum timeouts for reading an writing (in millisec)
    Set ComMaxReadIdleMs Of hoSocket To 20000
    Set ComMaxSendIdleMs Of hoSocket To 20000

    // Send a "Hello Server! -EOM-" message:
    Get ComSendString Of hoSocket "Hello Server! -EOM-" To iSuccess
    If (iSuccess <> True) Begin
        Get ComLastErrorText Of hoSocket To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    // The server (in this example) is going to send a "Hello Client! -EOM-" 
    // message.  Read it:
    Get ComReceiveUntilMatch Of hoSocket "-EOM-" To sReceivedMsg
    Get ComLastMethodSuccess Of hoSocket To bTemp1
    If (bTemp1 <> True) Begin
        Get ComLastErrorText Of hoSocket To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    // Close the connection with the server
    // Wait a max of 20 seconds (20000 millsec)
    Get ComClose Of hoSocket 20000 To iSuccess

    Showln sReceivedMsg


End_Procedure