nnrpd - NNTP server for on-campus hosts


SYNOPSIS

       nnrpd [ -b address ] [ -D ] [ -g shadowgroup ] [ -i ] [ -o
       ] [ -p port ] [ -R ] [ -r reason ]  [  -S  ]  [  -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 readers.conf(5)  file  to  control  who  is
       authorized   to   access   the   Usenet   database.   When
       <NNRP_LOADLIMIT in include/config.h> 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  also  prevent high-volume posters from abusing
       your resources. See the discussion of exponential  backoff
       in inn.conf(5).


OPTIONS

       -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.

       -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 process 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.   Note  that  with this parameter, nnrpd
              continues running until killed.  This means that it
              reads  inn.conf(5)  once on startup and never again
              until  restarted.   nnrpd   should   therefore   be
              restarted if inn.conf is changed.

       -g     On  systems that have a shadow password file, nnrpd
              tries to add the group ``shadow'' as  a  supplemen­
              tary  group if it is running in standalone mode. On
              many systems,  members  of  that  group  have  read

              ``-g'' parameter instructs nnrpd to try to add  the
              named group as a supplementary group on shadow sys­
              tems instead of ``shadow''.   This  only  works  if
              <HAVE_GETSPNAM inn include/config.h> is defined and
              nnrpd is running in standalone mode since this call
              only works when nnrpd is started as root.

       -o     The  ``-o''  flag causes all articles to be spooled
              instead of sending them to innd.  Rnews with ``-U''
              flag should be invoked from cron on a regular basis
              to take care of these articles. This flag is useful
              if  innd in accepting articles and nnrpd is started
              standalone or using inetd.

       -p     The ``-p'' parameter instructs nnrpd to  listen  on
              port  when started as a standalone daemon using the
              ``-D'' flag.

       -R     This option forces nnrpd to be ``read-only''.   The
              startup banner will indicate ``no posting''.

       -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.

       -S     If specified, nnrpd start  a  negotiation  for  SSL
              session  as  soon  as connected.  To use this flag,
              <--with-openssl at configure> must be specified.

       -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
              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).


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.

              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
              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://ftp.ietf.org/internet-drafts/draft-ietf-nnt­
              pext-imp-04.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(   draft-ietf-

              response code of 111 followed by the GMT  date  and
              time on the server in the form YYYYMMDDhhmmss.


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.14.2.3, dated 2000/11/16.


SEE ALSO

       ctlinnd(8), innd(8), inn.conf(5), signal(2), wildmat(3).


Man(1) output converted with man2html