Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
|
SSL Server ExampleDemonstrates how to create an SSL socket for accepting connections. This example is *very* simple in that it will create an SSL socket for accepting a single connection. It will read a message from the client, send a reply, and exit.
use chilkat; $listenSslSocket = new chilkat::CkSocket(); # Any string automatically begins a fully-functional 30-day trial. $success = $listenSslSocket->UnlockComponent("Anything for 30-day trial"); if ($success != 1) { print "Failed to unlock component" . "\n"; exit; } # An SSL server needs a digital certificate. This example loads it from a PFX file. # Create an instance of a certificate store object, load a PFX file, # locate the certificate we need, and use it. # (a PFX file may contain more than one certificate.) $certStore = new chilkat::CkCertStore(); # The 1st argument is the filename, the 2nd arg is the # PFX file's password: $success = $certStore->LoadPfxFile("chilkat.pfx","test"); if ($success != 1) { print $certStore->lastErrorText() . "\n"; exit; } # Find the certificate to be used for SSL: $cert = $certStore->FindCertBySubject("Chilkat Software, Inc."); if ($cert eq null ) { print $certStore->lastErrorText() . "\n"; exit; } # Use the certificate: $success = $listenSslSocket->InitSslServer($cert); if ($success != 1) { print $listenSslSocket->lastErrorText() . "\n"; exit; } # Bind and listen on a port: $myPort = 8123; # Allow for a max of 5 queued connect requests. $backLog = 5; $success = $listenSslSocket->BindAndListen($myPort,$backLog); if ($success != 1) { print $listenSslSocket->lastErrorText() . "\n"; exit; } # Accept a single client connection: $maxWaitMillisec = 20000; $clientSock = $listenSslSocket->AcceptNextConnection($maxWaitMillisec); if ($clientSock eq null ) { print $listenSslSocket->lastErrorText() . "\n"; exit; } # The client (in this example) is going to send a "Hello Server! -EOM-" # message. Read it: $receivedMsg = $clientSock->receiveUntilMatch("-EOM-"); if ($receivedMsg eq null ) { print $clientSock->lastErrorText() . "\n"; exit; } print $receivedMsg . "\n"; # Send a "Hello Client! -EOM-" message: $success = $clientSock->SendString("Hello Client! -EOM-"); if ($success != 1) { print $clientSock->lastErrorText() . "\n"; exit; } # Close the connection with the client # Wait a max of 20 seconds (20000 millsec) $clientSock->Close(20000); |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2007 Chilkat Software, Inc. All Rights Reserved.