redirmail v1.0 README James W. Abendschan jwa@jammed.com http://www.jammed.com Requirements: Perl 5 (tested on 5.003) w/ socket support History: It's late winter in chilly Flagstaff, Arizona. A lone UNIX system administrator, confronted with Yet Another Sendmail Bug, must install an updated on three different platforms. It's late; he's dedicated but tired, and an episode of Mystery Science Theater 3000 and a warm bed beckons him from his apartment. He asks himself "surely there can be a better way of doing this. I only have one real mail server; all the other systems just deliver their mail through it. Why do I need sendmail on these systems?" He ponders. He meditates. He goes home and watches MST3k. He sleeps. And when he wakes, an answer swims up at him from dream-- "a perl-based mail redirection script which both emulates sendmail from a commandline but can also tie stdio to the real mail server." He retreats to his corner in the Sun lab and after 3 days and a few nights he comes up with "sendmail-on-a-stick", colloquially known as "redirmail". Can I use redirmail? Anyone can use it, but it's only useful to system administrators with several UNIX systems in a single cluster (systems which share a common set of user accounts and a single mailspool). If redirmail can't contact your mail server, or if the mail server rejects the mail for some reason, redirmail will attempt to deliver it again, every hour, for a week before dropping the message (an error message is written to stdout and an error code returned, but no dead.letter file is created.) However, everything is kept in memory -- if the machine reboots before it's able to deliver the message, the message will be vaporized. If there's demand for it (and there already is) I'll add support for disk-based queueing. Before you install: edit the redirmail program, and edit the following: * #!/usr/bin/perl (if your perl lives somewhere else) * $smtp_server - hostname of your SMTP server * $smtp_port - portnumber of your SMTP server, usually 25 (unless you're using this with ssh to facilitate secure mail delivery..) You can also edit these variables if you're so inclined: * $connect_timeout - how long to wait for the smtp_server before retrying * $session_timeout - how long to wait for the session to finish before retrying * $retry_sleep - how long to sleep between retries (default 1 hour) * $retry_max - how long to retry (default 168; 7 days) To install: Look at install.sh. Drink some mountain dew. Run install.sh. Cross your fingers. To backout of the install: the install script makes a copy of sendmail called "sendmail.orig" -- move that file back into place, and restore its file permissions. (c) 1997 James Abendschan, JAMMED Systems