Unicode C
Unicode C
Require SSL Server Certificate Domain Match
See more HTTP Examples
Demonstrates how to require that the SSL server certificate's domain matches the intended domain.Chilkat Unicode C Downloads
#include <C_CkHttpW.h>
void ChilkatSample(void)
{
BOOL success;
HCkHttpW http;
const wchar_t *html;
success = FALSE;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http = CkHttpW_Create();
// Call SetSslCertRequirement to require that the SSL server certificate's domain
// matches only the domain we are intending to communicate with.
// In this example we will test with the URL https://wrong.host.badssl.com/
// which intentionally has an SSL certificate that does not match "wrong.host.badssl.com"
CkHttpW_SetSslCertRequirement(http,L"SAN",L"wrong.host.badssl.com");
// Also validate the server cert..
CkHttpW_putRequireSslCertVerify(http,TRUE);
// Try sending the request. It should fail within the SSL/TLS handshake
// because the server's certificate does not match the domain "wrong.host.badssl.com"
html = CkHttpW_quickGetStr(http,L"https://wrong.host.badssl.com/");
if (CkHttpW_getLastMethodSuccess(http) == FALSE) {
wprintf(L"%s\n",CkHttpW_lastErrorText(http));
}
else {
wprintf(L"Unexpected success.\n");
}
CkHttpW_Dispose(http);
}