XUDSIGVALIDATE ;OAK/WJY - XML digital signature validation; May 6, 2025@13:37
Source file <XUDSIGVALIDATE.m>
| action | A | extended action | Ea | event driver | Ed | subscriber | Su | protocol | O | limited protocol | LP | run routine | RR | broker | B | edit | E | server | Se | P | screenman | SM | inquire | I |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| VALIDATESIG(XMLFILEPATH,PUBLICKEYPATH,IDNAME,IDELEMENT,ELAPSEDTIMEMS) | ;
|
|
| VERIFYCHAIN(CACERT,XMLFILEPATH,TEMPCERTPATH,CHECKINDCA,CASUBJECT,CACONTENT,ELAPSEDTIMEMS) | ;
; Validates that the cert (with corresponding private key) used to sign the xml was generated by a specific cert (root CA or intermediate CA) |
|
| BUILDCMD(CMD,FLAGS,FLAGPREFIX,ARGS) | ;
|
|
| VERIFYINDCA(LEAFCERTPATH,CABUNDLE,SUBJECT,CACONTENT) | ;
|
|
| VERIFYCA(CACERT,TEMPCERTPATH) | ;
|
|
| GETCERTIFICATE(XMLFILE) | ;
|
|
| SAVETOFILE(PATH,CONTENT) | ;
|
|
| CHECKPATH(PATH) | ;
|
|
| VALIDATEINPUT(INPUT) | ;
|
|
| ERR | ;
|
| Name | Field # of Occurrence |
|---|---|
| $$OS^%ZOSV | VALIDATESIG+5, VERIFYCHAIN+25 |
| ^%ZTER | ERR+1 |
| SAVETOFILE^XUDSIGVALIDATE | VERIFYINDCA+24 |
| Name | Line Occurrences |
|---|---|
| $$BUILDCMD | VALIDATESIG+27, VERIFYCA+7 |
| $$CHECKPATH | VERIFYCHAIN+29 |
| $$GETCERTIFICATE | VALIDATESIG+19, VERIFYCHAIN+31 |
| $$VALIDATEINPUT | VALIDATESIG+11 |
| $$VERIFYCA | VERIFYCHAIN+35, VERIFYINDCA+25 |
| $$VERIFYINDCA | VERIFYCHAIN+34 |
| SAVETOFILE | VALIDATESIG+21, VERIFYCHAIN+32 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| ARG | BUILDCMD+1~, BUILDCMD+9*, BUILDCMD+10*, BUILDCMD+11 |
| ARGS | VALIDATESIG+1~, VALIDATESIG+27, BUILDCMD~, VERIFYCA+1~, VERIFYCA+7 |
| ARGS( | BUILDCMD+10, BUILDCMD+11 |
| ARGS("0" | VERIFYCA+5* |
| ARGS("XMLFILEPATH" | VALIDATESIG+25* |
| CABUNDLE | VERIFYINDCA~, VERIFYINDCA+7, VERIFYINDCA+8*, VERIFYINDCA+14, VERIFYINDCA+17, VERIFYINDCA+20, VERIFYINDCA+27* |
| CABUNDLEFILE | VERIFYINDCA+1~, VERIFYINDCA+6* |
| CACERT | VERIFYCHAIN~, VERIFYCHAIN+29, VERIFYCHAIN+30, VERIFYCHAIN+34, VERIFYCHAIN+35, VERIFYCA~, VERIFYCA+4 |
| CACONTENT | VERIFYCHAIN~, VERIFYCHAIN+34, VERIFYINDCA~, VERIFYINDCA+26*, VERIFYINDCA+29* |
| CAPATH | VERIFYINDCA+1~, VERIFYINDCA+23*, VERIFYINDCA+24, VERIFYINDCA+25 |
| CASUBJECT | VERIFYCHAIN~, VERIFYCHAIN+34 |
| CERT | VALIDATESIG+1~, VALIDATESIG+19*, VALIDATESIG+21, VERIFYCHAIN+22~, VERIFYCHAIN+31*, VERIFYCHAIN+32, VERIFYINDCA+1~, VERIFYINDCA+20*, VERIFYINDCA+21, VERIFYINDCA+24 , VERIFYINDCA+26 |
| CERTIFICATE | GETCERTIFICATE+1~, GETCERTIFICATE+5*, GETCERTIFICATE+6*, GETCERTIFICATE+7 |
| CHECKINDCA | VERIFYCHAIN~, VERIFYCHAIN+33*, VERIFYCHAIN+34 |
| CMD | VALIDATESIG+1~, VALIDATESIG+16*, VALIDATESIG+27, BUILDCMD~, BUILDCMD+2 |
| CONTENT | SAVETOFILE~, SAVETOFILE+4 |
| DONE | VERIFYINDCA+1~, VERIFYINDCA+11*, VERIFYINDCA+13, VERIFYINDCA+15*, VERIFYINDCA+19*, VERIFYINDCA+26* |
| ELAPSEDTIMEMS | VALIDATESIG~, VALIDATESIG+32*, VERIFYCHAIN~, VERIFYCHAIN+37* |
| END | VALIDATESIG+1~, VALIDATESIG+31*, VALIDATESIG+32, VERIFYCHAIN+22~, VERIFYCHAIN+36*, VERIFYCHAIN+37, VERIFYINDCA+1~, VERIFYINDCA+17*, VERIFYINDCA+18*, VERIFYINDCA+19 , VERIFYINDCA+20, VERIFYINDCA+27 |
| ENDTAG | VERIFYINDCA+1~, VERIFYINDCA+10*, VERIFYINDCA+17, VERIFYINDCA+18 |
| >> EXISTS | VALIDATESIG+13* |
| FILE | VALIDATESIG+1~, VERIFYINDCA+1~, SAVETOFILE+1~, SAVETOFILE+2* |
| FLAGPREFIX | VALIDATESIG+1~, VALIDATESIG+26*, VALIDATESIG+27, BUILDCMD~, BUILDCMD+5, BUILDCMD+6, BUILDCMD+7, VERIFYCA+1~, VERIFYCA+6*, VERIFYCA+7 |
| FLAGS | VALIDATESIG+1~, VALIDATESIG+27, BUILDCMD~, VERIFYCA+1~, VERIFYCA+7 |
| FLAGS( | BUILDCMD+4, BUILDCMD+5, BUILDCMD+6 |
| FLAGS("CAfile" | VERIFYCA+4* |
| FLAGS("enabled-key-data" | VALIDATESIG+23* |
| FLAGS("id-attr:" | VALIDATESIG+24* |
| FLAGS("partial_chain" | VERIFYCA+3* |
| FLAGS("pubkey-cert-pem" | VALIDATESIG+23* |
| FULLCMD | VALIDATESIG+1~, VALIDATESIG+27*, VALIDATESIG+30, BUILDCMD+1~, BUILDCMD+2*, BUILDCMD+5*, BUILDCMD+6*, BUILDCMD+7*, BUILDCMD+11*, BUILDCMD+13* , BUILDCMD+14 |
| GUID | VALIDATESIG+1~, VALIDATESIG+18*, VALIDATESIG+20, VERIFYCHAIN+22~, VERIFYCHAIN+27*, VERIFYCHAIN+28 |
| I | BUILDCMD+1~ |
| IDELEMENT | VALIDATESIG~, VALIDATESIG+10*, VALIDATESIG+11, VALIDATESIG+24 |
| IDNAME | VALIDATESIG~, VALIDATESIG+10*, VALIDATESIG+11, VALIDATESIG+24 |
| INPUT | VALIDATEINPUT~, VALIDATEINPUT+1, VALIDATEINPUT+2, VALIDATEINPUT+3 |
| KEY | BUILDCMD+1~, BUILDCMD+3*, BUILDCMD+4*, BUILDCMD+5, BUILDCMD+6, BUILDCMD+7 |
| LEAFCERT | VERIFYINDCA+1~, VERIFYINDCA+4*, VERIFYINDCA+5 |
| LEAFCERTFILE | VERIFYINDCA+1~, VERIFYINDCA+2* |
| LEAFCERTPATH | VERIFYINDCA~, VERIFYINDCA+3, VERIFYINDCA+23, VERIFYINDCA+25 |
| LEAFCERTSUBJECT | VERIFYINDCA+1~, VERIFYINDCA+5*, VERIFYINDCA+22 |
| PATH | VALIDATESIG+1~, VALIDATESIG+20*, VALIDATESIG+21, VALIDATESIG+22, SAVETOFILE~, SAVETOFILE+3, CHECKPATH~, CHECKPATH+1, CHECKPATH+2 |
| PUBLICKEYPATH | VALIDATESIG~, VALIDATESIG+13, VALIDATESIG+17, VALIDATESIG+22*, VALIDATESIG+23 |
| RESULTS | GETCERTIFICATE+1~, GETCERTIFICATE+3 |
| SC | VALIDATESIG+1~, VALIDATESIG+30*, VALIDATESIG+35 |
| START | VALIDATESIG+1~, VALIDATESIG+7*, VALIDATESIG+32, VERIFYCHAIN+22~, VERIFYCHAIN+26*, VERIFYCHAIN+37, VERIFYINDCA+1~, VERIFYINDCA+14*, VERIFYINDCA+15, VERIFYINDCA+16* , VERIFYINDCA+17, VERIFYINDCA+20 |
| STARTTAG | VERIFYINDCA+1~, VERIFYINDCA+9*, VERIFYINDCA+14, VERIFYINDCA+16, VERIFYINDCA+27 |
| STATUS | VERIFYCHAIN+22~, VERIFYCHAIN+34*, VERIFYCHAIN+35*, VERIFYCHAIN+38, VERIFYINDCA+1~, VERIFYINDCA+12*, VERIFYINDCA+25*, VERIFYINDCA+26, VERIFYINDCA+28, VERIFYCA+1~ , VERIFYCA+8*, VERIFYCA+9, VERIFYCA+10 |
| SUBJECT | VERIFYINDCA~, VERIFYINDCA+21*, VERIFYINDCA+22, VERIFYINDCA+30* |
| TEMPCERTPATH | VERIFYCHAIN~, VERIFYCHAIN+28*, VERIFYCHAIN+29, VERIFYCHAIN+32, VERIFYCHAIN+34, VERIFYCHAIN+35, VERIFYCA~, VERIFYCA+5 |
| VCMD | VERIFYCA+1~, VERIFYCA+2*, VERIFYCA+7*, VERIFYCA+8 |
| XMLFILE | GETCERTIFICATE~, GETCERTIFICATE+2 |
| XMLFILEPATH | VALIDATESIG~, VALIDATESIG+12, VALIDATESIG+19, VALIDATESIG+25, VERIFYCHAIN~, VERIFYCHAIN+31 |
| XPATHDOC | GETCERTIFICATE+1~, GETCERTIFICATE+2 |