1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
Safecat
Len Budney
February 29, 2000
1. Introduction
safecat is an implementation of D. J. Bernstein's maildir algorithm.
It can be used to write mail messages to a qmail-style maildir, or to
write data to a "spool" directory reliably. There are no lockfiles with
safecat, and nothing is left to chance. If safecat returns a successful
exit status, then you can be (practically) 100% sure your data is
safely committed to disk. Further, if data is written to a directory
using safecat (or other implementations of the maildir algorithm),
then every file in that directory is guaranteed to be complete. If
safecat fails to write all of the data, there will be no file at all
in the destination directory.
Of course, you know that such a thing cannot be: between UNIX and
the different hardware options available, a 100% guarantee is not
possible. However, safecat takes every precaution possible in writing
your data.
2. Getting safecat
The source code for safecat may be downloaded from
<http://www.pobox.com/~lbudney/linux/software/safecat.html> or from
sunsite or one of its mirrors. To build and install safecat, follow
the instructions in the included INSTALL file. To summarize:
make
make setup check
3. Copying
safecat is offered under the terms of the BSD License. The included
file COPYING is a copy of the license.
4. Credits
The maildir algorithm implemented in safecat was devised by Professor
D. J. Bernstein, and is implemented in his qmail mailer. Other
(approximate) implementations of the algorithm exist, in procmail,
mutt, and the Emacs mailreader Mew, but to my knowledge this is the
only standalone implementation, and the most complete implementation
outside of qmail itself.
|