This directory contains unsupported contributions to INN. Most of these
programs are of interest to a limited set of sites, require some manual
modifications to make work, and/or are separately maintained independent
of INN. Programs in here may or may not have been tested on the latest
version of INN, so keep that in mind when trying them out. The INN
developers may not be able to answer bug reports for these utilities; it's
best to send them to the original author.
Volunteers who would like to take particularly useful applications in this
directory and make them suitable for inclusion in INN proper are heartily
encouraged, but discuss this on <email@example.com>. Sometimes
there's a reason why this hasn't already been done or something specific
that's needed before they can be included.
Type "make <program>" to build any of the following programs and then copy
the binary to somewhere on your PATH to use it. For details on what each
program does, see below, as well as the comments at the beginning of each
file (if any).
In addition to these files, also see the contrib section of the INN FTP
site at <ftp://ftp.isc.org/isc/inn/contrib/> for more software designed
to work with INN.
Analyzes which newsgroups are receiving the most traffic and which
peer is most responsible for each high-traffic group.
A compressing version of archive, writing out .gz files instead of
plain text files. May not work with the storage API without some
changes to use sm.
An authenticator that checks a username and password against a MySQL
database. Could also be easily modified to check against any other
type of database that Perl's DBI module can talk to.
Prints informations about the current state of innfeed's backlog, if
Performs various cleanups on the newsgroups file.
Counts the groups in a bunch of Xref records.
Sits in a data stream and delays it by some constant period of time.
Mostly useful for delaying innfeed feeds to allow cancels a chance to
remove articles before innfeed sends them to your peers. See the
beginning of the file for an example of how to use it.
Automatically builds expire.ctl based on current available disk space
and a template, adjusting the expiration times of groups based on a
weight and the available space. Uses a template expire.ctl.ctl file;
see the end of expirectl.c for a sample.
Scans the news log files and generates a file giving readership counts
by newsgroup. Used by makeexpctl and makestorconf.
Performs various cleanups and sanity checks on the history database.
Merges your inn.conf settings with the inn.conf man page to make it
easier to be sure that your settings match what you want. Edit this
script to add the correct paths to the man page; see the comments at
the beginning of this script.
Copies individual sections from innreport's HTML files.
Generates an expire.ctl based on what newsgroups are actually read.
Uses data generated by findreadgroups. This script will require
editing before being usable for your server.
Generates a storage.conf file putting frequently read newsgroups into
timecaf rather than CNFS. Uses data gefnerated by findreadgroups.
This script will require editing before being usable for your server.
Creates a CNFS cycbuff; see the comments at the beginning of
Locks files given on the command line into memory using mlock (only
tested on Solaris). Useful primarily for locking the history files
(history.hash and history.index) into memory on a system with
sufficient memory to speed history lookups in innd. This seems to
help some systems quite a lot and others not at all.
A ckpasswd replacement that checks user passwords against a Mailman
list configuration database. See the comments at the top of the
script for information on how to use it.
Opens an NNTP channel to a server and takes a peek at various response
times. Can check the round-trip time and the history lookup time.
See the comments at the beginning of the source for more details.
Attempts to pull news articles out of CNFS cycbuffs. Useful for
Clears a CNFS cycbuff; see the comments at the beginning of
Takes a list of tokens on stdin and respools them, by retrieving the
article, storing it again, and then calling SMcancel on the previous
instance of the article. Note that after running this program, you'd
need to rebuild the history and overview, since it doesn't update
Tries to increase the file descriptor limits to the maximum allowed by
the system since INN and related programs can be file descriptor hogs.
It then starts INN.
Sample systemd-style init script for INN.
Parses and summarizes the log files created by the history profiling
A dynamic expire daemon for timehash and timecaf spools. It should
be started along with innd and periodically looks if news spool space
is getting tight, and then frees space by removing articles until
enough is free. It is an adjunct to (not a replacement for) INN's
Given two active files, attempts to produce a good set of wildmat
patterns for newsfeeds to minimize the number of rejects. For full
documentation, run "perldoc tunefeed".