Welcome to bsmtp for Sendmail, Version 1.01


Copyright (c) 1995-1999 Hannah Schroeter <hannah@mamba.pond.sub.org>

See COPYING for copyright, license and copying conditions, as well as
the warranty disclaimer (in short: No warranty for any damage from this
software).

This package supplies batch SMTP support for sendmail, both incoming
and outgoing.

Included are
* bsmtp.m4 (mailer description for sendmail 8's configuration package)
  This comes in four versions (for sendmail 8.6 up to 8.9)
* bsmtp (mailer for outgoing mails - just appends to batches)
* batcher (send prepared batches - via separated transmitter scripts.
  This shell script batcher may eventually go away)
* batcher.new (replacement for batcher with support for flock() file
    locking)
* transmitter.* (sample transmitter scripts,
  included are n-rsmtp:  No compression, uux -p -r -gA system!rsmtp,
               c-cbsmtp: compress, uux -p -r -gA system!cbsmtp,
               c-rcsmtp: compress, uux -p -r -gA system!rcsmtp,
               g-rcsmtp: gzip, uux -p -r -gA system!rcsmtp,
               g-rgsmtp: gzip, uux -p -r -gA system!rgsmtp)
* rsmtp (incoming rsmtp)
* rcsmtp (incoming compressed/gzipped rsmtp - linked to rgsmtp, cbsmtp, gbsmtp
  on installation)
* rsmtp.wrapper (little C program which sets eff. uid to real uid, then exec's
  rsmtp)
* _bqueue (little C program, which lists the bsmtp queue)
* bqueue (sample frontend for _bqueue to beautify output)

* some contributions (see contrib/README for information)

*NOT* included are:
* Real documentation. I have got an offer from s/o to write
  documentation (and perhaps to help me also otherwise in the
  further development of this package). Perhaps this will yield
  better documentation for the package...

Prerequisites are
* UNIX
* perl4 or perl5
* sendmail 8
* gzip, compress (the latter only if you want to use the compress transmitter
  scripts)

Usage of the programs:
bsmtp -f sender destination_host destination_user ...
  Transmits mail from stdin into batch for host destination_host.
  Dot escaping has already to be performed (ensured by sendmail mailer
  flag in bsmtp.m4)
rsmtp/bsmtp
  (in fact rsmtp.wrapper, installed as the publicly available rsmtp)
  reads bsmtp batch from stdin and executes it
rcsmtp/rgsmtp/cbsmtp/gbsmtp
  Executes compressed/gzipped batch from stdin
batcher method hostname
  sends batch to the named host with the given transmission method (which is
  just a suffix for transmitter.*, i.e. method n-rsmtp turns into a call
  of transmitter.n-rsmtp).
bqueue
  lists the bsmtp queues

Suggestions, additions, error reports and so on are welcome via mail to
Hannah Schroeter <hannah@mamba.pond.sub.org>. (The old address will still
work for a while.)

I'm especially interested in package information files for major
free UNIX (clone) installations (Debian, FreeBSD, Redhat,
<insert_your_favorite_installation_here>), which I could bundle
with this package. Please write something about the packaging scheme
(or include the according excerpts from the documentation).

And I'm interested in information on the platforms, under which
the package runs (and changes needed to make it run).

Licence: This package used to be licenced under the GNU GPL, version 2
up to release 0.95b. That is now changed to a BSD style copyright, which
is more permissive. Permission is hereby granted to use and redistribute
older versions of the package under the new conditions as well.
Please ask the contributors for permission, if you want to use or
redistribute a contribution in a way permitted by the new conditions,
but contradicting to the GNU GPL.

From post 0.99 on, I removed the restrictions 3. and 4. from the license.
That change may be applied to older versions, too.


Supported systems:
* BSD/OS 2.0, 2.1: This used to be the main development platform till
  release 0.95a.
* Linux: You must perhaps change some paths (just enter the correct
  ones while configuring the package)
  Tested on an old DLD Linux box, some Debian boxen.
  0.95 worked after nearly the same fixes as those of 961023 (see
  ChangeLog) on a Debian GNU/Linux system. (Some paths were changed
  during configuration)
* Risc iX: (This is an old 4.3BSD Net/1 derivative from Acorn)
* OpenBSD 2.0 up to 2.5-current:
  You can include this as a SUBDIR entry into a <bsd.subdir.mk> style
  Makefile. Or just do
  make -f Makefile.bsd-wrapper; make -f Makefile.bsd-wrapper install
  This is the main development platform since release 0.95a

Though this list is rather small, I expect the package to
run on the very most UNIXes/clones. Be careful, that you *don't*
use flock() locking if that's an emulation that keeps the
braindead POSIX/System V semantics of the fcntl() locking mechanism.
If you must count yourself among the poor ones on such boxen,
use lockfile locking instead. (Be careful about stale locks!)

There is even someone, who uses part of this package with SMail.
Perhaps I can include some material about that in one of the next
releases.
