Added log_selector=+queue_time_overall.
[exim.git] / doc / doc-txt / NewStuff
index d5d3407139a2e7a3ec61d353b702b1aabf91c6ea..3525e84dc7772a2d3f92621d2d30f760325d44a3 100644 (file)
@@ -1,4 +1,4 @@
-$Cambridge: exim/doc/doc-txt/NewStuff,v 1.11 2004/11/17 16:12:26 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/NewStuff,v 1.15 2004/11/24 14:38:13 ph10 Exp $
 
 New Features in Exim
 --------------------
@@ -108,6 +108,100 @@ Version 4.44
 
     Previously this was a syntax error.
 
+12. There is now a new "record type" that can be specified in dnsdb lookups. It
+    is "zns" (for "zone NS"). It performs a lookup for NS records on the given
+    domain, but if none are found, it removes the first component of the domain
+    name, and tries again. This process continues until NS records are found
+    or there are no more components left (or there's a DNS error). In other
+    words, it may return the name servers for a top-level domain, but it never
+    returns the root name servers. If there are no NS records for the top-level
+    domain, the lookup fails.
+
+    For example, ${lookup dnsdb{zns=xxx.quercite.com}} returns the name
+    servers for quercite.com, whereas ${lookup dnsdb{zns=xxx.edu}} returns
+    the name servers for edu, assuming in each case that there are no NS
+    records for the full domain name.
+
+    You should be careful about how you use this lookup because, unless the
+    top-level domain does not exist, the lookup will always return some host
+    names. The sort of use to which this might be put is for seeing if the name
+    servers for a given domain are on a blacklist. You can probably assume that
+    the name servers for the high-level domains such as .com or .co.uk are not
+    going to be on such a list.
+
+13. It is now possible to specify a list of domains or IP addresses to be
+    looked up in a dnsdb lookup. The list is specified in the normal Exim way,
+    with colon as the default separator, but with the ability to change this.
+    For example:
+
+      ${lookup dnsdb{one.domain.com:two.domain.com}}
+      ${lookup dnsdb{a=one.host.com:two.host.com}}
+      ${lookup dnsdb{ptr = <; 1.2.3.4 ; 4.5.6.8}}
+
+    In order to retain backwards compatibility, there is one special case: if
+    the lookup type is PTR and no change of separator is specified, Exim looks
+    to see if the rest of the string is precisely one IPv6 address. In this
+    case, it does not treat it as a list.
+
+    The data from each lookup is concatenated, with newline separators (by
+    default - see 14 below), in the same way that multiple DNS records for a
+    single item are handled.
+
+    The lookup fails only if all the DNS lookups fail. As long as at least one
+    of them yields some data, the lookup succeeds. However, if there is a
+    temporary DNS error for any of them, the lookup defers.
+
+14. It is now possible to specify the character to be used as a separator when
+    a dnsdb lookup returns data from more than one DNS record. The default is a
+    newline. To specify a different character, put '>' followed by the new
+    character at the start of the query. For example:
+
+      ${lookup dnsdb{>: a=h1.test.ex:h2.test.ex}}
+      ${lookup dnsdb{>| mx=<;m1.test.ex;m2.test.ex}}
+
+    It is permitted to specify a space as the separator character. Note that
+    more than one DNS record can be found for a single lookup item; this
+    feature is relevant even when you do not specify a list.
+
+    The same effect could be achieved by wrapping the lookup in ${tr...}; this
+    feature is just a syntactic simplification.
+
+15. It is now possible to supply a list of domains and/or IP addresses to be
+    lookup up in a DNS blacklist. Previously, only a single domain name could
+    be given, for example:
+
+      dnslists = black.list.tld/$sender_host_name
+
+    What follows the slash can now be a list. As with all lists, the default
+    separator is a colon. However, because this is a sublist within the list of
+    DNS blacklist domains, it is necessary either to double the separators like
+    this:
+
+      dnslists = black.list.tld/name.1::name.2
+
+    or to change the separator character, like this:
+
+      dnslists = black.list.tld/<;name.1;name.2
+
+    If an item in the list is an IP address, it is inverted before the DNS
+    blacklist domain is appended. If it is not an IP address, no inversion
+    occurs. Consider this condition:
+
+       dnslists = black.list.tls/<;192.168.1.2;a.domain
+
+    The DNS lookups that occur are for
+
+       2.1.168.192.black.list.tld  and  a.domain.black.list.tld
+
+    Once a DNS record has been found (that matches a specific IP return
+    address, if specified), no further lookups are done.
+
+16. The log selector queue_time_overall causes Exim to output the time spent on
+    the queue as an addition to the "Completed" message. Like queue_time (which
+    puts the queue time on individual delivery lines), the time is tagged with
+    "QT=", and it is measured from the time that the message starts to be
+    received, so it includes the reception time.
+
 
 Version 4.43
 ------------