Visual FoxPro
Visual FoxPro
Example: Crypt2.GetSignedAttributes method
Demonstrates how to call the GetSignedAttributes method.Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loCrypt
LOCAL loBdPkcs7
LOCAL loJson
LOCAL loSbJson
LOCAL i
LOCAL lnTryNext
lnSuccess = 0
loCrypt = CreateObject('Chilkat.Crypt2')
loBdPkcs7 = CreateObject('Chilkat.BinData')
lnSuccess = loBdPkcs7.LoadFile("qa_data/cades/CAdES-T/Signature-C-T-1.p7m")
IF (lnSuccess = 0) THEN
? loBdPkcs7.LastErrorText
RELEASE loCrypt
RELEASE loBdPkcs7
CANCEL
ENDIF
loJson = CreateObject('Chilkat.JsonObject')
loJson.EmitCompact = 0
loSbJson = CreateObject('Chilkat.StringBuilder')
i = 0
lnTryNext = 1
DO WHILE lnTryNext
IF (loCrypt.GetSignedAttributes(i,loBdPkcs7,loSbJson) = 1) THEN
loJson.LoadSb(loSbJson)
? STR(i) + ": "
? loJson.Emit()
ELSE
lnTryNext = 0
ENDIF
i = i + 1
ENDDO
* Sample output:
* 0:
* {
* "signedAttributes": [
* {
* "oid": "1.2.840.113549.1.9.3",
* "name": "Content Type"
* },
* {
* "oid": "1.2.840.113549.1.9.5",
* "name": "Signing Time"
* },
* {
* "oid": "1.2.840.113549.1.9.4",
* "name": "Message Digest"
* },
* {
* "oid": "1.2.840.113549.1.9.16.2.47",
* "name": "Signing Certificate V2"
* }
* ]
* }
RELEASE loCrypt
RELEASE loBdPkcs7
RELEASE loJson
RELEASE loSbJson