chiark / gitweb /
@@ -1,9 +1,11 @@
[userv.git] / spec.html / ch-config.html
index 4ccacc7d13e00bd0192a6f8a938ae43527de5fa3..794c7d055858baf96b3ae9fd733de32195730b73 100644 (file)
@@ -70,9 +70,9 @@ The configuration file is a series of directives, usually one per
 line.  The portion of a line following a hash character <samp>#</samp> is
 taken as a comment and ignored.  Each directive consists of a series
 of tokens separated by linear whitespace (spaces and tabs); tokens may
-be words consisting of non-space characters, or, where a string is
-required, a string in double quotes.  Double-quoted strings may
-contain the following backslash escapes:
+be words consisting of non-space characters (except backslash), or,
+where a string is required, a string in double quotes.  Double-quoted
+strings may contain the following backslash escapes:
 
 <dl compact>
 <dt><samp>\n</samp><dd>newline
@@ -99,6 +99,11 @@ Pathnames starting with the two characters <samp>~/</samp> are taken to be
 relative to the service user's home directory.
 </p>
 
+<p>
+Logical lines may be continued by putting a backslash <samp>\</samp> at the
+end of a line; this counts as part of linear whitespace.
+</p>
+
 <hr>
 
 <h2>
@@ -156,11 +161,12 @@ to exist, but it is an error if a file exists and cannot be read or if
 the directory cannot be accessed.
 
 A translation will be applied to values before they are used to
-construct a filename, so that the lookup cannot access dotfiles or
-files in other directories: values starting with full stops will have
-a colon prepended (making <samp>:.</samp>), colons will be doubled, and each
-slash will be replaced with a colon followed by a hyphen <samp>:-</samp>.  A
-parameter value which is the empty string will be replaced with
+construct a filename, so that the lookup cannot access dotfiles,
+backup files, files in other directories and the like: each slash will
+be replaced with a colon followed by a hyphen <samp>:-</samp>, and all
+characters which are not lowercase alphanumerics, hyphens or
+underscores will have a colon prepended (so that colons are doubled).
+A parameter value which is the empty string will be replaced with
 <samp>:empty</samp> (note that this is different from a parameter not having
 any values).
 
@@ -174,13 +180,12 @@ file.
 
 <p><dt><samp>error <var>text ...</var></samp><dd>Causes an error whose message includes the descriptive string
 <var>text</var>.  <var>text</var> may consist of several tokens with intervening
-whitespace.  The whitespace will be included in the message as found
-in the configuration file: all the characters until the end of the
-line will be included verbatim, unless they are part of a
-double-quoted string, in which case the usual meaning of the string
+linear whitespace.  Each set of linear whitespace will appear in the
+message as a single space.  The usual meaning of double-quoted strings
 (i.e., after backslash escape processing) will be used.  Comments and
 linear whitespace at the end of the line (or just before the comment)
-will still be ignored.
+will still be ignored.  Apart from those cases, each token's text will
+be included verbatim.
 
 <p><dt><samp>message <var>text ...</var></samp><dd>Causes a message including the descriptive string <var>text</var> to be
 delivered as if it were an error message, but does not actually cause