the default value is &"exim"&.
The full syntax of each item in &%mysql_servers%& is:
.display
-<&'hostname'&>::<&'port'&>(<&'socket name'&>)[<&'option group'&>]/&&&
- <&'database'&>/<&'user'&>/<&'password'&>
+<&'hostspec'&><&'portspec'&>(<&'socket name'&>)[<&'option group'&>]/&&&
+ <&'database'&>/<&'user'&>/<&'password'&>
.endd
Any of the four sub-parts of the first field can be omitted. For normal use on
the local host it can be left blank or set to just &"localhost"&.
+.new
+A &'hostspec'& can be a hostname, an IPv4 address or an IPv6 address.
+For the latter, a &'portspec'& is a dot followed by a port number;
+for the other two a &'portspec'& is a colon followed by a port number.
+.wen
+
+Note that the default list-separator for the list of servers is a colon so
+(unless that is changed) all colons in list items must be doubled.
+
No database need be supplied &-- but if it is absent here, it must be given in
the queries.
.subsection "Special PostgreSQL features" SECID74
+.new
+The &'hostspec'& for PostgreSQL follows the same rules as for MySQL above.
+.wen
+
PostgreSQL lookups can also use Unix domain socket connections to the database.
This is usually faster and costs less CPU time than a TCP/IP connection.
However it can be used only if the mail server runs on the same machine as the
connection"
.row &%smtp_accept_reserve%& "only reserve hosts if more connections"
.row &%smtp_active_hostname%& "host name to use in messages"
-.row &%smtp_atrn_command%& "what to run for ATRN"
.row &%smtp_banner%& "text for welcome banner"
.row &%smtp_check_spool_space%& "from SIZE on MAIL command"
.row &%smtp_connect_backlog%& "passed to TCP/IP stack"
.cindex authentication "failure event, server"
If an authenticator is run and does not succeed,
-an event (see &<<CHAPevents>>&) of type "auth:fail" is raised.
+an event of type "auth:fail" is raised.
While the event is being processed the variables
&$sender_host_authenticated$& (with the authenticator name)
and &$authenticated_fail_id$& (as set by the authenticator &%server_set_id%& option)
will be valid.
If the event is serviced and a string is returned then the string will be logged
instead of the default log line.
-See <<CHAPevents>> for details on events.
+See &<<CHAPevents>>& for details on events.
-.section "Testing server authentication" "SECID169"
+.subsection "Testing server authentication" "SECID169"
.cindex "authentication" "testing a server"
.cindex "AUTH" "testing a server"
.cindex "base64 encoding" "creating authentication test data"
.next
.cindex authentication "failure event, client"
If the response to authentication is a permanent error (5&'xx'& code),
-an event (see &<<CHAPevents>>&) of type "auth:fail" is raised.
+an event of type "auth:fail" is raised.
While the event is being processed the variable
&$sender_host_authenticated$& (with the authenticator name)
will be valid.
If the event is serviced and a string is returned then the string will be logged.
-See <<CHAPevents>> for details on events.
+See &<<CHAPevents>>& for details on events.
.next
If the response to authentication is a permanent error (5&'xx'& code), Exim