# NewsCache --- The free cache server for USENET News.
# Copyright (C) 1996-1998  Thomas Gschwind
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
# ----------------------------------------------------------------

NewsCache

NewsCache is a free cache server for USENET News. NewsCache targets 
the following problems of the current News System. 

If NewsCache is used in addition to a news server, it reduces the
client load of the news server. By connecting the clients to NewsCache
instead of to the news server, multiple requests to the same data will
be requested only once from the news server. In a small test at our
university, we got a hit rate of over 30%, although the interests of
the people accessing NewsCache was relatively wide spread.

NewsCache can also replace leaf node news servers, if not all of the 
articles are permanently accessed by news clients. NewsCache only 
stores those newsgroups and articles being accessed most frequently, 
while still providing a virtual full feed. This reduces the network 
bandwidth between the former news server and its news feed. 
Additionally, it reduces the requirements for disk space and CPU 
power. CPU power is decreased, because no local article numbering has 
to be performed and a smaller database has to be searched.

Installation

General installation instruction can be found in the file INSTALL.
NewsCache specific option of configure can be queried using
configure --help.

If you have installed some of the libraries needed by NewsCache
in places not known to configure, you have to set the LDFLAGS
environment variable. For example EXPORT LDFLAGS=-L/usr/local/lib,
if you have libg++ installed in /usr/local.

If you have problems with the third argument for the accept and
getpeername functions, please define SOCKLEN_TYPE in config.h.
The appropriate type for these functions can be found out using
man accept and man getpeername.

After successful installation, you have to create the configuration
file ${prefix}/etc/newscache.conf. A sample configuration file can be
found in etc/newscache.conf.

Features

Besides caching USENET News, NewsCache provides the following 
additional features.

* Provision of local newsgroups.

* Multiplexing between different news servers giving your users 
  the impression of a single news server holding all those 
  newsgroups.

* Offline News Reading. Whenever you connect to your internet 
  provider all your spooled postings will  be sent off to your 
  news server and all the groups you wish to read will be 
  transferred to your local cache

Documentation

Documentation for the NewsCache and updatenews commands can be found 
in the doc directory.  Manual pages can be found below man. They
will also be installed in the location specified to configure. 
There are also some publications on NewsCache. For a complete list
see the NewsCache-homepage, which is available at
http://www.infosys.tuwien.ac.at/NewsCache/.

Bugs

If you encounter a bug in NewsCache, please send a bug report to
gschwind@complang.tuwien.ac.at. Especially in the case, when a
news reader does not cooperate with NewsCache. Comments and 
patches are also accepted. ;)

Other Useful Comments

When starting NewsCache the first time, you might want to install it
somewhere with a better or cheaper internet connectivity. And take
that spooldirectory home on a ZIP-disk (or whatever you like) and
unpack it in the spool-directory at home since the articles of all the
newsgroups you want to read will be retrieven.  This may be a time and
cost consuming task for the first time. On successive invocation, only
those articles that newly arrived on the news server will be
retrieved.

Latest Release

The latest release is always available from 
http://www.infosys.tuwien.ac.at/NewsCache/
