-Type hb: HBytes_Value @
-Init hb hbytes_sentinel(&@);
+# hbytes - hex-stringrep efficient byteblocks for Tcl
+# Copyright 2006 Ian Jackson
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this library; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+# 02110-1301, USA.
-Type hbv: HBytes_Var @
-Init hbv @.hb=0; init_somethingv(&@.sth);
-Fini hbv fini_somethingv(ip, rc, &@.sth);
-Type addrmapv: AddrMap_Var @
-Init addrmapv @.am=0; init_somethingv(&@.sth);
-Fini addrmapv fini_somethingv(ip, rc, &@.sth);
-
-Type sockaddr: SockAddr_Value @
-Init sockaddr sockaddr_clear(&@);
-
-Table toplevel TopLevel_Command
+Table *hbytestoplevel TopLevel_Command
hbytes
- subcmd enum(HBytes_SubCommand, "hbytes subcommand")
- ... obj
- dgram-socket
- subcmd enum(DgramSocket_SubCommand,"dgram-socket subcommand")
- ... obj
- tuntap-socket-raw
- subcmd enum(TunSocket_SubCommand,"tuntap-socket-raw subcommand")
- ... obj
+ dispatch(HBytes/_SubCommand, "hbytes subcommand")
ulong
- subcmd enum(ULong_SubCommand,"ulong subcommand")
- ... obj
- adns
- subcmd enum(Adns_SubCommand,"adns subcommand")
- ... obj
+ dispatch(ULong/_SubCommand, "ulong subcommand")
Table ulong ULong_SubCommand
ul2int
random
length int
=> hb
- pad
- op enum(PadOp, "hbytes pad subcommand")
- v hbv
- blocksz obj
- meth enum(PadMethodInfo, "pad method")
- ... methargs
- blockcipher
- op enum(BlockCipherOp, "op")
- ... obj
- hash
- alg enum(HashAlgInfo, "hash alg")
- message hb
- => hb
- hmac
- alg enum(HashAlgInfo, "hash alg for hmac")
- message hb
- key obj
- ?maclen obj
- => hb
- hash-prop
- prop enum(HashAlgPropInfo, "prop")
- alg enum(HashAlgInfo, "alg")
- => int
- addr-map
- subcmd enum(AddrMap_SubCommand, "hbytes addr-map subcommand")
- ... obj
-
-Table padmethodinfo PadMethodInfo
- pkcs5
- => int
- rfc2406
- nxthdr obj
- => int
-
-Table dgram_socket DgramSocket_SubCommand
- create
- local sockaddr
- => iddata(&dgram_socks)
- close
- sock iddata(&dgram_socks)
- transmit
- sock iddata(&dgram_socks)
- data hb
- remote sockaddr
- on-receive
- sock iddata(&dgram_socks)
- ?script obj
-
-Table tuntap_socket_raw TunSocket_SubCommand
- create
- ?ifname string
- => iddata(&tuntap_socks)
- close
- sock iddata(&tuntap_socks)
- ifname
- sock iddata(&tuntap_socks)
- => string
- receive
- sock iddata(&tuntap_socks)
- data hb
- on-transmit
- sock iddata(&tuntap_socks)
- mtu long
- ?script obj
-
-Table blockcipherop BlockCipherOp
- e 1
- v hbv
- alg enum(BlockCipherAlgInfo, "alg")
- key obj
- mode enum(BlockCipherModeInfo, "mode")
- ?iv hb
- => hb
- d 0
- v hbv
- alg enum(BlockCipherAlgInfo, "alg")
- key obj
- mode enum(BlockCipherModeInfo, "mode")
- ?iv hb
- => hb
- mac -1
- msg hb
- alg enum(BlockCipherAlgInfo, "alg")
- key obj
- mode enum(BlockCipherModeInfo, "mode")
- iv hb
- => hb
- prop -1
- prop enum(BlockCipherPropInfo, "prop")
- alg enum(BlockCipherAlgInfo, "alg")
- => int
-
-EntryExtra BlockCipherOp
- int encrypt;