Sample code for 30+ languages & platforms
Unicode C++

Load PEM and List Certificates

Demonstrates how to load a PEM containing certificates and accesses each individual certificate.

Chilkat Unicode C++ Downloads

Unicode C++
#include <CkPemW.h>
#include <CkCertW.h>

void ChilkatSample(void)
    {
    bool success = false;

    //  This example assumes the Chilkat API to have been previously unlocked.
    //  See Global Unlock Sample for sample code.

    success = false;

    CkPemW pem;

    //  Load the .p7b from a file.
    success = pem.LoadPemFile(L"/Users/chilkat/testData/p7b/cacert_mozilla.pem");
    if (success != true) {
        wprintf(L"%s\n",pem.lastErrorText());
        return;
    }

    int i;
    int numCerts = pem.get_NumCerts();
    if (numCerts == 0) {
        wprintf(L"%s\n",(L"Error: Expected the PEM to contain certificates."));
        return;
    }

    //  Access each certificate and show the Subject CN (Common Name)
    for (i = 1; i <= numCerts; i++) {
        CkCertW *cert = pem.GetCert(i - 1);
        wprintf(L"%d: %s\n",i,cert->subjectCN());
        delete cert;
    }
    }