(Unicode C++) Find Certificate by Email Address
Locate the certificate containing the specified email address in either the RFC822 Name or the Subject.
Note: This example requires Chilkat v10.1.2 or later.
#include <CkCertStoreW.h>
#include <CkJsonObjectW.h>
#include <CkCertW.h>
void ChilkatSample(void)
{
CkCertStoreW certStore;
// This opens the Current User certificate store on Windows,
// On MacOS and iOS it opens the default Keychain.
bool readOnly = true;
bool success = certStore.OpenCurrentUserStore(readOnly);
if (success == false) {
wprintf(L"%s\n",certStore.lastErrorText());
return;
}
// Locate the certificate containing the specified email address in either the RFC822 Name or the Subject.
CkJsonObjectW json;
const wchar_t *email_address = L"harold@example.com";
json.UpdateString(L"email",email_address);
CkCertW cert;
success = certStore.FindCert(json,cert);
if (success == true) {
// Show the full distinguished name of the certificate.
wprintf(L"Found: %s\n",cert.subjectDN());
}
else {
wprintf(L"Not found.\n");
}
}
|