The CGI has been dramatically modified to fully support the new (1.0)
version of spasm. Following is the slightly edited form of the old
README file:

These are some helper programs I wrote for testing purposes. Included is a
CGI (spasm.cgi) for web-based modification of user and virtual domain
filters and whitelists, and applications used by the CGI to perform various
tasks.

**** DO NOT USE THESE AS THEY ARE! ****

The CGI is a very basic framework, and will most likely require
modifications to work properly on your system. Recommended installation
is on an SSL webserver which is *not* accessible by users (ie, users
cannot place files into SSL webspace, and the SSL server does not run
user CGIs). The SSL server process should run as its own user/group
which is not shared by any other process. The helper applications
should *only* be accessible by the SSL process' group, as many of them
require being run suid (as the spasm user). The CGI is currently set up
for a system running PAM authentication with the databases accessible
locally; unless your system fits this description, you WILL need to modify
the CGI.

What needs to be modified?

verifyLogin() is where username/password pairs are authenticated.

Everything else just needs to be perused and modified to taste.

The Makefile includes variables for the SSL server user/group, and the 
installation paths for the binaries and the CGI. The helper apps use
the includes and functions from ../spasm.h, ../dbfunc.h, and ../dbfunc.c.

Oh, one more thing:

**** DO NOT USE THESE AS THEY ARE! ****

Do whatever you want to with these -- they're ugly kludges, and public
domain. =)

Finally, if you don't understand what the CGI or the helper apps are
doing, how they work, or how to secure them, DO NOT USE THEM! If you
are unable to make the necessary modifications for your system, find
someone who can!

Finally, if you would like to write a cleaner, happier web interface
and wish to have it included in this package, feel free! I'm sure that
other users would appreciate it, since I don't know when I'll be able
to do it myself.
