Sample code for 30+ languages & platforms
AutoIt

Configure a Socket for Server-Side TLS

See more Socket/SSL/TLS Examples

Demonstrates Socket.InitSslServer, which configures the object for server-side TLS using a server certificate that has access to its private key, then listens for and accepts a TLS connection.

The file path is relative to the application's current working directory. An absolute path may also be used. Supply the path appropriate to your own environment.

Background. A TLS listener presents the configured server certificate during the handshake. When client certificates are required, acceptable CA distinguished names are added before InitSslServer.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

$oSocket = ObjCreate("Chilkat.Socket")

;  The file path is relative to the application's current working directory.  An absolute path
;  may also be used.  Supply the path appropriate to your own environment.
;  The PFX password should come from a secure source rather than being hard-coded.
Local $sPfxPassword = "myPfxPassword"
$oCert = ObjCreate("Chilkat.Cert")
$bSuccess = $oCert.LoadPfxFile("qa_data/server.pfx",$sPfxPassword)
If ($bSuccess = False) Then
    ConsoleWrite($oCert.LastErrorText & @CRLF)
    Exit
EndIf

;  Configure this object for server-side TLS using the certificate.  The certificate must have
;  access to its corresponding private key.
$bSuccess = $oSocket.InitSslServer($oCert)
If ($bSuccess = False) Then
    ConsoleWrite($oSocket.LastErrorText & @CRLF)
    Exit
EndIf

;  Listen for connections.  Accepted connections will use TLS.
$bSuccess = $oSocket.BindAndListen(5000,25)
If ($bSuccess = False) Then
    ConsoleWrite($oSocket.LastErrorText & @CRLF)
    Exit
EndIf

$oConnectedSock = ObjCreate("Chilkat.Socket")
$bSuccess = $oSocket.AcceptNext(20000,$oConnectedSock)
If ($bSuccess = False) Then
    ConsoleWrite($oSocket.LastErrorText & @CRLF)
    Exit
EndIf

ConsoleWrite("Accepted a TLS client connection." & @CRLF)