NNRPD(8)NNRPD(8)NAMEnnrpd - NNTP server for on-campus hosts
SYNOPSISnnrpd [ -b address ] [ -D ] [ -g shadowgroup ] [ -o ] [ -p
port ] [ -r reason ] [ -R ] [ -s title padding ] [ -t ]
DESCRIPTION
Nnrpd is an NNTP server for newsreaders. It accepts com-
mands on its standard input and responds on its standard
output. It is normally invoked by innd(8) with those
descriptors attached to a remote client connection. Nnrpd
also supports running as a standalone daemon.
Unlike innd, nnrpd supports all NNTP commands for user-
oriented reading and posting.
Nnrpd uses the nnrp.access(5) file to control who is
authorized to access the Usenet database. When
<NNRP_LOADLIMIT in config.data> is not 0, It will also
reject connections if the load average is greater than
that value (typically 16.)
On exit, nnrpd will report usage statistics through sys-
log(3).
Nnrpd can accept multimedia postings that follow the MIME
standard as long as such postings are also acceptable as
SMTP messages. See the discussion of the MIME headers in
inn.conf(5).
Nnrpd can also prevent high-volume posters from abusing
your resources. See the discussion of exponential backoff
in inn.conf(5).
OPTIONS-r If the ``-r'' flag is used, then nnrpd will reject
the incoming connection giving reason as the text.
This flag is used by innd when it is paused or
throttled.
-R This option forces nnrpd to be ``read-only'' and
overrides any ``P'' options in nnrp.access(5). The
startup banner will indicate ``no posting''.
-s As each command is received, nnrpd tries to change
its ``argv'' array so that ps(1) will print out the
command being executed. To get a full display, the
``-s'' flag may be used with a long string as its
argument, which will be overwritten when the pro-
gram changes its title.
-t If the ``-t'' flag is used then all client commands
and initial responses will be traced by reporting
1
NNRPD(8)NNRPD(8)
them in syslog. This flag is set by innd under the
control of the ctlinnd(8) ``trace'' command, and is
toggled upon receipt of a SIGHUP; see signal(2).
-o The ``-o'' flag causes all articles to be spooled
instead of sending them to innd. Rnews -U should
be invoked from cron on a regular basis to take
care of these articles. This option is useful if
innd in accepting articles and nnrpd is started
standalone or using inetd.
-D If specified, this parameter causes nnrpd to oper-
ate as a daemon. That is, it detaches itself and
runs in the background, forking a daemon for every
connection. By default nnrpd listens on the NNTP
port (119), so either innd has to be started on
another port or nnrpd is invoked with the ``-p''
parameter.
-p The ``-p'' parameter instructs nnrpd to listen on
port when started as a standalone daemon using the
``-D'' flag.
-g The ``-g'' parameter instructs nnrpd to try to add
the named group as a supplementary group on shadow
systems. This only works when nnrpd is running in
standalone mode since this call only works when
nnrpd is started as root.
-b The ``-b'' parameter instructs nnrpd to bind to the
specified IP address when started as a standalone
daemon using the ``-D'' flag. This has to be a
valid Internet address in dotted-quad format
belonging to an interface of the local host.
PROTOCOL DIFFERENCES
Nnrpd implements the NNTP commands defined in RFC 977,
with the following differences:
1. The ``ihave'' command is not implemented. Users
should be using the ``post'' command to post arti-
cles.
2 The ``slave'' command is not implemented. This
command has never been fully defined.
3 The ``list'' command may be followed by the
optional word ``active.times'', ``distributions'',
``distrib.pats'', ``moderators'', ``newsgroups'',
``subscriptions'', or ``overview.fmt'' to get a
list of when newsgroups where created, a list of
valid distributions, a file specifying default dis-
tribution patterns, moderators list, a one-per-line
description of the current set of newsgroups, a
2
NNRPD(8)NNRPD(8)
list of the automatic group subscriptions, or a
listing of the overview.fmt(5) file. The command
``list active'' is equivalent to the ``list'' com-
mand. This is a common extension.
4. The ``xhdr'', ``authinfo user'', and ``authinfo
pass'' commands are implemented. These are based
on the reference Unix implementation. See
ftp://ds.internic.net/internet-drafts/draft-barber-
nntp-imp-07.txt
5. A new command, ``xpat header range|MessageID pat
[morepat...]'', is provided. The first argument is
the case-insensitive name of the header to be
searched. The second argument is either an article
range or a single Message-ID, as specified in RFC
977. The third argument is a wildmat(3)-style pat-
tern; if there are additional arguments they are
joined together separated by a single space to form
the complete pattern. This command is similar to
the ``xhdr'' command. It returns a 221 response
code, followed by the text response of all article
numbers that match the pattern.
6. The ``listgroup group'' command is provided. This
is a comment extension. It is equivalent to the
``group'' command, except that the reply is a
multi-line response containing the list of all
article numbers in the group.
7. The ``xgtitle [group]'' command is provided. This
extension is used by ANU-News. It returns a 282
reply code, followed by a one-line description of
all newsgroups that match the pattern. The default
is the current group.
8. The ``xover [range]'' command is provided. It
returns a 224 reply code, followed by the overview
data for the specified range; the default is to
return the data for the current article.
9. The ``xpath MessageID'' command is provided; see
innd(8).
10. The ``date'' command is provided; this is based on
the draft NNTP protocol revision. It returns a
one-line response code of 111 followed by the GMT
date and time on the server in the form YYYYMMDDhh-
mmss.
SHADOW PASSWORD SYSTEMS
On systems that have a shadow password file, nnrpd tries
to add the group ``shadow'' as a supplementary group if it
is running in standalone mode. On many systems, members of
3
NNRPD(8)NNRPD(8)
that group have read permission for the shadow password
file. The ``-g'' option can be used to change the group
that nnrpd tries to become a member of.
HISTORY
Written by Rich $alz <rsalz@uunet.uu.net> for InterNet-
News. Overview support added by Rob Robertston <rob@vio-
let.berkeley.edu> and Rich in January, 1993. Exponential
backoff (for posting) added by Dave Hayes in Febuary 1998.
This is revision 1.1.2.1, dated 1999/06/12.
SEE ALSOctlinnd(8), innd(8), inn.conf(5), nnrp.access(5), sig-
nal(2), wildmat(3).
4