Added previously missed changelog entries
[users/jgh/exim.git] / doc / doc-docbook / spec.xfpt
index 62a07ad75bdf854f4715ffc1a09d106dd181b930..6a1d7ce12f5c1ce51b418a626e9b9fbaf40f8f9e 100644 (file)
@@ -1,4 +1,4 @@
-. $Cambridge: exim/doc/doc-docbook/spec.xfpt,v 1.63 2009/10/26 13:14:23 nm4 Exp $
+. $Cambridge: exim/doc/doc-docbook/spec.xfpt,v 1.72 2010/03/05 16:26:46 nm4 Exp $
 .
 . /////////////////////////////////////////////////////////////////////////////
 . This is the primary source of the Exim Manual. It is an xfpt document that is
@@ -48,7 +48,7 @@
 . /////////////////////////////////////////////////////////////////////////////
 
 .set previousversion "4.69"
-.set version "4.70"
+.set version "4.71"
 
 .set ACL "access control lists (ACLs)"
 .set I   "    "
 <bookinfo>
 <title>Specification of the Exim Mail Transfer Agent</title>
 <titleabbrev>The Exim MTA</titleabbrev>
-<date>09 June 2009</date>
-<author><firstname>Philip</firstname><surname>Hazel</surname></author>
-<authorinitials>PH</authorinitials>
-<affiliation><orgname>University of Cambridge Computing Service</orgname></affiliation>
-<address>New Museums Site, Pembroke Street, Cambridge CB2 3QH, England</address>
+<date>5 November 2009</date>
+<author><firstname>Exim</firstname><surname>Maintainers</surname></author>
+<authorinitials>EM</authorinitials>
 <revhistory><revision>
-  <revnumber>4.70</revnumber>
-  <date>10 June 2009</date>
-  <authorinitials>PH</authorinitials>
+  <revnumber>4.71</revnumber>
+  <date>5 November 2009</date>
+  <authorinitials>EM</authorinitials>
 </revision></revhistory>
 <copyright><year>2009</year><holder>University of Cambridge</holder></copyright>
 </bookinfo>
@@ -9581,6 +9579,17 @@ For single-key lookup types, no quoting is ever necessary and this operator
 yields an unchanged string.
 
 
+.vitem &*${randint:*&<&'n'&>&*}*&
+.cindex "random number"
+This operator returns a somewhat random number which is less than the
+supplied number and is at least 0.  The quality of this randomness depends
+on how Exim was built; the values are not suitable for keying material.
+If Exim is linked against OpenSSL then RAND_pseudo_bytes() is used.
+Otherwise, the implementation may be arc4random(), random() seeded by
+srandomdev() or srandom(), or a custom implementation even weaker than
+random().
+
+
 .vitem &*${rfc2047:*&<&'string'&>&*}*&
 .cindex "expansion" "RFC 2047"
 .cindex "RFC 2047" "expansion operator"
@@ -13373,7 +13382,6 @@ This option controls whether GnuTLS is used in compatibility mode in an Exim
 server. This reduces security slightly, but improves interworking with older
 implementations of TLS.
 
-
 .option headers_charset main string "see below"
 This option sets a default character set for translating from encoded MIME
 &"words"& in header lines, when referenced by an &$h_xxx$& expansion item. The
@@ -13447,7 +13455,7 @@ to do more extensive checking of the data supplied by these commands. The ACL
 condition &`verify = helo`& is provided to make this possible.
 Formerly, it was necessary also to set this option (&%helo_try_verify_hosts%&)
 to force the check to occur. From release 4.53 onwards, this is no longer
-necessary. If the check has not been done before &`verify`& &`=`& &`helo`& is
+necessary. If the check has not been done before &`verify = helo`& is
 encountered, it is done at that time. Consequently, this option is obsolete.
 Its specification is retained here for backwards compatibility.
 
@@ -13469,7 +13477,7 @@ available) yields the calling host address.
 
 However, the EHLO or HELO command is not rejected if any of the checks
 fail. Processing continues, but the result of the check is remembered, and can
-be detected later in an ACL by the &`verify`& &`=`& &`helo`& condition.
+be detected later in an ACL by the &`verify = helo`& condition.
 
 .option helo_verify_hosts main "host list&!!" unset
 .cindex "HELO verifying" "mandatory"
@@ -13525,8 +13533,8 @@ this check fails, Exim behaves as if the name lookup failed.
 .vindex "&$sender_host_name$&"
 After any kind of failure, the host name (in &$sender_host_name$&) remains
 unset, and &$host_lookup_failed$& is set to the string &"1"&. See also
-&%dns_again_means_nonexist%&, &%helo_lookup_domains%&, and &`verify`& &`=`&
-&`reverse_host_lookup`& in ACLs.
+&%dns_again_means_nonexist%&, &%helo_lookup_domains%&, and
+&`verify = reverse_host_lookup`& in ACLs.
 
 
 .option host_lookup_order main "string list" &`bydns:byaddr`&
@@ -21162,6 +21170,7 @@ procmail_pipe:
   envelope_to_add
   check_string = "From "
   escape_string = ">From "
+  umask = 077
   user = $local_part
   group = mail
 
@@ -21461,19 +21470,19 @@ being used, names are looked up using &[gethostbyname()]&
 instead of using the DNS. Of course, that function may in fact use the DNS, but
 it may also consult other sources of information such as &_/etc/hosts_&.
 
-.option gnutls_require_kx main string unset
+.option gnutls_require_kx smtp string unset
 This option controls the key exchange mechanisms when GnuTLS is used in an Exim
 client. For details, see section &<<SECTreqciphgnu>>&.
 
-.option gnutls_require_mac main string unset
+.option gnutls_require_mac smtp string unset
 This option controls the MAC algorithms when GnuTLS is used in an Exim
 client. For details, see section &<<SECTreqciphgnu>>&.
 
-.option gnutls_require_protocols main string unset
+.option gnutls_require_protocols smtp string unset
 This option controls the protocols when GnuTLS is used in an Exim
 client. For details, see section &<<SECTreqciphgnu>>&.
 
-.option gnutls_compat_mode main boolean unset
+.option gnutls_compat_mode smtp boolean unset
 This option controls whether GnuTLS is used in compatibility mode in an Exim
 server. This reduces security slightly, but improves interworking with older
 implementations of TLS.
@@ -23579,7 +23588,6 @@ the password conform to the Exim syntax. At the LDAP level, the password is an
 uninterpreted string.
 
 
-
 .section "Support for different kinds of authentication" "SECID174"
 A number of string expansion features are provided for the purpose of
 interfacing to different ways of user authentication. These include checking
@@ -24809,7 +24817,6 @@ client are given temporary error responses until QUIT is received or the
 connection is closed. In these special cases, the QUIT ACL does not run.
 
 
-
 .section "The not-QUIT ACL" "SECTNOTQUITACL"
 .vindex &$acl_smtp_notquit$&
 The not-QUIT ACL, specified by &%acl_smtp_notquit%&, is run in most cases when
@@ -25810,7 +25817,7 @@ This control is permitted only for the MAIL, RCPT, and start of data ACLs (the
 latter is the one defined by &%acl_smtp_predata%&). Setting it tells Exim that
 the current message is a submission from a local MUA. In this case, Exim
 operates in &"submission mode"&, and applies certain fixups to the message if
-necessary. For example, it add a &'Date:'& header line if one is not present.
+necessary. For example, it adds a &'Date:'& header line if one is not present.
 This control is not permitted in the &%acl_smtp_data%& ACL, because that is too
 late (the message has already been created).
 
@@ -25823,7 +25830,7 @@ that may be received in the same SMTP connection.
 .vitem &*control&~=&~suppress_local_fixups*&
 .cindex "submission fixups, suppressing"
 This control applies to locally submitted (non TCP/IP) messages, and is the
-complement of &`control`& &`=`& &`submission`&. It disables the fixups that are
+complement of &`control = submission`&. It disables the fixups that are
 normally applied to locally-submitted messages. Specifically:
 
 .ilist
@@ -25852,12 +25859,12 @@ All four possibilities for message fixups can be specified:
 .ilist
 Locally submitted, fixups applied: the default.
 .next
-Locally submitted, no fixups applied: use &`control`& &`=`&
-&`suppress_local_fixups`&.
+Locally submitted, no fixups applied: use
+&`control = suppress_local_fixups`&.
 .next
 Remotely submitted, no fixups applied: the default.
 .next
-Remotely submitted, fixups applied: use &`control`& &`=`& &`submission`&.
+Remotely submitted, fixups applied: use &`control = submission`&.
 .endlist
 
 
@@ -30301,8 +30308,8 @@ If a message contains a number of different addresses, all those with the same
 characteristics (for example, the same envelope sender) that resolve to the
 same set of hosts, in the same order, are sent in a single SMTP transaction,
 even if they are for different domains, unless there are more than the setting
-of the &%max_rcpts%& option in the &(smtp)& transport allows, in which case
-they are split into groups containing no more than &%max_rcpts%& addresses
+of the &%max_rcpt%&s option in the &(smtp)& transport allows, in which case
+they are split into groups containing no more than &%max_rcpt%&s addresses
 each. If &%remote_max_parallel%& is greater than one, such groups may be sent
 in parallel sessions. The order of hosts with identical MX values is not
 significant when checking whether addresses can be batched in this way.
@@ -34571,7 +34578,6 @@ see the documentation of the &%$dkim_verify_status%& expansion variable above
 for more information of what they mean.
 .endlist
 
-
 . ////////////////////////////////////////////////////////////////////////////
 . ////////////////////////////////////////////////////////////////////////////