an error is reported if a
.B \-f
option was passed.
-A server configuration starts with
+A server configuration starts with
an argument consisting of a server name prefixed by a
.RB ` + '
character:
and may be equal to the
.I remote
address (below) without causing difficulty.
+Note that
+.B with-authinfo-kludge
+will not do anything to encourage the client
+to connect to the right address;
+its caller must arrange to configure the client correctly,
+e.g., by setting the
+.B NNTPSERVER
+environment variable appropriately.
.TP
.BI nntpauth= "parameter arguments\fR..."
Set the AUTHINFO GENERIC authentication parameter and arguments
.B via
parameter.
The default is to use
+.\" FIXME Fuck you openssh
127.1.0.1:119.
It is
.I not
If the environment variable
.B HOME
is set, then its value is used.
-Otherwise, the current effective uid is looked up
-in the password database
-(using
-.BR getpwuid (3));
-and the home directory taken from the record.
Let
.I home
be the home directory so determined, if any.
Let
.I config-home
denote the configuration home directory so determined.
+.\" FIXME XDG_CONFIG_DIRS too now
.hP 5.
A `tag' is chosen, as follows.
If the
so a default configuration is constructed, as follows.
Let
.I nntp-server
-be the value of the
+be the value of the
.B NNTPSERVER
environment variable;
if it is not set, then a fatal error is reported.
If the
.B \-d
option is present, then its value is used.
+Otherwise, if the configuration file specifies
+a value for the global
+.B rundir
+parameter then that it used.
.hP 2.
If the environment variable
.B XDG_RUNTIME_DIR
then
.IB run /with-authinfo-kludge
is used as the runtime directory.
-.hP 3.
-The user's name is determined, as follows.
-If the environment variable
-.B USER
-is set, then its value is used.
-Otherwise, if, the environment variable
-.B LOGNAME
-is set, then its value is used.
-Otherwise, the current effective uid is looked up
-in the password database
-(using
-.BR getpwuid (3));
-and the name taken from the record.
-Let
-.I user
-be the user name so determined, if any.
-.hP 4
-If no user name could be determined, then skip this step.
+.hP 3
If the environment variable
.B TMPDIR
is set, then let
.I tmp
be
.BR /tmp .
+Let
+.I uid
+be the current effective uid, in decimal,
+without leading zeroes
+(if the superuser is foolish enough to run this program then
+.I uid
+is
+.BR 0 ).
If
-.IB tmp/ with-authinfo-kludge- user
+.IB tmp/ with-authinfo-kludge- uid
exists,
is a directory (and not a symbolic link),
is owned by the current effective uid,
and has no permissions for group or others;
or if it does not exist but can be created with the above properties;
then it is used as the runtime directory.
-.hP 5.
+.hP 4.
The user's home directory is determined, as follows.
If the environment variable
.B HOME
is set, then its value is used.
-Otherwise, the current effective uid is looked up
-in the password database
-(using
-.BR getpwuid (3));
-and the home directory taken from the record.
Let
.I home
be the home directory so determined, if any.
-.hP 6.
+.hP 5.
A `cache home' directory is determined, as follows.
If the environment variable
.B XDG_CACHE_HOME
denote the cache home directory so determined.
If the cache home directory does not exist,
then it is created with mode 0777 (as modified by the umask).
-.hP 7.
+.hP 6.
Let
.I hostname
be the local machine's hostname,
as reported by
.BR gethostname (2).
-If
+Then
.IB cache-home /with-authinfo-kludge. hostname
-does not exist,
+is used as the runtime directory.
+.PP
+If the directory chosen by the above procedure does not exist,
then it is created as a directory,
with mode 0700 (and modified by the umask).
-This directory is then used as the runtime directory.
(If it exists, but is not in fact a directory,
then later operations will fail.)
.PP
The runtime directory contains a number of other directories,
named
+.\" FIXME junk, new, naming
+.\" session dirs now entirely different
.IR tag . pid \fR.
Each such directory corresponds to a running
(or failed)
This is somewhat wasteful.
Fixing this would necessitate some other way of
orchestrating the setup and teardown of runtime directories.
-.PP
-Maybe there ought to be a way to set
-a separate runtime directory for each server.
-But, really, I had to draw a line somewhere.
.
.\"--------------------------------------------------------------------------
.SH SEE ALSO