Sample code for 30+ languages & platforms
PureBasic

Get Certificate Policy

See more Certificates Examples

Demonstrates how to get a certificate's policy OIDs (if any)

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkXml.pb"
IncludeFile "CkCert.pb"

Procedure ChilkatExample()

    success.i = 0

    cert.i = CkCert::ckCreate()
    If cert.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success = CkCert::ckLoadFromFile(cert,"qa_data/certs/sample.cer")
    If success = 0
        Debug CkCert::ckLastErrorText(cert)
        CkCert::ckDispose(cert)
        ProcedureReturn
    EndIf

    ; The certificatePolicies OID is 2.5.29.32
    oid.s = "2.5.29.32"
    strXml.s = CkCert::ckGetExtensionAsXml(cert,oid)
    If CkCert::ckLastMethodSuccess(cert) = 1
        Debug strXml

        ; Sample result:
        ; <sequence><sequence><oid>2.16.840.1.101.2.1.11.39</oid></sequence></sequence>

        xml.i = CkXml::ckCreate()
        If xml.i = 0
            Debug "Failed to create object."
            ProcedureReturn
        EndIf

        CkXml::ckLoadXml(xml,strXml)
        Debug "Policy OID = " + CkXml::ckGetChildContent(xml,"sequence|oid")
    EndIf



    CkCert::ckDispose(cert)
    CkXml::ckDispose(xml)


    ProcedureReturn
EndProcedure