* 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
allowing another attempt [20000]
renegotiate-time (integer): if we see traffic on the link after this time
then renegotiate another session key immediately [depends on key-lifetime]
- keepalive (bool): if True then attempt always to keep a valid session key
+ keepalive (bool): if True then attempt always to keep a valid session key.
+ Not actually currently implemented. [false]
log-events (string list): types of events to log for this site
unexpected: unexpected key setup packets (may be late retransmissions)
setup-init: start of attempt to setup a session key
null-netlink: dict argument
name (string): name for netlink device, used in log messages
networks (string list): networks on the host side of the netlink device
- exclude-remote-networks (string list): networks that may never be claimed
- by any remote site using this netlink device
+ remote-networks (string list): networks that may be claimed
+ by the remote site using this netlink device
local-address (string): IP address of host's tunnel interface
secnet-address (string): IP address of this netlink device
ptp-address (string): IP address of the other end of a point-to-point link
options (string list):
allow-route: allow packets coming from this tunnel to be routed to
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
+ soft: 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