[comp.sources.wanted] SUMMARY of available archive server software

jik@athena.mit.edu (Jonathan I. Kamens) (03/20/91)

  I received many responses to my request for information about mail
archive servers.  The responses were a mishmash of forwarded messages,
and I've boiled them down into a useful format in the summary below.

  I would like to think all of the people who responded to my article.
They were:

	raymond@math.berkeley.edu (Raymond Chen)
	brendan@cs.widener.edu (Brendan Kehoe)
	emv@ox.com (Ed Vielmetti)
	michael@berlioz.nsc.com (Michael Wagnitz)
	andrew@tcvent.UUCP (Andrew F. Cowie)
	Harri Valkama <hv@uwasa.fi>
	bill@twwells.com (T. William Wells)
	pyrdc!mike@uunet.uu.net (Mike Whitman)
	shaver@convex.com (Dave Shaver)
	fitz@wang.com (Tom Fitzgerald)

  Now, on to the summary.


------------------------------------------------------------------
------------------------------------------------------------------


	 A Summary of Available Mail Archive Server Software
	 ---------------------------------------------------

  For each server listed below, I provide the following information,
if known:

	Name
	Author
	Maintainer
	Latest known version
	How to get it
	Implementation language
	Supported platforms
	Comments

Some of the "Comments" (designated by "(DS)") are from Dave Shaver
<shaver@convex.com>, and some (designated by "(TF)") are from Tom
Fitzgerald <fitz@wang.com>.

  If you can fill any of the blanks or have comments about anything
written below, please let me know.

  There are two sections below.  The first describes the various
archive servers, and the second lists known sites from which the
archive servers can be obtained, and how to access them.  The "How to
get it" fields of the archive server descriptions refer to the site
listings.

Jonathan Kamens			              USnail:
MIT Project Athena				11 Ashford Terrace
jik@Athena.MIT.EDU				Allston, MA  02134
Office: 617-253-8085			      Home: 617-782-0710


------------------------------------------------------------------


			Archive Server Summary
			----------------------

Name: B-Server
Author: Budi Rahardjo <rahardj@ccu.umanitoba.ca>
Implementation language: bourne shell
How to get it: Get "b-server.shar" from CSDSERV.
Comments: (DS)
	- Don't need to create system-wide alias (uses sendmail
		.forward file)
	- One shell script
	- Can refuse to provide service to certain people
	- Has file and request limits
	- 4 user commands: help, index, send, get


Name: Clarkson
Author: Michael DeCorte
How to get it: Get "archive-server" from CLARKSON.
Implementation language: bourne shell, awk
Comments: (TF)
   Advantages:
	Most flexible options for archiving, compressing, encoding and
	  slicing result.
	Very nice load-limiting.
   Disadvantages:
	Many BSDism's (I tried porting it to SysV without much luck).
	Can't return several requested items, one item per mail message.
	  It insists on packaging up all requests into a single archive,
	  splitting the archive at random points and mailing the result.
	Can't store items compressed and have them mailed back to the
	  requestor decompressed.


Name: DECWRL
Author: Brian Reid.
Implementation language: bourne shell, awk, a little bit of C
How to get it: (1) Get "decwrl.shar" from CSDSERV.  (2) Get
	"/pub/unix/archive.tar.Z" via anonymous ftp from
	ftp.cs.widener.edu (slightly modified).
Comments: (DS)
	- Written with many shell scripts and a few AWK scripts
	- Very careful about not overloading server machine
		(Remember, this used to run on an over-worked VAX.)
	- Very easy to install; best of the group?
	- Code is all quite generic
	- Good at letting person making request know what happened
		(No black holes for mail.)
	- Good user-level docs (especially the "help" file)
	- Very fair queuing system; people can't make "pigs" of
		themselves
	- 4 user commands: help, index, send, path
Comments: (TF)
   Advantages:
	Simplest.
	Very nice load-limiting, can be set up to run only at night.
	Easily configurable, and portable to Sys V with a little work.
   Disadvantages:
	All items in archive must be text, and are sent out as-is.  No
	  packaging options at all.
	Written in sh, may be a heavy system load (when running).


Name: deliver
How to get it: (1) Get "deliver/Part01", "deliver/Part02",
	"deliver/Part03" and "deliver/Part04" from JASON-ARCHIVE
	(slightly modified).  (2) Get "deliver2.0" from volume 20 of
	comp.sources.unix archives.
Implementation language: C
Comments: This isn't a full-fledged archive server, it's just a
	program to reroute incoming mail, but it can be used as a
	front-end to several of the archive servers mentioned here.


Name: KISS
Author: T. William Wells <bill@twwells.com>
Latest known version: 1.0
How to get it: (1) Get "kiss.shar" from CSDSERV.  (2) Get
	"misc/kiss.shar" from JASON-ARCHIVE (slightly modified).  (3)
	Get "/pub/archives/alt.sources/kiss-server_bill" via anonymous
	ftp from hydra.helsinki.fi.
Implementation language: bourne shell
Comments: (DS)
	- Simple.  8-)
	- One shell script, plus a user-supplied program
	- No batching, quotas, or scheduling.
	- 5 user commands: help, index, send, path, quit
	- Good install docs


Name: Multihouse
Author: Johan Vromans <jv@mh.nl>
How to get it: (1) Get "mserv.TZ" from CSDSERV.  (2) Get
	"UNIX/mailserv.tar.Z" from UTRECHT (slightly modified).  (3)
	Get "csdserv.TZ" from CSDSERV (slightly modified).
Implementation language: perl
Comments: (DS)
	- Written in Perl!!!
	- Distribution under the GNU PL
	- Good at letting person making request know what happened
	- 10 user-level commands: path, limit, uuencode, btoa, send,
		resend, index, help, test, end/exit.
	- Good "help" reply
	- Very extentable and easily modified
	- Code is readable; useful, plentiful comments
	- Easy to install.
	- Very good about splitting archives
	- Can resend PARTS of archives which were mangled in transport
Comments: (TF) (about CSDSERV)
   Advantages:
	Very simple.
	Ability to send out just parts of a multipart item.  (In case
	  some parts of a previous request were lost).
	Some basic packaging options.
   Disadvantages:
	No queuing or load-balancing.  All requested items are sent out
	  immediately regardless of system load.
	No division into archive libraries/topics.  All of archive is
	  treated as flat namespace and all items must be uniquely named.


Name: NETLIB
Author: Jack J. Dongarra, Eric Grosse
How to get it: (1) Get "netlib.shar" from CSDSERV.  (2) Get "netlib
	from misc" from NETLIB.
Implementation language: C
Comments: (DS)
	- User-level docs a bit rough.	Assumes user is quite mail savvy.
		(Not a fair assumption in my case.)
	- Catches "pigs" effectively, but no queuing system for requests.
	- Notices attempted security violations using magic shell characters
	- Install docs adequate, but not outstanding
	- Hard to install since site-specific stuff not centralized
		in a config file.
	- Has almost no interal documentation (i.e. comments)
	- Eclectic mix of shell scripts and C programs
	- Some sections of code very specific to serving libs.	Does
		not generalize well to ASCII files.
Comments: (TF)
   Advantages:
	Arbitrary directories can be made part of archives, archives don't
	  have to all be under a single directory tree.
	Written in C, probably imposes the least system load.
	Reasonably portable and configurable.
   Disadvantages
	Really complicated, with inadequate documentation
	No queuing or load-balancing.  All requested items are sent out
	  immediately regardless of system load.
	Poorest at figuring out return addresses.
	All items in archive are sent out as-is.  No packaging options.
	  (They can be binary, they will be sent out uuencoded).


Name: procmail
Author: Stephen R. van den Berg <berg@marvin.e17.physik.tu-muenchen.de>
Latest known version: 1.30
How to get it: Get "procmail" from volume 17 of comp.sources.misc
	archives.
Implementation language: C
Comments: This isn't a full-fledged archive server, it's a program to
	parse incoming mail and invoke other programs based on the
	results, but it can be used as a front end to the some of the
	archive servers mentioned here.


Name: RNALIB
Author: Paulo Ventafridda <venta@otello.sublink.org>, Marco Lorenzini
	<marlor@gear.sublink.org>
Latest known version: 2.2 beta-3
Implementation language: bourne shell
How to get it: (1) Get "rnalib2" from volume 15 of comp.sources.misc
	archives.  (2) Get "RNALIB 2.2 beta" and "upgrade to beta-3"
	from alt.sources archive on valhalla.ee.rochester.edu.
Comments:
	- Completely implemented in one bourne shell script plus
	  several data files.
	- Allows libraries to be all over the filesystem hiearchy
	  (i.e. not in fixed data directory).
	- Understands a variety of packing formats, and detects binary
	  file automatically (and uuencodes them).
	- Requires bourne shell with support for functions.
	- Very poor address parsing.
	- No queueing.
	- Has "blacklists" to prevent people from transferring and
	  "whitelists" to allow specific people to tell the server to
	  deliver to third parties.
	- Detects "hogs" and imposes maximum credit limits.


------------------------------------------------------------------


		      Archive Site Instructions
		      -------------------------

CSDSERV: Anonymous ftp to archive.cs.iastate.edu and look in the
	directory /pub/servers.

CLARKSON: Send mail to "archive-server@sun.soe.clarkson.edu" with
	"send <what you want>" as the text of the message, e.g. "send
	archive-server".  If you want it to be archived as a shar
	file, then add a line saying "archiver shar" before the "send"
	line.  You can also sue "archiver tar".  If you don't specify
	an archiver, then the files in the request will be separated
	by "--- cut here ---" lines and you'll have to extract them by
	hand or write some sort of script to do it.

JASON-ARCHIVE: Send mail to "penneyj@slc.com" with a subject line
	containing the string "jason-archive-request" and a body
	containing "send <what you want>", e.g. "send misc/kiss.shar".
	If you want multiple files, you can specify multiple requests
	on separate lines of the file.

NETLIB: Send mail to "netlib@research.att.com" with "send
	<what you want>", e.g. "send netlib from misc", as the text of
	the message.

UTRECHT: Anonymous ftp to archive.cs.ruu.nl and look in the directory
	/pub, or send mail to "mail-server@cs.ruu.nl" with the lines:

	begin
	send <filename>
	end

	You replace "<filename>" with the file you want to retrieve,
	e.g. "send UNIX/mailserver.tar.Z".