Fix typo.
[exim.git] / doc / doc-txt / NewStuff
CommitLineData
68181c74 1$Cambridge: exim/doc/doc-txt/NewStuff,v 1.113 2006/10/02 14:30:29 ph10 Exp $
495ae4b0
PH
2
3New Features in Exim
4--------------------
5
38a0a95f
PH
6This file contains descriptions of new features that have been added to Exim.
7Before a formal release, there may be quite a lot of detail so that people can
8test from the snapshots or the CVS before the documentation is updated. Once
9the documentation is updated, this file is reduced to a short list.
10
11
12Version 4.64
13------------
14
151. ACL variables can now be given arbitrary names, as long as they start with
641cb756
PH
16 "acl_c" or "acl_m" (for connection variables and message variables), are
17 at least six characters long, with the sixth character being either a digit
18 or an underscore. The rest of the name can contain alphanumeric characters
19 and underscores. This is a compatible change because the old set of
38a0a95f
PH
20 variables such as acl_m12 are a subset of the allowed names. There may now
21 be any number of ACL variables. For example:
22
641cb756
PH
23 set acl_c13 = value for original ACL variable
24 set acl_c13b = whatever
25 set acl_m_foo = something
38a0a95f 26
641cb756
PH
27 What happens if a syntactically valid but undefined ACL variable is
28 referenced depends on the setting of the strict_acl_vars option. If it is
29 false (the default), an empty string is substituted; if it is true, an error
30 is generated. This affects all ACL variables, including the "old" ones such
31 as acl_c4. (Previously there wasn't the concept of an undefined ACL
32 variable.)
38a0a95f
PH
33
34 The implementation has been done in such a way that spool files containing
35 ACL variable settings written by previous releases of Exim are compatible
36 and can be read by the new release. If only the original numeric names are
37 used, spool files written by the new release can be read by earlier
38 releases.
39
6ea85e9a
PH
402. There is a new ACL modifier called log_reject_target. It makes it possible
41 to specify which logs are used for messages about ACL rejections. Its
42 argument is a list of words which can be "main", "reject", or "panic". The
43 default is "main:reject". The list may be empty, in which case a rejection
44 is not logged at all. For example, this ACL fragment writes no logging
45 information when access is denied:
46
47 deny <some conditions>
48 log_reject_target =
49
50 The modifier can be used in SMTP and non-SMTP ACLs. It applies to both
51 permanent and temporary rejections.
52
14aa5a05
PH
533. There is a new authenticator called "dovecot". This is an interface to the
54 authentication facility of the Dovecot POP/IMAP server, which can support a
55 number of authentication methods. If you are using Dovecot to authenticate
56 POP/IMAP clients, it might be helpful to use the same mechanisms for SMTP
57 authentication. This is a server authenticator only. The only option is
58 server_socket, which must specify the socket which is the interface to
59 Dovecot authentication. The public_name option must specify an
60 authentication mechanism that Dovecot is configured to support. You can have
61 several authenticators for different mechanisms. For example:
62
63 dovecot_plain:
68181c74
PH
64 driver = dovecot
65 public_name = PLAIN
14aa5a05
PH
66 server_name = /var/run/dovecot/auth-client
67 server_setid = $auth1
68
69 dovecot_ntlm:
68181c74
PH
70 driver = dovecot
71 public_name = NTLM
14aa5a05
PH
72 server_name = /var/run/dovecot/auth-client
73 server_setid = $auth1
74
495ae4b0 75
4608d683
PH
76Version 4.63
77------------
78
791. There is a new Boolean option called filter_prepend_home for the redirect
38a0a95f 80 router.
4608d683 81
45b91596
PH
822. There is a new acl, set by acl_not_smtp_start, which is run right at the
83 start of receiving a non-SMTP message, before any of the message has been
38a0a95f 84 read.
45b91596 85
a5bd321b
PH
863. When an SMTP error message is specified in a "message" modifier in an ACL,
87 or in a :fail: or :defer: message in a redirect router, Exim now checks the
38a0a95f 88 start of the message for an SMTP error code.
a5bd321b 89
6ec97b1b 904. There is a new parameter for LDAP lookups called "referrals", which takes
38a0a95f 91 one of the settings "follow" (the default) or "nofollow".
6ec97b1b 92
e22ca4ac
JJ
935. Version 20070721.2 of exipick now included, offering these new options:
94 --reverse
95 After all other sorting options have bee processed, reverse order
96 before displaying messages (-R is synonym).
97 --random
98 Randomize order of matching messages before displaying.
99 --size
100 Instead of displaying the matching messages, display the sum
101 of their sizes.
102 --sort <variable>[,<variable>...]
103 Before displaying matching messages, sort the messages according to
104 each messages value for each variable.
105 --not
106 Negate the value for every test (returns inverse output from the
107 same criteria without --not).
108
4608d683 109
1cce3af8
PH
110Version 4.62
111------------
112
1131. The ${readsocket expansion item now supports Internet domain sockets as well
114 as Unix domain sockets. If the first argument begins "inet:", it must be of
115 the form "inet:host:port". The port is mandatory; it may be a number or the
116 name of a TCP port in /etc/services. The host may be a name, or it may be an
117 IP address. An ip address may optionally be enclosed in square brackets.
118 This is best for IPv6 addresses. For example:
119
120 ${readsocket{inet:[::1]:1234}{<request data>}...
121
122 Only a single host name may be given, but if looking it up yield more than
123 one IP address, they are each tried in turn until a connection is made. Once
124 a connection has been made, the behaviour is as for ${readsocket with a Unix
125 domain socket.
126
f7fd3850
PH
1272. If a redirect router sets up file or pipe deliveries for more than one
128 incoming address, and the relevant transport has batch_max set greater than
129 one, a batch delivery now occurs.
130
d6629cdc
PH
1313. The appendfile transport has a new option called maildirfolder_create_regex.
132 Its value is a regular expression. For a maildir delivery, this is matched
133 against the maildir directory; if it matches, Exim ensures that a
134 maildirfolder file is created alongside the new, cur, and tmp directories.
135
1cce3af8 136
7e66e54d
PH
137Version 4.61
138------------
139
4f578862
PH
140The documentation is up-to-date for the 4.61 release. Major new features since
141the 4.60 release are:
142
143. An option called disable_ipv6, to disable the use of IPv6 completely.
144
145. An increase in the number of ACL variables to 20 of each type.
146
147. A change to use $auth1, $auth2, and $auth3 in authenticators instead of $1,
148 $2, $3, (though those are still set) because the numeric variables get used
149 for other things in complicated expansions.
150
843a41e8 151. The default for rfc1413_query_timeout has been changed from 30s to 5s.
4f578862
PH
152
153. It is possible to use setclassresources() on some BSD OS to control the
154 resources used in pipe deliveries.
155
156. A new ACL modifier called add_header, which can be used with any verb.
157
158. More errors are detectable in retry rules.
159
160There are a number of other additions too.
71fafd95 161
7e66e54d 162
425ae40f 163Version 4.60
b5aea5e1
PH
164------------
165
425ae40f
PH
166The documentation is up-to-date for the 4.60 release. Major new features since
167the 4.50 release are:
1a46a8c5 168
425ae40f 169. Support for SQLite.
1a46a8c5 170
425ae40f 171. Support for IGNOREQUOTA in LMTP.
1a46a8c5 172
425ae40f 173. Extensions to the "submission mode" features.
1a46a8c5 174
425ae40f 175. Support for Client SMTP Authorization (CSA).
1a46a8c5 176
425ae40f 177. Support for ratelimiting hosts and users.
b5aea5e1 178
425ae40f 179. New expansion items to help with the BATV "prvs" scheme.
b5aea5e1 180
425ae40f 181. A "match_ip" condition, that matches an IP address against a list.
35edf2ff 182
425ae40f 183There are many more minor changes.
495ae4b0
PH
184
185****