X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=chiark-tcl.git;a=blobdiff_plain;f=base%2Ftables-examples.tct;h=13a3e5d68a05ab9629c4b254c538eb3e3fab6e51;hp=46fb7fbea61f23fe4435cc18b512443b7c69996e;hb=9b7d11070d3e9dc1eb61cbccd5155f47a27047c3;hpb=310a482133795d0bee9621003c0a0b3813a47037 diff --git a/base/tables-examples.tct b/base/tables-examples.tct index 46fb7fb..13a3e5d 100644 --- a/base/tables-examples.tct +++ b/base/tables-examples.tct @@ -1,66 +1,81 @@ Type hb: HBytes_Value @ -Init hb @.start=0; @.end=0; -Type hbv: HBytes_Value *@ +Init hb hbytes_sentinel(&@); +Type hbv: HBytes_Var @ +Init hbv @.hb=0; @.obj=0; @.var=0; +Fini hbv fini_hbv(ip, rc, &@); H-Include "hbytes.h" Untabled hbytes - subcmd enum(ParserCommandTableEntry,pcmdtab_hbytes) + subcmd enum(HBytes_SubCommand, "hbytes subcommand") obj ... -Table hbytes +Table hbytes HBytes_SubCommand raw2h binary obj => hb h2raw hex hb => obj - prefix - v hbv - str ... - append - v hbv - str ... - concat - v hbv - str ... - unprepend - v hbv - length int + prepend + v hbv + str ... + append + v hbv + str ... + rep-info + v hb + => obj + concat + str ... => hb - unappend + unprepend + v hbv + length int + => hb + unappend + v hbv + length int + => hb + chopto + v hbv + length int + => hb + pkcs5 + meth enum(PadMethod, "hbytes pad subcommand") + obj ... +# blockcipher +# encrypt charfrom("de","encrypt/decrypt") +# v hbv +# alg enum(BlockCipherAlgInfo, "alg") +# mode enum(BlockCipherModeInfo, "mode") +# ?iv hb +# => hb +# hash +# alg enum(HashAlgInfo, "hash alg") +# message hb +# => hb +# hmac +# alg enum(HashAlgInfo, "hash alg for hmac") +# message hb +# key hb +# maclen int +# => hb + +Table padmethod PadMethod + pa 1 v hbv - length int - => hb - chopto + alg enum(BlockCipherAlgInfo, "pad alg") + ua 0 v hbv - length int - => hb - pkcs5 - meth enum(PadMethodInfo,padmethodinfos) - obj ... - blockcipher - encrypt charfrom("de") + alg enum(BlockCipherAlgInfo, "pad alg") + pn 1 v hbv - alg enum(BlockCipherAlgInfo,blockcipheralginfos) - mode enum(BlockCipherModeInfo,blockciphermodeinfos) - ?iv hb - => hb - hash - alg enum(HashAlgInfo,hashalginfos) - message hb - => hb - hmac - alg enum(HashAlgInfo,hashalginfos) - message hb - key hb - maclen int - => hb - -Table padmethod - Of PadMethodInfo - pa 1, 0 + block int + un 0 + v hbv + block int -EntryExtra PadMethodInfo - int pad, algname; +EntryExtra PadMethod + int pad;