* Copying
-secnet is Copyright (C) 1995--2001 Stephen Early <steve@greenend.org.uk>
+secnet is Copyright (C) 1995--2003 Stephen Early <steve@greenend.org.uk>
It is distributed under the terms of the GNU General Public License,
version 2 or later. See the file COPYING for more information.
Note that f/g/e is NOT 4.
-In a future version of secnet it will also be permissible to list
-other dictionaries before a dictionary definition,
-eg. <defaults,otherdefaults>{definitions}. These will be searched in
-order for keys, before the lexical parent. (This is not yet
-implemented)
-
Elements that are lists are inserted into lists in definitions, not
referenced by them (i.e. you can't have lists of lists).
The main body of secnet, and all the additional modules, predefine
some keys in the root dictionary. The main ones are:
- yes, true, True, TRUE: the boolean value True
- no, false, False, FALSE: the boolean value False
+ yes, true, True, TRUE, on: the boolean value True
+ no, false, False, FALSE, off: the boolean value False
makelist: turns a dictionary (arg1) into a list of definitions
(ignoring the keys)
readfile: reads a file (arg1) and returns it as a string
+ map: applies the closure specified as arg1 to each of the
+ remaining elements in the list in turn. Returns a list
+ made up of the outputs of the closure.
Keys defined by modules are described below, in the module
documentation.
udp (closure => comm closure)
udp: dict argument
+ address (string): IP address to listen and send on
port (integer): UDP port to listen and send on
buffer (buffer closure): buffer for incoming packets
authbind (string): optional, path to authbind-helper program
other tunnels as well as the host (used for mobile devices like laptops)
soft-route: remove these routes from the host's routing table when
the tunnel link quality is zero
+ mtu (integer): default MTU over this link; may be updated by tunnel code
Netlink will dump its current routing table to the system/log on
receipt of SIGUSR1.
tun-old (closure => netlink closure)
tun: dict argument
+ flavour (string): optional, type of TUN interface to use
+ ("guess","linux","bsd","streams")
device (string): optional, path of TUN/TAP device file ["/dev/net/tun"]
interface (string): optional, name of tunnel network interface
ifconfig-path (string): optional, path to ifconfig command
route-path (string): optional, path to route command
+ ifconfig-type (string): optional, how to perform ifconfig
+ route-type (string): optional, how to add and remove routes
+ types are: "guess", "ioctl", "bsd", "linux", "solaris-2.5"
buffer (buffer closure): buffer for host->secnet packets
plus generic netlink options, as for 'null-netlink'
-tun-old: dict argument
- device (string): optional, path of TUN/TAP device file ["/dev/tun*"]
- interface (string): optional, name of tunnel network interface
- interface-search (bool): optional, whether to search for a free tunnel
- interface (True if 'device' not specified, otherwise False)
- ifconfig-path (string): optional, path to ifconfig command
- route-path (string): optional, path to route command
- plus generic netlink options, as for 'null-netlink'
-
- I recommend you don't specify the 'interface' option unless you're
- doing something that requires the interface name to be constant.
+I recommend you don't specify the 'interface' option unless you're
+doing something that requires the interface name to be constant.
** rsa