PowerBuilder
PowerBuilder
Convert CRL PEM to XML
See more PEM Examples
Loads a CRL (Certificate Revocation List) from the PEM file format and converts to XML to allow for visual examination and parsing.Note: This example requires Chilkat v9.5.0.77 or greater.
Chilkat PowerBuilder Downloads
integer li_rc
integer li_Success
oleobject loo_Pem
integer li_NumCrls
integer i
oleobject loo_Asn
oleobject loo_Xml
string ls_CrlBase64
li_Success = 0
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// This example requires Chilkat v9.5.0.77 or greater.
loo_Pem = create oleobject
li_rc = loo_Pem.ConnectToNewObject("Chilkat.Pem")
if li_rc < 0 then
destroy loo_Pem
MessageBox("Error","Connecting to COM object failed")
return
end if
loo_Pem.VerboseLogging = 1
li_Success = loo_Pem.LoadPemFile("qa_data/crl/sampleCrl.pem","password_not_used")
if li_Success <> 1 then
Write-Debug loo_Pem.LastErrorText
destroy loo_Pem
return
end if
li_NumCrls = loo_Pem.NumCrls
i = 0
loo_Asn = create oleobject
li_rc = loo_Asn.ConnectToNewObject("Chilkat.Asn")
loo_Xml = create oleobject
li_rc = loo_Xml.ConnectToNewObject("Chilkat.Xml")
do while i < li_NumCrls
// Get the CRL as base64 (multi-line)
ls_CrlBase64 = loo_Pem.GetEncodedItem("crl","","base64_mime",i)
if loo_Pem.LastMethodSuccess <> 1 then
Write-Debug loo_Pem.LastErrorText
destroy loo_Pem
destroy loo_Asn
destroy loo_Xml
return
end if
Write-Debug ls_CrlBase64
li_Success = loo_Asn.LoadEncoded(ls_CrlBase64,"base64")
if li_Success <> 1 then
Write-Debug loo_Asn.LastErrorText
destroy loo_Pem
destroy loo_Asn
destroy loo_Xml
return
end if
// Convert ASN.1 to XML and load into xml and re-emit for pretty printing..
loo_Xml.LoadXml(loo_Asn.AsnToXml())
Write-Debug loo_Xml.GetXml()
// Use this online tool to generate parsing code from CRL XML:
// Generate Parsing Code from XML
Write-Debug "-------------------------------------"
i = i + 1
loop
destroy loo_Pem
destroy loo_Asn
destroy loo_Xml