with-authinfo-kludge.1: Clarifications about finding the runtime dir.
[with-authinfo-kludge] / with-authinfo-kludge.1
index 138c5f8..117c474 100644 (file)
@@ -210,7 +210,7 @@ If any are present, they take the place of any configuration file:
 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:
@@ -429,11 +429,6 @@ 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.
@@ -477,7 +472,7 @@ No configuration file could be found,
 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.
@@ -498,6 +493,10 @@ The runtime directory is chosen as follows.
 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
@@ -507,24 +506,7 @@ denote its value;
 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
@@ -534,28 +516,31 @@ otherwise, 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
@@ -569,18 +554,19 @@ Let
 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
@@ -637,10 +623,6 @@ to share the same proxy machinery.
 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