
Introduction
------------
This kit provides two programs for "linking" RFC822 Mail messages and
RFC1076 Usenet News articles.  Each half of the conversion is handled by a
different program, mail2news or news2mail.  A few utility programs are
also included.

With these programs and the right set of mail aliases and news sys and
active file entries, it is possible to build any set of moderated,
unmoderated, one-way, or bi-directional gateways between any set of news
and mail groups and lists that your little heart desires.

If you run a small site with a couple of mostly-local mailing lists, you
probably don't want to bother setting this stuff up.  Instead, either
convert everything directly to News, or set up local moderated groups.  On
the other hand, if you provide gateway service to the Internet (e.g., UCB)
or large organization, then this stuff is for you.  News, especially with
the proliferation of NNTP (RFC977) and related clients, is generally more
efficient than mail for disk space, CPU cycles, and network usage.

The programs work with Sendmail or MMDF and News 2.11.8 or later.  I don't
know of anything off-hand that would prevent this from working with C news
(did Erik ever say thank you, Henry?).  We've only run the programs on BSD
hosts, but a start toward a System V port has been made.  Who knows, it
might even work right now.

Erik Fair <fair@apple.com> wrote the original version of this package a
couple of years ago as "nrecnews" distributed with 2.11 and as gateway, a
very tricky awk/shell/sed script.  I got copies, and recoded it all in C.
I also completely overhauled nrecnews, changed the names, added some
utility programs, and wrote the documentation.  It seems pretty solid now,
and is processing a few hundred messages a week at BBN.

Installation
------------
Mail2news uses the date parser from the 2.11 netnews distribution; edit
the Makefile to point to where you keep your source.  Next, edit gate.h as
appropriate for your system.  There are some fairly detailed comments
explaining the meaning of the #define's, but good luck.  Unfortunately,
this is one of those things that you have to already know a fair bit about
before you can use it.  As one way up the learning curve, play with the
gag.

Once you've gotten the programs to compile, you'll want to play around
with the alias generator to build stuff.  Erik has a set of M4 macros and
Makefile that you can use if you prefer.  The hard part is in setting up
the right aliases and news entries to get the system up and working.

At this point I should be telling you how to set up the different types of
groups, but I'm too burnt out on this to bother.  If someone has some
words here to get me started, I'd appreciate it.

Flaws
-----
Cross-posting and multiple mail recipients are not handled very well.
Cross-post means each mailing list gets a separate message.  Does
multi-cast fix this, perhaps?

Someone sending mail to lista and listb means the message only goes into
news.list.a, or news.list.b, depending on which gateway alias gets it
first, which isn't great.  One hack, to avoid losing messages, is to munge
the message-id to put the newsgroup name in there.

How do you bypass the "more included than new text" check in inews?

The code in hdr.c is very ugly and could stand to be rewritten.

Finally
-------
I am maintaining this release, but Erik is still involved in the issues
and might be interested in what you have to say.  There is a mailing list
for sites doing this in a big way, primarily on the Internet.

If you don't send e-mail, then use comp.mail.misc and news.software.b;
cross-post.

Rich $alz
rsalz@bbn.com
