snntpd,v0.3.8(8)

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