Leafnode is a software package that implements a store & forward NNTP proxy (client and server) that supports TCP connections across IPv4 and IPv6. Leafnode can be used to give a regular newsreader off-line functionality, merge news articles from several upstream newsservers for newsreaders that only support one server well and avoid duplicate news download for a small LAN with multiple users.
Leafnode is intended for use at home or in small offices. Scalability for large user or newsgroup counts has not been a design goal.
Leafnode is easy to install, requires no maintenance and can run unattended. It will recover from most problems without user intervention if possible. No configuration of a newsfeed at the upstream server is necessary, leafnode looks to the upstream server like a regular newsreader program.
Leafnode will automatically figure which newsgroups are read locally and will download them, and it will stop downloading from these newsgroups if they haven't been read locally.
It allows for simple filters to limit the number of articles downloaded, the size or exclude articles with particular headers (Perl-compatible regular expression match). It has a mode to optionally download only headers in a first run, lets the user mark these through his newsreader (note that not all newsreaders will work) and download the full article texts in the next run.
Leafnode works perfectly with most common newsreaders either via NNTP or with traditional spool access.
Leafnode is an Open-Source package and runs on Linux, FreeBSD, Solaris, and probably most Unix flavours.
What's New in This Release: [ read full changelog ]
· Fix logging if texpire unlinks files without further hardlinks from
· Fix potential segfault on libcs that do not catch NULL for %s formatting
· (several GNU libc versions do) when trying to retrieve delayed bodies from
· corrupt article headers. Pretend success, to purge article number from
· subscription file.Bug reported by Chris Carr.
· Fix & change "noactive" so that it can be overridden by "fetchnews -f", as documented in config.example.
· Regression as side effect of 1.9.50 fix, reported by Jesse F. Hughes.
· Fix logged IP address in "connected to..., reply:" message when compiled without IPv6 support.
· Fixes Mandriva Bug #45605, reported by David W. Hodgins.
· Print connected to... to console as well at proper verbosity level, found by maintainer while debugging aforementioned bug.
· Only emit warning that no server with posting permission was found if that'sactually needed. Reported by Christian Weiske.
· If corrupted articles had been detected, fetchnews -x NNN would not be able to re-fetch the said article because a 0-sized file remained in message.id, making fetchnews believe the article was in the spool.
· 0-sized message.id/NNN/ files are now purged when checking if the article is already in the spool. Reported by Peter Bauernfeind. (de.comm.software.newsserver post, May 2008)
· Change interface enumeration to track incompatible NetBSD 5 changes.The latter led to bogus connection refusals in NNTPD.SourceForge Bug #2700756, by Aleksey Cheusov, fix suggested by Roy Marples.
· Add support for SIOCGIFALIAS where available (BSD) in order to obtain netmasks for 4.4BSD-style IP aliases.
· getifaddrs() has been suggested as well, but it isn't available everywhere, so we would have to keep the old code around anyways, and we can just fix that rather than introduce alternative code branches.
· When creating a Path: header (because the newsreader did not do that), use "not-for-mail" instead of NEWS_USER (usually "news") as the user component.
· This seems to resolve propagation issues with 2nd-hop-upstreams, as reported in Debian Bug#459980 by Michael Weitzel, with Universität Siegen, Germany.
· When writing to client fails, log decoded errno, too.
· This can help debugging certain firewall misconfigurations more easily.
· Undoing a wordwrap in configure.ac allows for bootstrapping on Cygwin.
· Drop obsolete mysetvbuf().
· leafnode-version now supports an additional "-v" mode to print more
· information on the installation. The output then is similar, but not identical due to different feature sets to the way leafnode-2 prints it.