X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=base%2Ftables-examples.tct;h=37286adb6bcf5597d479aaa4dfbcb9534b59cedd;hb=bc152fdba00b88a09a1c263bc8ff8490099b7027;hp=1119be848826d20707401e43483a037da31eae98;hpb=49c3802afe7339871a8387c90de3e5ff798d66b1;p=chiark-tcl.git diff --git a/base/tables-examples.tct b/base/tables-examples.tct index 1119be8..37286ad 100644 --- a/base/tables-examples.tct +++ b/base/tables-examples.tct @@ -1,58 +1,112 @@ -Type hb Tcl_Obj * -Type hbv Tcl_Obj * +Type hb: HBytes_Value @ +Init hb hbytes_sentinel(&@); -Table hbytes -Entries +Type hbv: HBytes_Var @ +Init hbv @.hb=0; @.obj=0; @.var=0; +Fini hbv fini_hbv(ip, rc, &@); + +Type sockaddr: SockAddr_Value @ +Init sockaddr sockaddr_clear(&@); + +Type sockid: DgramSockID @ +Type ulong: unsigned long @ + +H-Include "hbytes.h" + +Untabled + hbytes + subcmd enum(HBytes_SubCommand, "hbytes subcommand") + obj ... + dgram-socket + subcmd enum(DgramSocket_SubCommand,"dgram-socket subcommand") + obj ... + +Table hbytes HBytes_SubCommand raw2h binary obj => hb h2raw - hex hex + hex hb => obj - prefix - v hbv - ... - append - v hbv - ... - concat - v hbv - ... - unprepend - v hbv - length int + ulong2h + value ulong => hb - unappend - v hbv - length int + h2ulong + hex hb + => ulong + ushort2h + value ulong => hb - chopto - v hbv - length int + h2ushort + hex hb + => ulong + length + v hb + => int + prepend + v hbv + str ... + append + v hbv + str ... + rep-info + v obj + => obj + concat + str ... => hb - pkcs5 - meth enum(PadMethodInfo,padmethodinfos) - ... - blockcipher - encrypt charfrom("de") + 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") v hbv - alg enum(BlockCipherAlgInfo,blockcipheralginfos) - mode enum(BlockCipherModeInfo,blockciphermodeinfos) - ?iv hb - => hb - hash - alg enum(HashAlgInfo,hashalginfos) - message hb + block obj + => int + blockcipher + encrypt charfrom("de","encrypt/decrypt") + v hbv + alg enum(BlockCipherAlgInfo, "alg") + key obj + 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 obj + ?maclen obj + => hb + zeroes + length int => hb - hmac - alg enum(HashAlgInfo,hashalginfos) - message hb - key hb - maclen int + random + length int => hb -Table padmethodinfos - FuncArgs - Info - int algname; -Entries +Table dgram_socket DgramSocket_SubCommand + create + local sockaddr + => sockid + close + sock sockid + transmit + sock sockid + data hb + remote sockaddr + on-receive + sock sockid + ?script obj