(Unicode C) Iterate over Certificates in a Certificate Store
Demonstrates how to iterate over the certificates in a certificate store.
Note: Requires Chilkat v10.1.2 or later.
#include <C_CkCertStoreW.h>
#include <C_CkCertW.h>
void ChilkatSample(void)
{
HCkCertStoreW certStore;
BOOL readOnly;
BOOL success;
HCkCertW cert;
int numCerts;
int i;
certStore = CkCertStoreW_Create();
// This opens the Current User certificate store on Windows,
// On MacOS and iOS it opens the default Keychain.
readOnly = FALSE;
success = CkCertStoreW_OpenCurrentUserStore(certStore,readOnly);
if (success == FALSE) {
wprintf(L"%s\n",CkCertStoreW_lastErrorText(certStore));
CkCertStoreW_Dispose(certStore);
return;
}
cert = CkCertW_Create();
numCerts = CkCertStoreW_getNumCertificates(certStore);
i = 0;
while ((i < numCerts)) {
// Load the cert object with the Nth certificate.
CkCertStoreW_GetCert(certStore,i,cert);
wprintf(L"%d: %s\n",i,CkCertW_subjectCN(cert));
i = i + 1;
}
CkCertStoreW_Dispose(certStore);
CkCertW_Dispose(cert);
}
|