Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
Verify SSL Server CertificateDemonstrates how to connect to an SSL server and verify its SSL certificate. Downloads: MS Windows Visual C/C++ Libraries Linux/CentOS C/C++ Libraries MAC OS X C/C++ Libraries Solaris C/C++ Libraries C++ Builder Libraries #include <C_CkSocket.h> #include <C_CkCert.h> void ChilkatSample(void) { HCkSocket socket; BOOL success; BOOL ssl; long maxWaitMillisec; const char * sslServerHost; long sslServerPort; HCkCert cert; BOOL bExpired; BOOL bRevoked; BOOL bSignatureVerified; BOOL bTrustedRoot; socket = CkSocket_Create(); success = CkSocket_UnlockComponent(socket,"Anything for 30-day trial"); if (success != TRUE) { printf("Failed to unlock component\n"); return; } ssl = TRUE; maxWaitMillisec = 20000; // The SSL server hostname may be an IP address, a domain name, // or "localhost". sslServerHost = "www.paypal.com"; sslServerPort = 443; // Connect to the SSL server: success = CkSocket_Connect(socket,sslServerHost,sslServerPort,ssl,maxWaitMillisec); if (success != TRUE) { printf("%s\n",CkSocket_lastErrorText(socket)); return; } cert = CkSocket_GetSslServerCert(socket); if (!(cert == 0 )) { printf("Server Certificate:\n"); printf("Distinguished Name: %s\n",CkCert_subjectDN(cert)); printf("Common Name: %s\n",CkCert_subjectCN(cert)); printf("Issuer Distinguished Name: %s\n" ,CkCert_issuerDN(cert)); printf("Issuer Common Name: %s\n",CkCert_issuerCN(cert)); bExpired = CkCert_IsExpired(cert); bRevoked = CkCert_getRevoked(cert); bSignatureVerified = CkCert_getSignatureVerified(cert); bTrustedRoot = CkCert_getTrustedRoot(cert); printf("Expired: %d\n",bExpired); printf("Revoked: %d\n",bRevoked); printf("Signature Verified: %d\n",bSignatureVerified); printf("Trusted Root: %d\n",bTrustedRoot); CkCert_Dispose(cert); } // Close the connection with the server // Wait a max of 20 seconds (20000 millsec) CkSocket_Close(socket,20000); CkSocket_Dispose(socket); } |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.