NAME
snntpd - small news server
SYNOPSIS
snntpd [-t timeout] [-P] [-S] [logger...]
DESCRIPTION
snntpd is a small news server. It needs to be run under inetd or
tcpserver, as root or as the owner of /var/spool/sn. snntpd does not
fork into the background. It expects to read and write from and to the
network on descriptors 0 and 1.
ARGUMENTS
logger... (usually /usr/bin/logger) is taken to be a logging program,
and all log output is piped to it. If logger... is not specified, log
messages are directed to descriptor 2.
OPTIONS
-t timeout
specifies how long snntpd should wait for input before it gives
up and exits. timeout is in seconds and defaults to 600.
-P snntpd includes it’s pid in log output.
-S Suppress NNTP greeting on startup. This is useful if you want
to perform authentication before running snntpd, or want to
provide your own greeting, from a wrapper.
POSTING AND POSTING PERMISSIONS
Posts are usually handled externally by the /usr/sbin/SNPOST script,
which is responsible for fine-grain posting control; handling of
control messages; and the ultimate distribution of the posted article.
snntpd permits or denies posting in a very simple manner:
If /var/spool/sn/.nopost exists, posting is not allowed.
Otherwise, if the environment variable POSTING_OK is not set, posting
is not allowed.
Otherwise if POSTING_OK is set (to the empty string), posting is
generally allowed, and all POSTed articles are piped to the SNPOST
script, which has the final say in the matter. The value of
$POSTING_OK is not currently used, but is reserved.
FILES
/var/spool/sn/.fifo
If this file exists, and is a fifo, snntpd will write the name
of a newsgroup into it as that newsgroup becomes the current
one. If the fifo does not exist snntpd will not create it.
/var/spool/sn/.noservice
If this file exists, snntpd will display its first line and
exit. If the file can’t be read or is empty, a default message
is displayed. This is useful for temporarily disabling the news
server while you perform any maintenance.
/var/spool/sn/.nopost
See POSTING PERMISSIONS above.
/var/spool/sn/.SNPOST
If this script or program exists, it is invoked instead of
SNPOST to accept a posted article.
/var/spool/sn/news.group.name/.nopost
These files really belong to SNPOST, and it is unfortunate that
snntpd has to check for their existence to determine the posting
flag for the LIST command. See /usr/sbin/SNPOST.
/var/spool/sn/news.group.name/.info
If this file exists, its first line is taken as the description
of that group for use with the LIST NEWSGROUPS command.
/var/spool/sn/news.group.name/.times
is a binary file containing entry times, to support the NEWNEWS
command.
/var/spool/sn/news.group.name/.created
is an empty file retained for it’s timestamp, to support the
NEWGROUPS command.
SIGNALS
If snntpd catches SIGHUP, the files
/var/spool/sn/{.fifo,.noservice,.nopost} (see below) are checked again,
as they are during startup. Other signals have default behaviour.
ENVIRONMENT VARIABLES
See also /usr/sbin/SNPOST for a list of environment variables exported
by snntpd.
PATH The PATH must be set such that snntpd can find SNPOST in order
to accept postings. If PATH does not include /usr/sbin,
/usr/sbin will be appended to it.
POSTING_OK
This variable helps determine the site-wide posting policy. See
POSTING PERMISSIONS above.
TCPREMOTEIP
If this value is set, it is taken to be the dotted-quad IP
address of the connecting client. If it is not set, snntpd
attempts to derive it for itself, and then set its value.
TCPLOCALIP
as above, but for the server’s dotted-quad IP.
SNROOT If this is set and is not empty, the value is used everywhere in
place of /var/spool/sn, the default news spool directory.
SEE ALSO
snsend(8), /usr/sbin/SNPOST