chiark / gitweb /
Serpent seems to work. Byte order is very strange.
[chiark-tcl.git] / base / tables-examples.tct
index 53fd2399310a0d0c86732a7ef41f3fa3a760c2df..922f844ac4e47938078ea99abd78184e63182a14 100644 (file)
@@ -1,56 +1,70 @@
-Type hb:                       Tcl_Obj/*hbytes*/ *@
-Type hbv:                      Tcl_Obj/*hbytes*/ *@
+Type hb:                       HBytes_Value @
+Init hb                                hbytes_sentinel(&@);
+Type hbv:                      HBytes_Var @
+Init hbv                       @.hb=0; @.obj=0; @.var=0;
+Fini hbv                       fini_hbv(ip, rc, &@);
 
-Table hbytes
+H-Include      "hbytes.h"
+
+Untabled
+       hbytes
+               subcmd  enum(HBytes_SubCommand, "hbytes subcommand")
+               obj     ...
+
+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
-               =>      hb
-       unappend
-               v       hbv
-               length  int
-               =>      hb
-       chopto
-               v       hbv
-               length  int
+       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)
-               arg     ...
-       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
-               =>      hb
-       hmac
-               alg     enum(HashAlgInfo,hashalginfos)
-               message hb
-               key     hb
-               maclen  int
-               =>      hb
-
-#Table padmethodinfos
-#      Info
-#              int algname;
-#Entries
+               block   obj
+               =>      int
+       blockciph
+               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     hb
+#              maclen  int
+#              =>      hb