1
v2.2.9 2013-11-25 Timo Sirainen <tss@iki.fi>
3
+ Full text search indexing can now be done automatically after
4
saving/copying mails by setting plugin { fts_autoindex=yes }
5
+ replicator: Added replication_dsync_parameters setting to pass
6
"doveadm sync" parameters (for controlling what to replicate).
7
+ Added mail-filter plugin
8
+ Added liblzma/xz support (zlib_save=xz)
9
- v2.2.8's improved cache file handling exposed several old bugs
10
related to fetching mail headers.
11
- v2.2.7's iostream handling changes were causing some connections
12
to be disconnected before flushing their output (e.g. POP3 logout
13
message wasn't being sent)
15
v2.2.8 2013-11-19 Timo Sirainen <tss@iki.fi>
17
+ Mail cache lookups work for the mail being saved. This improves
18
performance by avoiding the need to parse the mail multiple times
19
when using some plugins (e.g. mail_log).
20
+ Mail cache works for recently cached data also with in-memory
22
+ imapc: Many performance improvements, especially when working with
23
dsync. Also added imapc_feature=fetch-headers which allows using
24
FETCH BODY.PEEK[HEADER.FIELDS (..)] to avoid reading the entire
26
+ mail_location = ..:FULLDIRNAME=dbox-Mails is the same as
27
:DIRNAME=dbox-Mails, but it will also be used for
28
:INDEX and :CONTROL directories. (It should have worked this way
29
from the beginning, but can't be changed anymore without breaking
30
existing installations).
31
- Fixed infinite loop in message parsing if message ends with
32
"--boundary" and CR (without LF). Messages saved via SMTP/LMTP can't
33
trigger this, because messages must end with an "LF.". A user could
34
trigger this for him/herself though.
35
- lmtp: Client was sometimes disconnected before all the output was
37
- imap_zlib plugin caused crashes during client disconnection in
39
- replicator: Database wasn't being exported to disk every 15 minutes
40
as it should have. Instead it was being imported, causing "doveadm
41
replicator remove" commands to not work very well.
43
v2.2.7 2013-11-03 Timo Sirainen <tss@iki.fi>
45
* Some usage of passdb checkpassword could have been exploitable by
46
local users. You may need to modify your setup to keep it working.
47
See http://wiki2.dovecot.org/AuthDatabase/CheckPassword#Security
49
+ auth: Added ability to truncate values logged by
50
auth_verbose_passwords (see 10-logging.conf comment)
51
+ mdbox: Added "mdbox_deleted" storage, which can be used to access
52
messages with refcount=0. For example: doveadm import
53
mdbox_deleted:~/mdbox "" mailbox inbox subject oops
54
+ ssl-params: Added ssl_dh_parameters_length setting.
55
- master process was doing a hostname.domain lookup for each created
56
process, which may have caused a lot of unnecessary DNS lookups.
57
- dsync: Syncing over 100 messages at once caused problems in some
58
situations, causing messages to get new UIDs.
59
- fts-solr: Different Solr hosts for different users didn't work.
61
v2.2.6 2013-09-25 Timo Sirainen <tss@iki.fi>
63
* acl: If public/shared namespace has a shared subscriptions file for
64
all users, don't list subscription entries that are not visible to
65
the user accessing it.
67
+ doveadm: Added "auth lookup" command for doing passdb lookup.
68
+ login_log_format_elements: Added %{orig_user}, %{orig_username}
69
and %{orig_domain} expanding to the username exactly as sent by
70
the client (before any changes auth process made).
71
+ Added ssl_prefer_server_ciphers setting.
72
+ auth_verbose_passwords: Log the password also for unknown users.
73
+ Linux: Added optional support for SO_REUSEPORT with
74
inet_listener { reuse_port=yes }
75
- director: v2.2.5 changes caused "SYNC lost" errors
76
- dsync: Many fixes and error handling improvements
77
- doveadm -A: Don't waste CPU by doing a separate config lookup
79
- Long-running ssl-params process no longer prevents Dovecot restart
80
- mbox: Fixed mailbox_list_index=yes to work correctly
82
v2.2.5 2013-08-05 Timo Sirainen <tss@iki.fi>
84
+ SSL: Added support for ECDH/ECDHE cipher suites (by David Hicks)
85
+ Added some missing man pages (by Pascal Volk)
86
+ quota-status: Added quota_status_toolarge setting (by Ulrich Zehl)
87
- director: Users near expiration could have been redirected to
88
different servers at the same time.
89
- pop3: Avoid assert-crash if client disconnects during LIST.
90
- mdbox: Corrupted index header still wasn't automatically fixed.
91
- dsync: Various fixes to work better with imapc and pop3c storages.
92
- ldap: sasl_bind=yes caused crashes, because Dovecot's lib-sasl
93
symbols conflicted with Cyrus SASL library.
94
- imap: Various error handling fixes to CATENATE. (Found using
95
Apple's stress test script.)
97
v2.2.4 2013-06-25 Timo Sirainen <tss@iki.fi>
99
+ doveadm: Added "flags" command to modify message flags.
100
+ doveadm: Added "deduplicate" command to expunge message duplicates.
101
+ dsync: Show the state in process title with verbose_proctitle=yes.
102
- imap/pop3 proxy: Master user logins were broken in v2.2.3
103
- sdbox/mdbox: A corrupted index header with wrong size was never
104
automatically fixed in v2.2.3.
105
- mbox: Fixed assert-crashes related to locking.
107
v2.2.3 2013-06-17 Timo Sirainen <tss@iki.fi>
109
* LDA/LMTP: If new mail delivery first fails with "temporary
110
failure", tempfail the whole delivery instead of falling back to
111
delivering the mail to INBOX. (Requires new Pigeonhole as well.)
112
* doc/solr-schema.xml was updated to Solr v4.x format. Also the
113
default analyzers were changed, hopefully for the better. Note that
114
the schema can't be changed for existing Solr indexes without
115
rebuilding everything.
116
* Solr plugin does only soft commits from now on. You'll need a
117
cronjob to send a hard commit command to it every few minutes.
119
+ Added %N modifier for variables as %H-like "new hash"
120
+ sdbox, mdbox: Support POP3 message order field (for migrations)
121
+ Added mailbox { driver } to specify a different mail storage
122
format for the mailbox than generally used within the namespace.
123
+ Added initial lib-sasl library for client side SASL support.
124
Currently supports only PLAIN, LOGIN and plugins. Used currently
125
by IMAP and POP3 proxying when authenticating to the remote server.
126
- IMAP: If subject contained only whitespace, Dovecot returned an
127
ENVELOPE reply with a huge literal value, effectively causing the
128
IMAP client to wait for more data forever.
129
- IMAP: Various URLAUTH fixes.
130
- imapc: Various bugfixes and improvements
131
- pop3c: Various fixes to make it work in dsync (without imapc)
132
- dsync: Fixes to syncing subscriptions. Fixes to syncing mailbox
135
v2.2.2 2013-05-20 Timo Sirainen <tss@iki.fi>
137
+ zlib: Keep the last mail cached uncompressed in a temp file. This
138
fixes performance when doing small partial fetches from a large
140
+ acl: If plugin { acl_defaults_from_inbox = yes } is set, get the
141
default ACLs for private and shared namespaces from the user's INBOX.
142
(This probably will become default in v2.3.)
143
+ pop3: Added pop3_deleted_flag setting to switch POP3 deletions to
144
only hide the messages from POP3, but still be visible via IMAP.
145
- ACL plugin: Mailbox creation wasn't actually checking any ACLs
146
and always succeeded (due to some v2.2 API changes). The created
147
mailbox couldn't have been accessed though, so this couldn't have
148
caused any data leak.
149
- IMAP: Various URLAUTH fixes.
150
- IMAP: Fixed a hang with invalid APPEND parameters.
151
- IMAP LIST-EXTENDED: INBOX was never listed with \Subscribed flag.
152
- mailbox_list_index=yes still caused crashes.
153
- maildir: Fixed a crash after dovecot-keywords file was re-read.
154
- maildir: If files had reappeared unexpectedly to a Maildir, they
155
were ignored until index files were deleted.
156
- Maildir: Fixed handling over 26 keywords in a mailbox.
157
- Maildir++: Fixed mail_shared_explicit_inbox=no
158
- namespace { prefix="" list=no } was listing mailboxes.
159
- imap/pop3-login proxying: Fixed a crash if TCP connection succeeded,
160
but the remote login timed out.
161
- Case-insensitive search/sort didn't work correctly for all unicode
162
characters, as specified by i;unicode-casemap comparator. If full
163
text search indexes were used, they need to be rebuilt for old mails
164
to be handled correctly. (This bug has existed always in Dovecot.)
166
v2.2.1 2013-04-19 Timo Sirainen <tss@iki.fi>
168
- mailbox_list_index=yes was broken.
169
- LAYOUT=index didn't list subscriptions.
170
- auth: Multiple master passdbs didn't work.
171
- Message parsing (e.g. during search) crashed when multipart message
172
didn't actually contain any parts.
174
v2.2.0 2013-04-11 Timo Sirainen <tss@iki.fi>
176
* When creating home directories, the permissions are copied from the
177
parent directory if it has setgid-bit set. For full details, see
178
http://wiki2.dovecot.org/SharedMailboxes/Permissions
179
* "doveadm auth" command was renamed to "doveadm auth test"
180
* IMAP: ID command now advertises server name as Dovecot by default.
181
It was already trivial to guess this from command replies.
182
* dovecot.index.cache files can be safely accessed only by v2.1.11+.
183
Older versions may think they're corrupted and delete them.
184
* LDA/LMTP: If saving a mail brings user from under quota to over
185
quota, allow it based on quota_grace setting (default: 10%
187
* pop3_lock_session=yes now uses a POP3-only dovecot-pop3-session.lock
188
file instead of actually locking the mailbox (and causing
189
IMAP/LDA/LMTP to wait for the POP3 session to close).
190
* mail_shared_explicit_inbox setting's default switched to "no".
191
* ssl_client_ca_dir setting replaced imapc_ssl_ca_dir and
192
pop3c_ssl_ca_dir settings.
194
+ Implemented IMAP MOVE and BINARY extensions
195
+ Implemented IMAP CATENATE, URLAUTH and URLAUTH=BINARY extensions
197
+ Implemented IMAP NOTIFY extension. Requires mailbox_list_index=yes
199
+ Redesigned and rewritten dsync. The new design makes the syncing
200
faster, more reliable and more featureful. The new dsync protocol
201
isn't backwards compatible with old dsync versions (but is designed
202
to be forwards compatible with future versions).
203
+ All mailbox formats now support per-user message flags for shared
204
mailboxes by using a private index. It can be enabled by adding
205
:INDEXPVT=<path> to mail location. This should be used instead of
206
:INDEX also for Maildir/mbox to improve performance.
207
+ Improved mailbox list indexes. They should be usable now, although
208
still disabled by default.
209
+ Added LAYOUT=index. The mailbox directories are created using their
210
GUIDs in the filesystem, while the actual GUID <-> name mapping
211
exists only in the index.
212
+ LMTP proxy: Implemented XCLIENT extension for passing remote IP
213
address through proxy.
215
v2.2.rc7 2013-04-10 Timo Sirainen <tss@iki.fi>
217
* checkpasword: AUTH_PASSWORD environment is no longer set.
218
* Running dsync no longer triggers quota warnings.
220
+ dsync: Commit large transactions every 100 new messages, so if a
221
large sync crashes it doesn't have to be restarted from the
223
- replicator: doveadm commands and user list export may have skipped
225
- Various fixes to mailbox_list_index=yes
227
v2.2.rc6 2013-04-08 Timo Sirainen <tss@iki.fi>
229
* replicator: Don't create replicator-doveadm socket by default.
230
This way doveadm replicator commands don't accidentally start an
231
unconfigured replicator server.
232
+ replicator: Have remote dsync notify the remote replicator that
233
a user was just synced. This way the replicators are kept roughly
235
+ Added ssl_client_ca_file to specify the CA certs as a file. This is
236
needed (instead of ssl_client_ca_dir) in RedHat-based systems.
237
+ Added "doveadm fs" commands, mainly to debug lib-fs backends.
238
- Mailbox list indexes weren't using proper file permissions based
239
on the root directory.
241
v2.2.rc5 2013-04-05 Timo Sirainen <tss@iki.fi>
243
- A few small random fixes
245
v2.2.rc4 2013-04-05 Timo Sirainen <tss@iki.fi>
247
+ Added "doveadm replicator" commands
248
- Larger changes to lib-http and lib-ssl-iostream error handling.
249
The API caller can now get the exact error message as a string.
250
- Various bugfixes to LDAP changes in rc3
252
v2.2.rc3 2013-03-20 Timo Sirainen <tss@iki.fi>
254
+ dsync: Support syncing ACLs (and Sieve scripts with Pigeonhole)
255
+ ldap: Support subqueries and value pointers, see
256
http://wiki2.dovecot.org/AuthDatabase/LDAP/Userdb
257
+ postmaster_address setting: Expand %d to recipient's domain
258
- Fixed a crash when decoding quoted-printable content.
259
- dsync: Various bugfixes
261
v2.2.rc2 2013-02-15 Timo Sirainen <tss@iki.fi>
263
- rc1 wasn't actually usable in most configurations.
265
v2.2.rc1 2013-02-15 Timo Sirainen <tss@iki.fi>
269
v2.1.13 2013-01-06 Timo Sirainen <tss@iki.fi>
271
- Some fixes to cache file changes in v2.1.11.
272
- fts-solr: Overlong UTF8 sequences in mails were rejected by Solr and
273
caused the mails to not be indexed.
274
- virtual storage: Sorting mailbox by from/to/cc/bcc didn't work.
276
v2.1.12 2012-11-30 Timo Sirainen <tss@iki.fi>
278
- dovecot-config in v2.1.11 caused build problems with Pigeonhole
280
v2.1.11 2012-11-29 Timo Sirainen <tss@iki.fi>
282
* lmtp/lda: dovecot.index.cache file is no longer fully mapped to
283
memory, allowing mail deliveries to work even if the file is huge.
284
* auth: userdb passwd lookups are now done by auth worker processes
285
instead of auth master process (as it was documented, but
286
accidentally didn't work that way).
288
+ lmtp: lmtp_rcpt_check_quota=yes setting checks quota on RCPT TO.
289
- lmtp: After successful proxying RCPT TO, the next one to a
290
nonexistent user gave tempfail error instead of "user not found".
291
- lmtp proxy: Fixed hanging if remote server was down.
292
- imap: Fixed crash when SEARCH contained multiple KEYWORD parameters.
293
- doveadm: Various fixes to handling doveadm-server connections.
294
- -i <instance name> parameter for Dovecot tools didn't work correctly.
295
- director was somewhat broken in v2.1.10. This version also includes
296
various reliability enhancements.
297
- auth: passdb imap was broken in v2.1.10.
299
v2.1.10 2012-09-18 Timo Sirainen <tss@iki.fi>
301
+ imap: Implemented THREAD=ORDEREDSUBJECT extension.
302
+ Added "doveadm exec" command to easily execute commands from
303
libexec_dir, e.g. "doveadm exec imap -u user@domain"
304
+ Added "doveadm copy" command.
305
+ doveadm copy/move: Added optional user parameter to specify the
306
source username. This allows easily copying mails between different
308
+ Added namespace { disabled } setting to quickly enable/disable
309
namespaces. This is especially useful when its value is returned by
311
+ Added mailbox_alias plugin. It allows creating mailbox aliases using
313
+ imapc storage: Added imapc_max_idle_time setting to force activity
315
+ fts-solr: Expunging multiple messages is now faster.
316
- director: In some conditions director may have disconnected from
317
another director (without logging about it), thinking it was sending
319
- imap: Various fixes to listing mailboxes.
320
- pop3-migration plugin: Avoid disconnection from POP3 server due
322
- login processes crashed if there were a lot of local {} or remote {}
325
v2.1.9 2012-08-01 Timo Sirainen <tss@iki.fi>
327
* mail-log plugin: Log mailbox names with UTF-8 everywhere
328
(instead of mUTF-7 in some places and UTF-8 in other places)
329
* director: Changed director_username_hash setting's default from %u
330
to %Lu (= lowercase usernames). This doesn't break any existing
331
installations, but might fix some of them.
333
+ doveadm: Added "auth cache flush [<username>]" command.
334
+ Implemented dict passdb/userdb
335
+ Implemented Redis and memcached dict backends, which can be used as
336
auth backends. Redis can also be used as dict-quota backend.
337
+ Added plugin { quota_ignore_save_errors=yes } setting to allow saving
338
a mail when quota lookup fails with temporary failure.
339
- Full text search indexing might have failed for some messages,
340
always causing indexer-worker process to run out of memory.
341
- fts-lucene: Fixed handling SEARCH HEADER FROM/TO/SUBJECT/CC/BCC when
342
the header wasn't lowercased.
343
- fts-squat: Fixed crash when searching a virtual mailbox.
344
- pop3: Fixed assert crash when doing UIDL on empty mailbox on some
346
- auth: GSSAPI RFC compliancy and error handling fixes.
347
- Various fixes related to handling shared namespaces
349
v2.1.8 2012-07-03 Timo Sirainen <tss@iki.fi>
351
+ pop3c: Added pop3c_master_user setting.
352
- imap: Mailbox names were accidentally sent as UTF-8 instead of mUTF-7
353
in previous v2.1.x releases for STATUS, MYRIGHTS and GETQUOTAROOT
355
- lmtp proxy: Don't timeout connections too early when mail has a lot
357
- director: Don't crash if the director is working alone.
358
- shared mailboxes: Avoid doing "@domain" userdb lookups.
359
- doveadm: Fixed crash with proxying some commands.
360
- fts-squat: Fixed handling multiple SEARCH parameters.
361
- imapc: Fixed a crash when message had more than 8 keywords.
362
- imapc: Don't crash on APPEND/COPY if server doesn't support UIDPLUS.
1
364
v2.1.7 2012-05-29 Timo Sirainen <tss@iki.fi>
3
366
* LDAP: Compatibility fix for v2.0: ldap: If attributes contain