NAME
noffle.conf − Configuration file for NOFFLE news server
DESCRIPTION
The NOFFLE news server - see noffle(1) - takes its configuration from a configuration file. By default this file is /etc/news/noffle.conf.
noffle.conf is a normal text file containing NOFFLE settings, one per line.
Leading whitespace on a line is ignored, as is any comment text. Comment text begins with a ’#’ character and continues to the end of the line. Blank lines are permitted.
SETTINGS
server <hostname>[:<port>] [<user> <pass>]
Name of the remote server. If no port given, port 119 is used. Username and password for servers that need authentication (Original AUTHINFO). The password may not contain white-spaces. If there are multiple server entries in the config file, all of them are used for getting groups. In this case the first server should be the one of your main provider. Note that you must always run ’noffle --query groups’ after making changes to the server entries.
getgroups <group pattern> [, <group pattern> ...]
Only retrieve from the most
recently specified server newsgroups that match the
specified patterns. The patterns can contain
wildcards, and there can be multiple getgroups
lines. For further details on getgroups processing in
tandem with omitgroups, see the section on
omitgroups following.
Default: All groups
omitgroups <group pattern> [, <group pattern> ...]
Don’t retrieve from the
most recently specified server newsgroups that match the
specified patterns. The patterns can contain
wildcards, and there can be multiple
omitgroups lines. When processing a new newsgroup
name, it is checked first to see if it appears on the
getgroups list (if any). If not, the group is
rejected. Then the group is checked to see if it appears on
the omitgroups list. If it does not, the group is
accepted as a group NOFFLE will list and collect as
required.
Default: No groups
max-fetch <n>
Never get more than <n>
articles. If there are more, the oldest ones are discarded.
Default: 300
from-domain <domain>
When invoked as inews(1)
NOFFLE will add a From: line to posts that lack one.
The address given uses the userid of the user who invoked
inews and the specified domain.
Default: The system domain
log-debug <log category> [<log category ...]
Log debugging information from
the specified log category or categories. Logging is via the
system logging daemon syslogd(8) (to the debug
facility) and additionally to stderr when running
interactively. The available categories for logging are
all, none, config, auth,
control, expire, fetch, filter,
newsbase, noffle, post,
protocol, requests and server. The
noffle category is automatically selected whenever
any other category is selected. These messages are in
addition to messages logged to the system logging daemon
error, information and notification facilities.
Default: none
organization <organization>
When invoked as inews(1)
NOFFLE will, unless the -O flag is specified, add an
Organization: line to posts that lack one. If no
organization is specified, the line is not added.
Default: <empty string>
mail-to <address>
Receiver of failed postings. If
empty then failed postings are returned to the sender
(taking the address from the article’s Reply-To,
Sender, X-Sender or From field, in this order).
Default: <empty string>
auto-unsubscribe yes|no
Automatically remove groups
from fetch list if they have not been accessed for a number
of days. Groups are only unsubscribed if there are fresh
articles arriving and remaining unread.
Default: no
auto-unsubscribe-days <n>
Number of days used for
auto-unsubscribe option.
Default: 30
thread-follow-time <n>
Automatically mark articles for
download in thread mode, if they are referencing an article
that has been opened by a reader within the last <n>
days.
Default: 7
connect-timeout <n>
Timeout for connecting to
remote server in seconds.
Default: 30
auto-subscribe yes|no
Automatically put groups on
fetch list if someone reads them. <mode> can be full,
over, thread (depending on the fetch mode) or off (do not
subscribe automatically). Condition for putting a group on
the list is that an article is opened. For this reason there
is always a pseudo article visible in groups that are not on
the fetch list.
Default: no
auto-subscribe-mode <group pattern> full|thread|over
Mode for auto-subscribe option
for groups that match the given pattern.
Default: none
default-auto-subscribe-mode full|thread|over
Default mode for auto-subscribe
option. Used for all groups that do not match a pattern
specified with auto-subscribe-mode entries (if any).
Default: over
info-always-unread yes|no
An information article is
presented for all unsubscribed newsgroups. If auto-subscribe
mode is off, there is a possibility of someone reading the
article but forgetting the instructions therein and not
knowing how to return to a read article. This option causes
the information article always to be present as an unread
article in a group when auto-subscribe if off. It does this
by incrementing the article number of the information
article every time it is read.
Default: yes
authenticate-client yes|no
Insist that clients
authenticate themselves using the NNTP AUTHINFO
USER/AUTHINFO PASS transaction before any news is served.
This option is recognised only when NOFFLE has been built
with authentication enabled. The form of the authentication
is determined at compile time; either PAM is used (with a
service name "noffle"), or the userlist file is
scanned. This file, by default /etc/noffle.users, is
a text file. Spaces, comments starting with ’#’
and blank lines are ignored. Other lines must contain
space-separated ’username password’ pairs. For
security reasons the userlist file must be a regular file,
not a link, and must be owner readable only. Finally, note
that the NNTP AUTHINFO USER/AUTHINFO PASS transaction is not
encrypted in any way, and so must itself be considered
insecure.
Default: no
post-locally yes|no
Place articles posted to
external servers in the local aticle database immediately.
Some servers may rewrite Message-IDs, which will cause
duplicate postings of this option is enabled. Also, if for
some reason the post to the remote server fails, the article
still exists in the local database, which may be a source of
some confusion.
Default: no
replace-messageid yes|no
Always replace the Message-ID
of a posted article with a Message-ID generated by NOFFLE.
NOFFLE will always add a Message-ID if none is present, or
replace a Message-ID that does not meet the basic formatting
and content requirements for a Message-ID. However, some
news readers may generate Message-IDs that are not accepted
by some servers (for example the server may insist the
Message-ID domain is part of the server domain) or may not
always be unique. In either of these cases you may prefer to
have NOFFLE always replace the Message-ID.
Default: no
hostname <fully.qualified.domain.name>
Specify right-hand side of
Message-IDs generated by NOFFLE. If omitted, the fully
qualified domain name of your system will be used. If you do
not have a fully qualified domain name, your upstream
newsserver or someone else might allow you to use a
subdomain name.
Default: <the fully qualified domain name of your
system>
append-reply-to yes|no
Append a
’Reply-To:’ header to messages posted without
it. The address from the ’From:’ header is used.
Though this might seem pretty useless at first glance it may
be desireable as some providers were known to overwrite the
’From:’ header.
Default: yes
path-header <path header content>
Articles posted without a Path:
header have one added by NOFFLE. When path-header has
its default value (empty) the header content is
"<hostname>!not-for-mail". Use the
path-header setting to provide alternate content for
the Path: header. This will very rarely be necessary.
Default: <empty string>
default-expire <n>
The default expiry period, in
days. An expiry period of 0 means "never".
Default: 14
noffle-user <n>
The username under which NOFFLE
normally runs. If NOFFLE is invoked by root, it will drop
its real and effective UID to this user as soon as possible.
Default: news
noffle-group <n>
The group under which NOFFLE
normally runs. NOFFLE will change to this real and effective
GID as soon as possible.
Default: news
expire <group pattern> <n>
The expiry period for a
newsgroup or set of newsgroups, in days. The expiry pattern
can contain wildcards, and there can be multiple
expire lines. When checking the expiry period for a
group, the expiry patterns are checked in the order in which
they appear in /etc/news/noffle.conf until the first
match occurs. If no pattern matches the group name, the
default expiry period is used. An expiry period of 0
means "never".
Default: no
filter <filter specification>
Add the specified filter to the
list of filters to be applied to incoming articles. Filters
are applied in the order in which they appear in
/etc/news/noffle.conf and are further described in
the section FILTERS below.
Default: No filters
GROUP NAME WILDCARDS
NOFFLE uses a wildcard format that closely matches filename-style wildcards. alt.binaries.*, for example, matches all newsgroups under the alt.binaries hierarchy. A full description of the format (known as wildmat patterns) is as follows.
\x |
Turns off the special meaning of x and matches it directly; this is used mostly before a question mark or asterisk, and is not special inside square brackets. | ||
? |
Matches any single character. | ||
* |
Matches any sequence of zero or more characters. |
[x...y]
Matches any single character specified by the set x...y. A minus sign may be used to indicate a range of characters. That is, [0−5abc] is a shorthand for [012345abc]. More than one range may appear inside a character set; [0-9a-zA-Z._] matches almost all of the legal characters for a host name. The close bracket, ], may be used if it is the first character in the set. The minus sign, −, may be used if it is either the first or last character in the set.
[^x...y]
This matches any character not in the set x...y, which is interpreted as described above. For example, [^]−] matches any character other than a close bracket or minus sign.
FILTERS
NOFFLE supports basic filtering on incoming articles. Articles to be downloaded can be matched against one or more criteria and matching articles are marked for download using one of the group subscribe modes full, over or thread. Alternatively the filter may specify that the article mode is discard in which case neither the article nor the article overview will be downloaded.
A filter configuration line consist of one or more filter specifications following the filter keyword on the line. The available specifications are:
action = full|over|thread|discard|default. Specifies the action to be taken if the filter matches. If not specified or specified as default, the action is as specified by the group’s subscription mode.
group = <group pattern>. Matches if any group in which the article appears matches the specified group pattern.
subject = <regular expression>. Matches if the article subject matches the given regular expression. See the section on regular expressions below.
from = <regular expression>. Matches if the article From: address matches the given regular expression. See the section on regular expressions below.
msgid = <regular expression>. Matches if the article message ID matches the given regular expression. See the section on regular expressions below.
bytes < or = or > <number>. Matches if the number of bytes in the article is less than, equal to, or greater than the given number.
lines < or = or > <number>. Matches if the number of lines in the article is less than, equal to, or greater than the given number.
refs < or = or > <number>. Matches if the number of articles referenced by the article is less than, equal to, or greater than the given number.
reference = <regular expression>. Matches if one of the message IDs in the reference line matches the given regular expression. See the section on regular expressions below.
xposts < or = or > <number>. Matches if the number of groups the article is posted to is less than, equal to, or greater than the given number.
date < or = or > <date expression>. Matches if the article is older, from the same day or newer than the given date expression. See the section on date expressions below.
older = <date expression>. Equals date <
newer = <date expression>. Equals date >
post-status = mod|yes|no. Matches if the current newsgroup is moderated, not moderated or closed. Unlike the group filter, only the current newsgroup is checked.
Numbers may have a suffix of ’k’ or ’m’. As you might expect, ’k’ indicates the number is to be multiplied by 1024 and ’m’ indicates it is to be multiplied by 1024*1024. Thus 10k is 10240 and 1m is 1048576.
For example, the following filters download all articles in groups in the alt.binaries tree in full if they are < 10k in size, otherwise downloads overviews.
filter
group=alt.binaries.* bytes < 10k action=full
filter group=alt.binaries.* action=over
This filter discards all articles with a subject resembling the infamous "$$$ Make Money Now! $$$".
filter subject="\$*.*Make.*[M|m]oney.*\$" action=discard
REGULAR EXPRESSIONS
NOFFLE uses extended POSIX-style regular expressions in its filters. Regular expressions are a powerful means of describing patterns that match text. A full description is to be found in regex(7).
DATE EXPRESSIONS
NOFFLE uses very simple date expressions. You can use fixed dates in rfc-2822 style or variable dates:
date="14 May 2002 18:32:50 +0200" matches any article sent up to 24 hours before or after the above fixed date. Please don’t forget the timezone specification.
date>"now+1.5" matches any article newer than 36 hours from the current date.
date="lastupdate-14" matches any article older than 14 days since the date of the last noffle --fetch or noffle --query groups from the current newsserver.
date="invalid" matches any article with an invalid date header.
SEE ALSO
AUTHORS
Markus
Enzenberger <me [AT] markus-enzenberger.de>
Volker Wysk <volker.wysk [AT] student.de>
Jim Hague <jim.hague [AT] acm.org>
Uwe Hermann <uh1763 [AT] bingo-ev.de>
Mirko Liss <mirko.liss [AT] web.de>
1998-2003.