@(#) $Id$ (LBL)

To build acld run ./configure (a shell script) and then use make
to compile the binary.

To use acld you will need to build and install expect. The one in
FreeBSD's /usr/ports works nicely:

    /usr/ports/lang/expect

The expect language port depends on tk/tcl.

acld.conf.sample shows a setup for a Force 10 router. Force 10
routers support individual user accounts; create a acld user using:

    conf
    username acld password 0 CLEARTEXTPASS privilege 15
    exit
    copy running-config startup-config

If you later need to change the password, use:

    username acld password 0 CLEARTEXTPASS

The force10 expect script uses a program called socket to connect
to acld. It's available as a FreeBSD port

    /usr/ports/sysutils/socket

or can be downloaded here:

    https://wolfram.schneider.org/src/socket-1.1.tar.gz

On a cisco, you need to configure both the connect and enable
passwords.

FILES
-----
CHANGES		- description of differences between releases
FILES		- list of files exported as part of the distribution
INSTALL		- this file
Makefile.in	- compilation rules (configure script template)
README		- description of distribution
VERSION		- version of this release
acl-script.conf.sample - sample acl-script config file
acl-script.py.in - acld interface script (python script template)
acl.c		- ACL manipulation routines (configure script template)
acl.exp.in	- acld interface script (configure script template)
acl.h		- prototypes, defines and struct definitions
aclcompact.sh.in - cron job script to compact acls (configure script template)
acld-init.d.sh.in - Linux /etc/init.d script (configure script template)
acld-multiply.py.in - acld multiplier daemon (python script template)
acld-multiply.sh.in - FreeBSD rc.d script (configure script template)
acld.8		- man page
acld.c		- main program
acld.conf.sample - sample acld configuration
acld.h		- prototypes, defines and struct definitions
acld.sh.in	- FreeBSD rc.d script (configure script template)
aclfw.sh.in	- rc.d script to restore ipfw blocks on bootup (template)
aclocal.m4	- autoconf macros
cf.c		- configuration parsing routines
cf.h		- prototypes, defines and struct definitions
cforce.c	- cForce blocking appliance routines
cforcep.h	- prototypes, defines and struct definitions
check_acld.py.in - nagios acld plugin (python script template)
check_acld_pair.py.in - nagios acld plugin (python script template)
check_nullzero_routes.py.in - nagios acld plugin (python script template)
child.c		- expect process routines
child.h		- prototypes, defines and struct definitions
child2.c	- expect process routines
child2.h	- prototypes, defines and struct definitions
cisco.expect	- Cisco version of the expect script
client.c	- client routines
client.h	- prototypes, defines and struct definitions
config.guess	- autoconf support
config.sub	- autoconf support
configure	- configure script (run this first)
configure.in	- configure source (configure script template)
corsa.c		- corsa routines
corsa.h		- prototypes, defines and struct definitions
ctags.sh	- tags helper
daemon.c	- replacement when libc daemon() is missing
debug.expect	- debugging version of the expect script
force10-telnet.expect - Force 10 version of the expect script (telnet)
force10.expect	- Force 10 version of the expect script (ssh)
freebsd-kvm.c	- FreeBSD kvm routing routines (10 and older)
freebsd-sysctl.c - FreeBSD sysctl routing routines (11 and newer)
freebsd.c	- FreeBSD routing routines
freebsd.h	- prototypes, defines and struct definitions
history.c	- routing routines
history.h	- prototypes, defines and struct definitions
inet_aton.c	- replacement when libc inet_aton() is missing
install-sh	- BSD style install script
io.c		- server routines
io.h		- prototypes, defines and struct definitions
ipfw.expect	- ipfw version of the expect script
junoscript.c	- junoscript router routines
junoscript.h	- prototypes, defines and struct definitions
lbl/gnuc.h	- gcc macros and defines
mac.c		- mac address routines
mac.h		- prototypes, defines and struct definitions
mkdep		- construct Makefile dependency list
nullzero-archive.sh.in - nullzero cron job (shell script template)
nullzero-restart.py.in - nullzero restart script (python script template)
nullzero-restart.sh.in - FreeBSD rc.d script (shell script template)
pf.expect	- pf version of the expect script
prefix.c	- prefix name routines
prefix.h	- prototypes, defines and struct definitions
py-acld/Makefile - Python acld module makefile
py-acld/acld.py	- Python acld module
py-acld/setup.py - Python acld module setup script
replicant.c	- replication routines
replicant.h	- prototypes, defines and struct definitions
route.c		- routing routines
route.h		- prototypes, defines and struct definitions
rpc.c		- junoscript rpc routines
rpc.h		- prototypes, defines and struct definitions
server.c	- server routines
server.h	- prototypes, defines and struct definitions
setsignal.c	- OS independent signal() with BSD semantics
setsignal.h	- prototypes, defines and struct definitions
sslutil.c	- openssl routines
sslutil.h	- prototypes, defines and struct definitions
stats.c		- statistics routines
stats.h		- prototypes, defines and struct definitions
strerror.c	- replacement when libc strerror() is missing
test.c		- unit test routines
timer.c		- timer routines
timer.h		- prototypes, defines and struct definitions
util.c		- utility routines
util.h		- prototypes, defines and struct definitions
version.h	- prototypes, defines and struct definitions
whitelist.c	- whitelist routines
whitelist.h	- prototypes, defines and struct definitions
