inn | INSTALL

inn-2.1/INSTALL 2. newsfeeds (REQUIRED)

The newsfeeds file determines how incoming articles are redistributed to your peers and to other INN processes. The newsfeeds file is very versatile and contains dozens of options; we will touch on just the basics here. The newsfeeds(5) man page contains more detailed information.

The newsfeeds file is organized as a series of feed entries . Each feed entry is composed of four fields separated by colons. Entries may span multiple lines by using the backslash (\) to indicate that the next line is a continuation of the current line.

The first field in an entry is the name of the feed . It must be unique, and for feeds to other news servers it is usually set to the actual hostname of the remote server (this makes things easier). The name can optionally be followed by a slash and an exclude list. If the feed name or any of the names in the exclude list appear in the Path line of an article, then that article will not be forwarded to the feed as it is assumed that it has passed through that site once already. The exclude list is useful when a news server's hostname is not the same as what it puts in the Path header of its articles, or when you don't want a feed to receive articles from a certain source.

The second field specifies a set of desired newsgroups and distribution lists, given as newsgroup-pattern/distribution-list. The distribution list is not described here; see the newsfeeds(5) man page for information. The newsgroup pattern is a wildmat-style pattern list as described above, with one minor addition: patterns beginning with "@" will cause any articles posted to groups matching that pattern to be dropped , even if they match patterns for groups that ARE wanted. Otherwise, articles that match both "want" and "don't want" patterns are sent.

The third field is a comma-separated list of flags that determine both the type of feed entry and sets certain parameters for the entry. See the newsfeeds(5) man page for information on the flag settings.

The fourth field is a multi-purpose parameter. Its usage depends on the settings of the flags in the third field. Again, see the man pages for more information.

Now that you have a rough idea of the file layout, we'll begin to add the actual feed entries. First we'll set up the special ME entry. This entry is required and serves two purposes. First, the newsgroup pattern specified for this entry is prepended to the newsgroup list of all other feeds; second, the ME entry's distribution pattern determines what distributions are accepted from remote sites by your server. The default ME entry in the newsfeeds file probably won't suit your tastes; a good starting point would be a subscription pattern of "*,!junk,!local*" and a distribution list of "!local". This will mean that by default all sites will receive all groups except the junk group and groups in the local.* hierarchy, and that you will receive any distributions except those marked as "local" (any such articles are probably being leaked out by a misconfigured server).

Next we'll set up special entries for the overchan, innfeed and (if you're not using cnfs or timehash) crosspost programs. There are already entries for these programs in the default newsfeeds file; you need only uncomment them and edit the pathnames to the programs to match your setup (there are two entries for overchan, one for use with the Storage Manager API and one for use without it; uncomment only the one matching your setup) . Assuming you installed INN under the default path of /usr/local/news then the appropriate feed entries would look like this:

  For traditional storage method:
overview!:*:Tc,WO:/usr/local/news/bin/overchan crosspost:*:Tc,Ap,WR:/usr/local/news/bin/crosspost innfeed!:\ !*\ :Tc,Wnm*,S16384:/usr/local/news/bin/startinnfeed -y
For cnfs or timehash storage method:
overview!:*:Tc,Ao,WhR:/usr/local/news/bin/overchan innfeed!:\ !*\ :Tc,Wnm*,S16384:/usr/local/news/bin/startinnfeed -y
Finally, you need to add entries for any actual sites to which you will be feeding articles. They will all have the same general format:
my-feed-site.domain.com/exclude-list\ :newsgroup-list\ :Tm:innfeed!
Set the feed name to the name of the remote site, and if the site uses a name other than its host name for Path headers then put that in the exclude-list (if your exclude list is empty, leave out the "/" after the site name as well). The newsgroup list can be left empty if the default newsgroup pattern from your ME entry is sufficient; otherwise, set the newsgroup pattern appropriately. The last line should not be modified.

inn | INSTALL