			       OVERVIEW

Leafnode+ is a USENET software package designed for small sites, with
a few tens of readers and only a slow link to the net.

It consists of three programs:

 - Leafnode is the NNTP server.  It talks to the normal news clients,
   and stores readership data.

 - Fetchnews is the NNTP news-gatherer.  It looks at the readership
   data Leafnode stores, and selects what groups to pull news from.

 - Texpire is responsible for deleting old and uninteresting news.  It
   deletes all discussion threads that are old and not recently read.

Only groups that someone has been reading in the past week are fetched
from the upstream NNTP server.  When someone stops reading a group,
fetchnews will stop reading that group a week later, and when someone
starts reading a group, fetchnews will grab all the articles it can in
that group the next time it runs.

Here are Leafnode's distinguishing features:

 - Uses very little disk space and bandwidth compared to other
   servers.  Obviously truer for 3-user sites than for 30-user, and
   probably wholly untrue for 300-user sites.

 - Easy configuration and maintenance.  Leafnode tries very hard to
   recover automatically from error situations.

This list of Leafnode's weaknesses has been moved here from DONTREADME
due to popular demand:

 - Loses news.  In just about any error situation, leafnode tries to
   fix its problems by deleting the offending article.  But a problem
   of disconnection was fixed.

 - Scales very badly.


			FILES AND DIRECTORIES

Leafnode puts its files in three separate directories: The spool
directory, the library directory, and the binaries directory.

The spool directory is where news is stored, and nothing else.  This
defaults to /var/spool/news and can be changed in the config file.
There are some special directories here; see the leafnode(8) man page.

The library directory contains the configurarion file, the newsgroup
information file, and any more long-lived supporting files that may be
added in the future.

The binaries directory, /usr/local/sbin by default, contains the three
executable programs, texpire, fetchnews and leafnode.


			    TIPS & TRICKS!

The Directory where groupinfo is stored an the news-spool should stay
on different directories!


			       HISTORY

Leafnode was originally created by Arnt Gulbrandsen
<agulbra@troll.no>.  But he didn't have enough time to maintain it.
October 1998, he decided to stop maintaining it.  Leafnode-1.4 is a
last released codes from him.

There is Markus's leafnode-1.5 created by Markus Enzenberger
<enz@cip.physik.uni-muenchen.de>.  It has a feature named "delaybody."
It makes leafnode down load only header at first, then if someone tries
to retrieve it from leafnode server, leafnode marks it to future
down loading whole article.

There are also Cornelius's leafnode-1.6 and 1.7 created by Cornelius
Krasel <krasel@wpxx02.toxi.uni-wuerzburg.de>.  It can use multiple
upstream servers and screen abuse articles by checking results of
"HEAD" command.  It also has "delaybody" ability,


			FEATURES OF LEAFNODE+

Leafnode+ has been derived from leafnode-1.4.  But it has following
NEW features.

 - It can use multiple upstream servers using different users and
   passwords.  It also supports ssh forwarding function.
 - It isn't crashed by a sudden disconnection from the upstream server
   like old leafnode did.
 - It has new filtering options, by the number of newsgroups for
   cross-post, by the size of article, etc.
 - It is much faster than old leafnode if you want to check many
   newsgroups, because it scans all interesting newsgroups by using
   asynchronous transmission at first.
 - It can understand "Supersedes" header, so you can fetch the
   news.answers newsgroup.
 - New nntpd responds correct answer like as "22X n a XXX" for "HEAD"
   and other commands, so Gnus and other news readers work well with
   leafnode+.
 - Texpire can handle a specific expire date for particular groups.
 - The timeout date, which is the date interesting newsgroups will
   be uninteresting, is operated correctly.
 - It uses "XOVER" command instead of "XHEADER message-id" command (it
   is used other leafnodes) to screen abuse articles.  This may make
   leafnode little slow if user doesn't use screening function because
   transmitted information by using "XOVER" is larger than it by using
   "XHEADER."  But if you want to screen them, this "XOVER" make
   fetchnews fast.
 - But it doesn't have "delaybody" ability.  If you want to use this,
   please request me.  I'll consider about it if there are requests.


			       SEE ALSO

There is a page about leafnode+ at
<http://www.pobox.com/~jam/leafnode+/>.  There are also two mailing
lists leafnode@egroups.com and leafnode-ja@egroups.com; they are a
list for English and Japanese respectively.


Arnt Gulbrandsen <agulbra@troll.no>
Modified by Kazushi (Jam) Marukawa <jam@pobox.com>

