v2.2.26 release candidate released
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
* master: Removed hardcoded 511 backlog limit for listen(). The kernel
should limit this as needed.
* doveadm import: Source user is now initialized the same as target
user. Added -U parameter to override the source user.
* Mailbox names are no longer limited to 16 hierarchy levels. We'll
check another way to make sure mailbox names can't grow larger than
4096 bytes.
+ Added a concept of "alternative usernames" by returning user_* extra
field(s) in passdb. doveadm proxy list shows these alt usernames in
"doveadm proxy list" output. "doveadm director&proxy kick" adds
-f <passdb field> parameter. The alt usernames don't have to be
unique, so this allows creation of user groups and kicking them in
one command.
+ auth: passdb/userdb dict allows now %variables in key settings.
+ auth: If passdb returns noauthenticate=yes extra field, assume that
it only set extra fields and authentication wasn't actually performed.
+ auth: passdb static now supports password={scheme} prefix.
+ imapc: Added imapc_max_line_length to limit maximum memory usage.
+ imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs.
This replaces at least partially the rawlog plugin.
+ dsync: Added dsync_features=empty-header-workaround setting. This
makes incremental dsyncs work better for servers that randomly return
empty headers for mails. When an empty header is seen for an existing
mail, dsync assumes that it matches the local mail.
+ doveadm sync/backup: Added -I <max size> parameter to skip too
large mails.
+ doveadm sync/backup: Fixed -t parameter and added -e for "end date".
+ doveadm mailbox metadata: Added -s parameter to allow accessing
server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child processes.
This might have allowed untrusted processes to capture and prevent
"doveadm service stop" comands from working.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*}
from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous
userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy
lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected
returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary
anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with
lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when
namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress,
fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple
newly created mails. They all had UID=0 and the next mail could have
wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when
using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in
client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after
un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one
IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless
fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a
crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL
optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround.
Op 10/19/2016 om 11:01 PM schreef Timo Sirainen:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
Pigeonhole release candidate will follow soon. Old version apparently still compiles.
Regards,
Stephan.
Is there a commit gainst 2.2.25 for: that I could use?
- fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed.
thanks!
On Wed, Oct 19, 2016 at 4:01 PM, Timo Sirainen <tss@iki.fi> wrote:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
* master: Removed hardcoded 511 backlog limit for listen(). The
kernel should limit this as needed. * doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user. * Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
+ Added a concept of "alternative usernames" by returning user_*
extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command. + auth: passdb/userdb dict allows now %variables in key settings. + auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed. + auth: passdb static now supports password={scheme} prefix. + imapc: Added imapc_max_line_length to limit maximum memory usage. + imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin. + dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail. + doveadm sync/backup: Added -I <max size> parameter to skip too large mails. + doveadm sync/backup: Fixed -t parameter and added -e for "end date". + doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child
processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working. - auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there. - auth: Each userdb lookup from cache reset its TTL. - auth: Fixed auth_bind=yes + sasl_bind=yes to work together - auth: Blocking userdb lookups reset extra fields set by previous userdbs. - auth: Cache keys didn't include %{passdb:*} and %{userdb:*} - auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists. - lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs. - lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors. - lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work. - lmtp: %{userdb:*} variables didn't work in mail_log_prefix - autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty. - Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http) - director: Ignore duplicates in director_servers setting. - zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail. - doveadm stats reset wasn't reseting all the stats. - auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats. - quota count: Fixed deadlocks when updating vsize header. - dict-quota: Fixed crashes happening due to memory corruption. - dict proxy: Fixed various timeout-related bugs. - doveadm proxying: Fixed -A and -u wildcard handling. - doveadm proxying: Fixed hangs and bugs related to printing. - imap: Fixed wrongly triggering assert-crash in client_check_command_hangs. - imap proxy: Don't send ID command pipelined with nopipelining=yes - imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation. - imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet. - imap-hibernate: Fixed various failures when un-hibernating. - fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed. - fts-solr: Fixed searching multiple mailboxes (patch by x16a0) - doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails. - pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25. - pop3-migration: Fixed "truncated email header" workaround.
-- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 (c) E-Mail: larryrtx@gmail.com US Mail: 17716 Limpia Crk, Round Rock, TX 78664-7281
Reading the summary below I can't see any remote mention of a possible fix for the crashes from: http://dovecot.org/pipermail/dovecot/2016-October/105567.html Just confirming this the case.
Adi Pircalabu
On 20/10/16 08:01, Timo Sirainen wrote:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
- master: Removed hardcoded 511 backlog limit for listen(). The kernel should limit this as needed.
- doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user.
- Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
- Added a concept of "alternative usernames" by returning user_* extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command.
- auth: passdb/userdb dict allows now %variables in key settings.
- auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed.
- auth: passdb static now supports password={scheme} prefix.
- imapc: Added imapc_max_line_length to limit maximum memory usage.
- imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin.
- dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail.
- doveadm sync/backup: Added -I <max size> parameter to skip too large mails.
- doveadm sync/backup: Fixed -t parameter and added -e for "end date".
- doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround.
We'll take a look.
Aki
On October 20, 2016 at 2:34 AM Adi Pircalabu <adi@ddns.com.au> wrote:
Reading the summary below I can't see any remote mention of a possible fix for the crashes from: http://dovecot.org/pipermail/dovecot/2016-October/105567.html Just confirming this the case.
Adi Pircalabu
On 20/10/16 08:01, Timo Sirainen wrote:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
- master: Removed hardcoded 511 backlog limit for listen(). The kernel should limit this as needed.
- doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user.
- Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
- Added a concept of "alternative usernames" by returning user_* extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command.
- auth: passdb/userdb dict allows now %variables in key settings.
- auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed.
- auth: passdb static now supports password={scheme} prefix.
- imapc: Added imapc_max_line_length to limit maximum memory usage.
- imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin.
- dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail.
- doveadm sync/backup: Added -I <max size> parameter to skip too large mails.
- doveadm sync/backup: Fixed -t parameter and added -e for "end date".
- doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround.
On 20 Oct 2016, at 02:34, Adi Pircalabu <adi@ddns.com.au> wrote:
Reading the summary below I can't see any remote mention of a possible fix for the crashes from: http://dovecot.org/pipermail/dovecot/2016-October/105567.html Just confirming this the case.
Thanks, fixed: https://github.com/dovecot/core/commit/c67082dca6eda730c2bb07cdef242b1b8ee09...
On 2016-10-19, Timo Sirainen <tss@iki.fi> wrote:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
I'm seeing this on OpenBSD:
cc -DHAVE_CONFIG_H -I. -I../.. -I../../src/lib -I../../src/lib-test -I../../src/lib-settings -I../../src/lib-master -I../../src/lib-ssl-iostream -I/usr/local/include -std=gnu99 -O2 -pipe -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -fno-builtin-strftime -Wstrict-aliasing=2 -I/usr/include -MT ldap-search.lo -MD -MP -MF .deps/ldap-search.Tpo -c ldap-search.c -fPIC -DPIC -o .libs/ldap-search.o ldap-search.c: In function 'ldap_search_send': ldap-search.c:99: error: variable 'tv' has initializer but incomplete type
Fixed by adding "#include <sys/time.h>".
Compiled on CentOS 6 and CentOS 7 successfully.
On 10/19/2016 3:01 PM, Timo Sirainen wrote:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
- master: Removed hardcoded 511 backlog limit for listen(). The kernel should limit this as needed.
- doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user.
- Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
- Added a concept of "alternative usernames" by returning user_* extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command.
- auth: passdb/userdb dict allows now %variables in key settings.
- auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed.
- auth: passdb static now supports password={scheme} prefix.
- imapc: Added imapc_max_line_length to limit maximum memory usage.
- imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin.
- dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail.
- doveadm sync/backup: Added -I <max size> parameter to skip too large mails.
- doveadm sync/backup: Fixed -t parameter and added -e for "end date".
- doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround.
hacked on the FreeBSD port, and it works there as well. (FreeBSD 10.3-STABLE)
On Thu, Oct 20, 2016 at 3:19 PM, Eric Broch <ebroch@whitehorsetc.com> wrote:
Compiled on CentOS 6 and CentOS 7 successfully.
On 10/19/2016 3:01 PM, Timo Sirainen wrote:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
* master: Removed hardcoded 511 backlog limit for listen(). The
kernel should limit this as needed. * doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user. * Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
+ Added a concept of "alternative usernames" by returning user_*
extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command. + auth: passdb/userdb dict allows now %variables in key settings. + auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed. + auth: passdb static now supports password={scheme} prefix. + imapc: Added imapc_max_line_length to limit maximum memory usage. + imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin. + dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail. + doveadm sync/backup: Added -I <max size> parameter to skip too large mails. + doveadm sync/backup: Fixed -t parameter and added -e for "end date". + doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child
processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working. - auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there. - auth: Each userdb lookup from cache reset its TTL. - auth: Fixed auth_bind=yes + sasl_bind=yes to work together - auth: Blocking userdb lookups reset extra fields set by previous userdbs. - auth: Cache keys didn't include %{passdb:*} and %{userdb:*} - auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists. - lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs. - lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors. - lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work. - lmtp: %{userdb:*} variables didn't work in mail_log_prefix - autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty. - Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http) - director: Ignore duplicates in director_servers setting. - zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail. - doveadm stats reset wasn't reseting all the stats. - auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats. - quota count: Fixed deadlocks when updating vsize header. - dict-quota: Fixed crashes happening due to memory corruption. - dict proxy: Fixed various timeout-related bugs. - doveadm proxying: Fixed -A and -u wildcard handling. - doveadm proxying: Fixed hangs and bugs related to printing. - imap: Fixed wrongly triggering assert-crash in client_check_command_hangs. - imap proxy: Don't send ID command pipelined with nopipelining=yes - imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation. - imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet. - imap-hibernate: Fixed various failures when un-hibernating. - fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed. - fts-solr: Fixed searching multiple mailboxes (patch by x16a0) - doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails. - pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25. - pop3-migration: Fixed "truncated email header" workaround.
-- Larry Rosenman http://www.lerctr.org/~ler Phone: +1 214-642-9640 (c) E-Mail: larryrtx@gmail.com US Mail: 17716 Limpia Crk, Round Rock, TX 78664-7281
Timo Sirainen wrote on 20.10.2016 04:01:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
- master: Removed hardcoded 511 backlog limit for listen(). The kernel should limit this as needed.
- doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user.
- Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
- Added a concept of "alternative usernames" by returning user_* extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command.
- auth: passdb/userdb dict allows now %variables in key settings.
- auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed.
- auth: passdb static now supports password={scheme} prefix.
- imapc: Added imapc_max_line_length to limit maximum memory usage.
- imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin.
- dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail.
- doveadm sync/backup: Added -I <max size> parameter to skip too large mails.
- doveadm sync/backup: Fixed -t parameter and added -e for "end date".
- doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround.
Since v2.2.25 up to v2.2.26.rc1 on Ubuntu 16.04.1 LTS Dovecot is compiling successfully but "make check" is throwing out the following:
make[2]: Leaving directory
'/usr/local/src/dovecot-2.2.26.rc1/src/lib-charset'
Making check in lib-ssl-iostream
make[2]: Entering directory
'/usr/local/src/dovecot-2.2.26.rc1/src/lib-ssl-iostream'
make[2]: Nothing to be done for 'check'.
make[2]: Leaving directory
'/usr/local/src/dovecot-2.2.26.rc1/src/lib-ssl-iostream'
Making check in lib-dcrypt
make[2]: Entering directory
'/usr/local/src/dovecot-2.2.26.rc1/src/lib-dcrypt'
for bin in test-crypto test-stream; do
if ! /bin/sh ../../run-test.sh ../.. ./$bin; then exit 1; fi;
done
test_cipher_test_vectors ............................................. : ok
test_cipher_aead_test_vectors ........................................ : ok
test_hmac_test_vectors ............................................... : ok
test_load_v1_keys .................................................... : ok
test_load_v1_key ..................................................... : ok
test_load_v1_public_key .............................................. : ok
vex: the `impossible' happened: isZeroU vex storage: T total 586404328 bytes allocated vex storage: P total 640 bytes allocated
valgrind: the 'impossible' happened: LibVEX called failure_exit().
host stacktrace: ==20179== at 0x38083F48: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38084064: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380842A1: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380842CA: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3809F682: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38148008: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815514D: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38159272: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38159EA6: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815BD68: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815CDB6: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38145DEC: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380A1C0B: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380D296B: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380D45CF: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380E3946: ??? (in /usr/lib/valgrind/memcheck-amd64-linux)
sched status: running_tid=1
Thread 1: status = VgTs_Runnable (lwpid 20179) ==20179== at 0x5DE7E00: ??? (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5DC70BF: EC_POINT_mul (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5DC5F06: EC_POINT_new (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5823876: dcrypt_openssl_load_private_key_dovecot_v2 (dcrypt-openssl.c:1196) ==20179== by 0x5823876: dcrypt_openssl_load_private_key_dovecot (dcrypt-openssl.c:1244) ==20179== by 0x5823876: dcrypt_openssl_load_private_key (dcrypt-openssl.c:1587) ==20179== by 0x40FC08: test_load_v2_key (test-crypto.c:393) ==20179== by 0x41120C: test_run_funcs (test-common.c:236) ==20179== by 0x411B60: test_run (test-common.c:306) ==20179== by 0x40A99E: main (test-crypto.c:779)
Note: see also the FAQ in the source distribution. It contains workarounds to several common problems. In particular, if Valgrind aborted or crashed after identifying problems in your program, there's a good chance that fixing those problems will prevent Valgrind aborting or crashing, especially if it happened in m_mallocfree.c.
If that doesn't help, please report this bug to: www.valgrind.org
In the bug report, send all the above text, the valgrind version, and what OS and version you are using. Thanks.
Failed to run: ./test-crypto Makefile:1019: recipe for target 'check-test' failed make[2]: *** [check-test] Error 1 make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-dcrypt' Makefile:494: recipe for target 'check-recursive' failed make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src' Makefile:620: recipe for target 'check-recursive' failed make: *** [check-recursive] Error 1
On October 21, 2016 at 6:27 AM Tamsy <dovecot-list@mohtex.net> wrote:
Timo Sirainen wrote on 20.10.2016 04:01:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
- master: Removed hardcoded 511 backlog limit for listen(). The kernel should limit this as needed.
- doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user.
- Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
- Added a concept of "alternative usernames" by returning user_* extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command.
- auth: passdb/userdb dict allows now %variables in key settings.
- auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed.
- auth: passdb static now supports password={scheme} prefix.
- imapc: Added imapc_max_line_length to limit maximum memory usage.
- imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin.
- dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail.
- doveadm sync/backup: Added -I <max size> parameter to skip too large mails.
- doveadm sync/backup: Fixed -t parameter and added -e for "end date".
- doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround.
Since v2.2.25 up to v2.2.26.rc1 on Ubuntu 16.04.1 LTS Dovecot is compiling successfully but "make check" is throwing out the following:
make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-charset' Making check in lib-ssl-iostream make[2]: Entering directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-ssl-iostream' make[2]: Nothing to be done for 'check'. make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-ssl-iostream' Making check in lib-dcrypt make[2]: Entering directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-dcrypt' for bin in test-crypto test-stream; do
if ! /bin/sh ../../run-test.sh ../.. ./$bin; then exit 1; fi;
done test_cipher_test_vectors ............................................. : ok test_cipher_aead_test_vectors ........................................ : ok test_hmac_test_vectors ............................................... : ok test_load_v1_keys .................................................... : ok test_load_v1_key ..................................................... : ok test_load_v1_public_key .............................................. : okvex: the `impossible' happened: isZeroU vex storage: T total 586404328 bytes allocated vex storage: P total 640 bytes allocated
valgrind: the 'impossible' happened: LibVEX called failure_exit().
host stacktrace: ==20179== at 0x38083F48: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38084064: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380842A1: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380842CA: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3809F682: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38148008: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815514D: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38159272: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38159EA6: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815BD68: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815CDB6: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38145DEC: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380A1C0B: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380D296B: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380D45CF: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380E3946: ??? (in /usr/lib/valgrind/memcheck-amd64-linux)
sched status: running_tid=1
Thread 1: status = VgTs_Runnable (lwpid 20179) ==20179== at 0x5DE7E00: ??? (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5DC70BF: EC_POINT_mul (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5DC5F06: EC_POINT_new (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5823876: dcrypt_openssl_load_private_key_dovecot_v2 (dcrypt-openssl.c:1196) ==20179== by 0x5823876: dcrypt_openssl_load_private_key_dovecot (dcrypt-openssl.c:1244) ==20179== by 0x5823876: dcrypt_openssl_load_private_key (dcrypt-openssl.c:1587) ==20179== by 0x40FC08: test_load_v2_key (test-crypto.c:393) ==20179== by 0x41120C: test_run_funcs (test-common.c:236) ==20179== by 0x411B60: test_run (test-common.c:306) ==20179== by 0x40A99E: main (test-crypto.c:779)
Note: see also the FAQ in the source distribution. It contains workarounds to several common problems. In particular, if Valgrind aborted or crashed after identifying problems in your program, there's a good chance that fixing those problems will prevent Valgrind aborting or crashing, especially if it happened in m_mallocfree.c.
If that doesn't help, please report this bug to: www.valgrind.org
In the bug report, send all the above text, the valgrind version, and what OS and version you are using. Thanks.
Failed to run: ./test-crypto Makefile:1019: recipe for target 'check-test' failed make[2]: *** [check-test] Error 1 make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-dcrypt' Makefile:494: recipe for target 'check-recursive' failed make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src' Makefile:620: recipe for target 'check-recursive' failed make: *** [check-recursive] Error 1
This is an issue with either valgrind or openssl. See https://bugs.launchpad.net/ubuntu/+source/valgrind/+bug/1574437
Aki
Aki Tuomi wrote on 21.10.2016 11:34:
On October 21, 2016 at 6:27 AM Tamsy <dovecot-list@mohtex.net> wrote:
Timo Sirainen wrote on 20.10.2016 04:01:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
- master: Removed hardcoded 511 backlog limit for listen(). The kernel should limit this as needed.
- doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user.
- Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
- Added a concept of "alternative usernames" by returning user_* extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command.
- auth: passdb/userdb dict allows now %variables in key settings.
- auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed.
- auth: passdb static now supports password={scheme} prefix.
- imapc: Added imapc_max_line_length to limit maximum memory usage.
- imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin.
- dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail.
- doveadm sync/backup: Added -I <max size> parameter to skip too large mails.
- doveadm sync/backup: Fixed -t parameter and added -e for "end date".
- doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround. Since v2.2.25 up to v2.2.26.rc1 on Ubuntu 16.04.1 LTS Dovecot is compiling successfully but "make check" is throwing out the following:
make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-charset' Making check in lib-ssl-iostream make[2]: Entering directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-ssl-iostream' make[2]: Nothing to be done for 'check'. make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-ssl-iostream' Making check in lib-dcrypt make[2]: Entering directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-dcrypt' for bin in test-crypto test-stream; do
if ! /bin/sh ../../run-test.sh ../.. ./$bin; then exit 1; fi;
done test_cipher_test_vectors ............................................. : ok test_cipher_aead_test_vectors ........................................ : ok test_hmac_test_vectors ............................................... : ok test_load_v1_keys .................................................... : ok test_load_v1_key ..................................................... : ok test_load_v1_public_key .............................................. : okvex: the `impossible' happened: isZeroU vex storage: T total 586404328 bytes allocated vex storage: P total 640 bytes allocated
valgrind: the 'impossible' happened: LibVEX called failure_exit().
host stacktrace: ==20179== at 0x38083F48: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38084064: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380842A1: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380842CA: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3809F682: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38148008: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815514D: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38159272: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38159EA6: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815BD68: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815CDB6: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38145DEC: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380A1C0B: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380D296B: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380D45CF: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380E3946: ??? (in /usr/lib/valgrind/memcheck-amd64-linux)
sched status: running_tid=1
Thread 1: status = VgTs_Runnable (lwpid 20179) ==20179== at 0x5DE7E00: ??? (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5DC70BF: EC_POINT_mul (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5DC5F06: EC_POINT_new (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5823876: dcrypt_openssl_load_private_key_dovecot_v2 (dcrypt-openssl.c:1196) ==20179== by 0x5823876: dcrypt_openssl_load_private_key_dovecot (dcrypt-openssl.c:1244) ==20179== by 0x5823876: dcrypt_openssl_load_private_key (dcrypt-openssl.c:1587) ==20179== by 0x40FC08: test_load_v2_key (test-crypto.c:393) ==20179== by 0x41120C: test_run_funcs (test-common.c:236) ==20179== by 0x411B60: test_run (test-common.c:306) ==20179== by 0x40A99E: main (test-crypto.c:779)
Note: see also the FAQ in the source distribution. It contains workarounds to several common problems. In particular, if Valgrind aborted or crashed after identifying problems in your program, there's a good chance that fixing those problems will prevent Valgrind aborting or crashing, especially if it happened in m_mallocfree.c.
If that doesn't help, please report this bug to: www.valgrind.org
In the bug report, send all the above text, the valgrind version, and what OS and version you are using. Thanks.
Failed to run: ./test-crypto Makefile:1019: recipe for target 'check-test' failed make[2]: *** [check-test] Error 1 make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-dcrypt' Makefile:494: recipe for target 'check-recursive' failed make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src' Makefile:620: recipe for target 'check-recursive' failed make: *** [check-recursive] Error 1
This is an issue with either valgrind or openssl. See https://bugs.launchpad.net/ubuntu/+source/valgrind/+bug/1574437
Aki
Thank you for the hint on this, Aki.
I can confirm that Dovecot's Test Suite is finishing fine after building and installing the fixed version of valgrind following robgolebiowski's programming blog here: https://robgolebiowski.wordpress.com/2016/08/19/valgrind-failing-on-ubuntu/
On 10/20/2016 10:34 PM, Aki Tuomi wrote:
On October 21, 2016 at 6:27 AM Tamsy <dovecot-list@mohtex.net> wrote:
Timo Sirainen wrote on 20.10.2016 04:01:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
- master: Removed hardcoded 511 backlog limit for listen(). The kernel should limit this as needed.
- doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user.
- Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
- Added a concept of "alternative usernames" by returning user_* extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command.
- auth: passdb/userdb dict allows now %variables in key settings.
- auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed.
- auth: passdb static now supports password={scheme} prefix.
- imapc: Added imapc_max_line_length to limit maximum memory usage.
- imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin.
- dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail.
- doveadm sync/backup: Added -I <max size> parameter to skip too large mails.
- doveadm sync/backup: Fixed -t parameter and added -e for "end date".
- doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround. Since v2.2.25 up to v2.2.26.rc1 on Ubuntu 16.04.1 LTS Dovecot is compiling successfully but "make check" is throwing out the following:
make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-charset' Making check in lib-ssl-iostream make[2]: Entering directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-ssl-iostream' make[2]: Nothing to be done for 'check'. make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-ssl-iostream' Making check in lib-dcrypt make[2]: Entering directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-dcrypt' for bin in test-crypto test-stream; do
if ! /bin/sh ../../run-test.sh ../.. ./$bin; then exit 1; fi;
done test_cipher_test_vectors ............................................. : ok test_cipher_aead_test_vectors ........................................ : ok test_hmac_test_vectors ............................................... : ok test_load_v1_keys .................................................... : ok test_load_v1_key ..................................................... : ok test_load_v1_public_key .............................................. : okvex: the `impossible' happened: isZeroU vex storage: T total 586404328 bytes allocated vex storage: P total 640 bytes allocated
valgrind: the 'impossible' happened: LibVEX called failure_exit().
host stacktrace: ==20179== at 0x38083F48: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38084064: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380842A1: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380842CA: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3809F682: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38148008: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815514D: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38159272: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38159EA6: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815BD68: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815CDB6: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38145DEC: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380A1C0B: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380D296B: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380D45CF: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380E3946: ??? (in /usr/lib/valgrind/memcheck-amd64-linux)
sched status: running_tid=1
Thread 1: status = VgTs_Runnable (lwpid 20179) ==20179== at 0x5DE7E00: ??? (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5DC70BF: EC_POINT_mul (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5DC5F06: EC_POINT_new (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5823876: dcrypt_openssl_load_private_key_dovecot_v2 (dcrypt-openssl.c:1196) ==20179== by 0x5823876: dcrypt_openssl_load_private_key_dovecot (dcrypt-openssl.c:1244) ==20179== by 0x5823876: dcrypt_openssl_load_private_key (dcrypt-openssl.c:1587) ==20179== by 0x40FC08: test_load_v2_key (test-crypto.c:393) ==20179== by 0x41120C: test_run_funcs (test-common.c:236) ==20179== by 0x411B60: test_run (test-common.c:306) ==20179== by 0x40A99E: main (test-crypto.c:779)
Note: see also the FAQ in the source distribution. It contains workarounds to several common problems. In particular, if Valgrind aborted or crashed after identifying problems in your program, there's a good chance that fixing those problems will prevent Valgrind aborting or crashing, especially if it happened in m_mallocfree.c.
If that doesn't help, please report this bug to: www.valgrind.org
In the bug report, send all the above text, the valgrind version, and what OS and version you are using. Thanks.
Failed to run: ./test-crypto Makefile:1019: recipe for target 'check-test' failed make[2]: *** [check-test] Error 1 make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-dcrypt' Makefile:494: recipe for target 'check-recursive' failed make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src' Makefile:620: recipe for target 'check-recursive' failed make: *** [check-recursive] Error 1
This is an issue with either valgrind or openssl. See https://bugs.launchpad.net/ubuntu/+source/valgrind/+bug/1574437
Aki
I had an error (below) during make check as well on CentOS 5 (no issues with 6 and 7) and commented the following 'sed' commands (Removing Rpath from this page: https://fedoraproject.org/wiki/Packaging:Guidelines ) in the spec file resulting in a successful build: #sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool #sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
<make check error>
make[3]: Leaving directory
/usr/src/redhat/BUILD/dovecot-2.2.26.rc1/src/lib-storage' for bin in test-mail-search-args-imap test-mail-search-args-simplify test-mailbox-get; do \ if ! /bin/sh ../../run-test.sh ../.. ./$bin; then exit 1; fi; \ done /usr/src/redhat/BUILD/dovecot-2.2.26.rc1/src/lib-storage/.libs/lt-test-mail-search-args-imap: symbol lookup error: /usr/src/redhat/BUILD/dovecot-2.2.26.rc1/src/lib-storage/.libs/lt-test-mail-search-args-imap: undefined symbol: message_search_more_get_decoded ==12372== Invalid read of size 8 ==12372== at 0x3EABB0B925: ??? (in /lib64/libc-2.5.so) ==12372== by 0x3EABB0B79A: ??? (in /lib64/libc-2.5.so) ==12372== by 0x3EABB0BDF1: ??? (in /lib64/libc-2.5.so) ==12372== by 0x48024E8: _vgnU_freeres (vg_preloaded.c:62) ==12372== by 0x3EAB60D33B: _dl_signal_error (in /lib64/ld-2.5.so) ==12372== by 0x3EAB60D3D3: _dl_signal_cerror (in /lib64/ld-2.5.so) ==12372== by 0x3EAB609CEF: _dl_lookup_symbol_x (in /lib64/ld-2.5.so) ==12372== by 0x3EAB60A9D4: _dl_relocate_object (in /lib64/ld-2.5.so) ==12372== by 0x3EAB603629: dl_main (in /lib64/ld-2.5.so) ==12372== by 0x3EAB6134EA: _dl_sysdep_start (in /lib64/ld-2.5.so) ==12372== by 0x3EAB601389: _dl_start (in /lib64/ld-2.5.so) ==12372== by 0x3EAB600A77: ??? (in /lib64/ld-2.5.so) ==12372== Address 0x0 is not stack'd, malloc'd or (recently) free'd ==12372== ==12372== ==12372== Process terminating with default action of signal 11 (SIGSEGV) ==12372== Access not within mapped region at address 0x0 ==12372== at 0x3EABB0B925: ??? (in /lib64/libc-2.5.so) ==12372== by 0x3EABB0B79A: ??? (in /lib64/libc-2.5.so) ==12372== by 0x3EABB0BDF1: ??? (in /lib64/libc-2.5.so) ==12372== by 0x48024E8: _vgnU_freeres (vg_preloaded.c:62) ==12372== by 0x3EAB60D33B: _dl_signal_error (in /lib64/ld-2.5.so) ==12372== by 0x3EAB60D3D3: _dl_signal_cerror (in /lib64/ld-2.5.so) ==12372== by 0x3EAB609CEF: _dl_lookup_symbol_x (in /lib64/ld-2.5.so) ==12372== by 0x3EAB60A9D4: _dl_relocate_object (in /lib64/ld-2.5.so) ==12372== by 0x3EAB603629: dl_main (in /lib64/ld-2.5.so) ==12372== by 0x3EAB6134EA: _dl_sysdep_start (in /lib64/ld-2.5.so) ==12372== by 0x3EAB601389: _dl_start (in /lib64/ld-2.5.so) ==12372== by 0x3EAB600A77: ??? (in /lib64/ld-2.5.so) ==12372== If you believe this happened as a result of a stack ==12372== overflow in your program's main thread (unlikely but ==12372== possible), you can try to increase the size of the ==12372== main thread stack using the --main-stacksize= flag. ==12372== The main thread stack size used in this run was 10485760. Failed to run: ./test-mail-search-args-imap make[2]: *** [check-test] Error 1 make[2]: Leaving directory
/usr/src/redhat/BUILD/dovecot-2.2.26.rc1/src/lib-storage'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/usr/src/redhat/BUILD/dovecot-2.2.26.rc1/src'
make: *** [check-recursive] Error 1
error: Bad exit status from /var/tmp/rpm-tmp.69652 (%check)
RPM build errors: Bad exit status from /var/tmp/rpm-tmp.69652 (%check)
</make check error>
On October 21, 2016 at 8:52 AM Eric Broch <ebroch@whitehorsetc.com> wrote:
On 10/20/2016 10:34 PM, Aki Tuomi wrote:
On October 21, 2016 at 6:27 AM Tamsy <dovecot-list@mohtex.net> wrote:
Timo Sirainen wrote on 20.10.2016 04:01:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
- master: Removed hardcoded 511 backlog limit for listen(). The kernel should limit this as needed.
- doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user.
- Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
- Added a concept of "alternative usernames" by returning user_* extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command.
- auth: passdb/userdb dict allows now %variables in key settings.
- auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed.
- auth: passdb static now supports password={scheme} prefix.
- imapc: Added imapc_max_line_length to limit maximum memory usage.
- imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin.
- dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail.
- doveadm sync/backup: Added -I <max size> parameter to skip too large mails.
- doveadm sync/backup: Fixed -t parameter and added -e for "end date".
- doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround. Since v2.2.25 up to v2.2.26.rc1 on Ubuntu 16.04.1 LTS Dovecot is compiling successfully but "make check" is throwing out the following:
make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-charset' Making check in lib-ssl-iostream make[2]: Entering directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-ssl-iostream' make[2]: Nothing to be done for 'check'. make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-ssl-iostream' Making check in lib-dcrypt make[2]: Entering directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-dcrypt' for bin in test-crypto test-stream; do
if ! /bin/sh ../../run-test.sh ../.. ./$bin; then exit 1; fi;
done test_cipher_test_vectors ............................................. : ok test_cipher_aead_test_vectors ........................................ : ok test_hmac_test_vectors ............................................... : ok test_load_v1_keys .................................................... : ok test_load_v1_key ..................................................... : ok test_load_v1_public_key .............................................. : okvex: the `impossible' happened: isZeroU vex storage: T total 586404328 bytes allocated vex storage: P total 640 bytes allocated
valgrind: the 'impossible' happened: LibVEX called failure_exit().
host stacktrace: ==20179== at 0x38083F48: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38084064: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380842A1: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380842CA: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3809F682: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38148008: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815514D: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38159272: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38159EA6: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815BD68: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x3815CDB6: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x38145DEC: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380A1C0B: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380D296B: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380D45CF: ??? (in /usr/lib/valgrind/memcheck-amd64-linux) ==20179== by 0x380E3946: ??? (in /usr/lib/valgrind/memcheck-amd64-linux)
sched status: running_tid=1
Thread 1: status = VgTs_Runnable (lwpid 20179) ==20179== at 0x5DE7E00: ??? (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5DC70BF: EC_POINT_mul (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5DC5F06: EC_POINT_new (in /lib/x86_64-linux-gnu/libcrypto.so.1.0.0) ==20179== by 0x5823876: dcrypt_openssl_load_private_key_dovecot_v2 (dcrypt-openssl.c:1196) ==20179== by 0x5823876: dcrypt_openssl_load_private_key_dovecot (dcrypt-openssl.c:1244) ==20179== by 0x5823876: dcrypt_openssl_load_private_key (dcrypt-openssl.c:1587) ==20179== by 0x40FC08: test_load_v2_key (test-crypto.c:393) ==20179== by 0x41120C: test_run_funcs (test-common.c:236) ==20179== by 0x411B60: test_run (test-common.c:306) ==20179== by 0x40A99E: main (test-crypto.c:779)
Note: see also the FAQ in the source distribution. It contains workarounds to several common problems. In particular, if Valgrind aborted or crashed after identifying problems in your program, there's a good chance that fixing those problems will prevent Valgrind aborting or crashing, especially if it happened in m_mallocfree.c.
If that doesn't help, please report this bug to: www.valgrind.org
In the bug report, send all the above text, the valgrind version, and what OS and version you are using. Thanks.
Failed to run: ./test-crypto Makefile:1019: recipe for target 'check-test' failed make[2]: *** [check-test] Error 1 make[2]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src/lib-dcrypt' Makefile:494: recipe for target 'check-recursive' failed make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory '/usr/local/src/dovecot-2.2.26.rc1/src' Makefile:620: recipe for target 'check-recursive' failed make: *** [check-recursive] Error 1
This is an issue with either valgrind or openssl. See https://bugs.launchpad.net/ubuntu/+source/valgrind/+bug/1574437
Aki
I had an error (below) during make check as well on CentOS 5 (no issues with 6 and 7) and commented the following 'sed' commands (Removing Rpath from this page: https://fedoraproject.org/wiki/Packaging:Guidelines ) in the spec file resulting in a successful build: #sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool #sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
<make check error>
make[3]: Leaving directory
/usr/src/redhat/BUILD/dovecot-2.2.26.rc1/src/lib-storage' for bin in test-mail-search-args-imap test-mail-search-args-simplify test-mailbox-get; do \ if ! /bin/sh ../../run-test.sh ../.. ./$bin; then exit 1; fi; \ done /usr/src/redhat/BUILD/dovecot-2.2.26.rc1/src/lib-storage/.libs/lt-test-mail-search-args-imap: symbol lookup error: /usr/src/redhat/BUILD/dovecot-2.2.26.rc1/src/lib-storage/.libs/lt-test-mail-search-args-imap: undefined symbol: message_search_more_get_decoded ==12372== Invalid read of size 8 ==12372== at 0x3EABB0B925: ??? (in /lib64/libc-2.5.so) ==12372== by 0x3EABB0B79A: ??? (in /lib64/libc-2.5.so) ==12372== by 0x3EABB0BDF1: ??? (in /lib64/libc-2.5.so) ==12372== by 0x48024E8: _vgnU_freeres (vg_preloaded.c:62) ==12372== by 0x3EAB60D33B: _dl_signal_error (in /lib64/ld-2.5.so) ==12372== by 0x3EAB60D3D3: _dl_signal_cerror (in /lib64/ld-2.5.so) ==12372== by 0x3EAB609CEF: _dl_lookup_symbol_x (in /lib64/ld-2.5.so) ==12372== by 0x3EAB60A9D4: _dl_relocate_object (in /lib64/ld-2.5.so) ==12372== by 0x3EAB603629: dl_main (in /lib64/ld-2.5.so) ==12372== by 0x3EAB6134EA: _dl_sysdep_start (in /lib64/ld-2.5.so) ==12372== by 0x3EAB601389: _dl_start (in /lib64/ld-2.5.so) ==12372== by 0x3EAB600A77: ??? (in /lib64/ld-2.5.so) ==12372== Address 0x0 is not stack'd, malloc'd or (recently) free'd ==12372== ==12372== ==12372== Process terminating with default action of signal 11 (SIGSEGV) ==12372== Access not within mapped region at address 0x0 ==12372== at 0x3EABB0B925: ??? (in /lib64/libc-2.5.so) ==12372== by 0x3EABB0B79A: ??? (in /lib64/libc-2.5.so) ==12372== by 0x3EABB0BDF1: ??? (in /lib64/libc-2.5.so) ==12372== by 0x48024E8: _vgnU_freeres (vg_preloaded.c:62) ==12372== by 0x3EAB60D33B: _dl_signal_error (in /lib64/ld-2.5.so) ==12372== by 0x3EAB60D3D3: _dl_signal_cerror (in /lib64/ld-2.5.so) ==12372== by 0x3EAB609CEF: _dl_lookup_symbol_x (in /lib64/ld-2.5.so) ==12372== by 0x3EAB60A9D4: _dl_relocate_object (in /lib64/ld-2.5.so) ==12372== by 0x3EAB603629: dl_main (in /lib64/ld-2.5.so) ==12372== by 0x3EAB6134EA: _dl_sysdep_start (in /lib64/ld-2.5.so) ==12372== by 0x3EAB601389: _dl_start (in /lib64/ld-2.5.so) ==12372== by 0x3EAB600A77: ??? (in /lib64/ld-2.5.so) ==12372== If you believe this happened as a result of a stack ==12372== overflow in your program's main thread (unlikely but ==12372== possible), you can try to increase the size of the ==12372== main thread stack using the --main-stacksize= flag. ==12372== The main thread stack size used in this run was 10485760. Failed to run: ./test-mail-search-args-imap make[2]: *** [check-test] Error 1 make[2]: Leaving directory
/usr/src/redhat/BUILD/dovecot-2.2.26.rc1/src/lib-storage' make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory `/usr/src/redhat/BUILD/dovecot-2.2.26.rc1/src' make: *** [check-recursive] Error 1 error: Bad exit status from /var/tmp/rpm-tmp.69652 (%check)RPM build errors: Bad exit status from /var/tmp/rpm-tmp.69652 (%check)
</make check error>
We have dropped support for CentOS5.
Aki Tuomi Dovecot oy
On 10/19/2016 02:01 PM, Timo Sirainen wrote:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
I am not able to test it but I can verify that it compiles on CentOS against LibreSSL 2.4.3
On 10/21/2016 02:25 AM, Michael A. Peters wrote:
On 10/19/2016 02:01 PM, Timo Sirainen wrote:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
I am not able to test it but I can verify that it compiles on CentOS against LibreSSL 2.4.3
On CentOS 7
Hi,
Do you plan on inclinding the following patch in the final release?
http://www.dovecot.org/list/dovecot/2016-October/105734.html
I have some tests in place and can backport the patch if necessary.
Regards,
On 10/19/2016 11:01 PM, Timo Sirainen wrote:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
- master: Removed hardcoded 511 backlog limit for listen(). The kernel should limit this as needed.
- doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user.
- Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
- Added a concept of "alternative usernames" by returning user_* extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command.
- auth: passdb/userdb dict allows now %variables in key settings.
- auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed.
- auth: passdb static now supports password={scheme} prefix.
- imapc: Added imapc_max_line_length to limit maximum memory usage.
- imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin.
- dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail.
- doveadm sync/backup: Added -I <max size> parameter to skip too large mails.
- doveadm sync/backup: Fixed -t parameter and added -e for "end date".
- doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround.
Hi!
This is included in the rc already, while not mentioned in changelog.
Aki
On 21.10.2016 14:16, Pierre Jaury wrote:
Hi,
Do you plan on inclinding the following patch in the final release?
http://www.dovecot.org/list/dovecot/2016-October/105734.html
I have some tests in place and can backport the patch if necessary.
Regards,
On 10/19/2016 11:01 PM, Timo Sirainen wrote:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.26.rc1.tar.gz.sig
There are quite a lot of changes since v2.2.25. Please try out this RC so we can get a good and stable v2.2.26 out.
- master: Removed hardcoded 511 backlog limit for listen(). The kernel should limit this as needed.
- doveadm import: Source user is now initialized the same as target user. Added -U parameter to override the source user.
- Mailbox names are no longer limited to 16 hierarchy levels. We'll check another way to make sure mailbox names can't grow larger than 4096 bytes.
- Added a concept of "alternative usernames" by returning user_* extra field(s) in passdb. doveadm proxy list shows these alt usernames in "doveadm proxy list" output. "doveadm director&proxy kick" adds -f <passdb field> parameter. The alt usernames don't have to be unique, so this allows creation of user groups and kicking them in one command.
- auth: passdb/userdb dict allows now %variables in key settings.
- auth: If passdb returns noauthenticate=yes extra field, assume that it only set extra fields and authentication wasn't actually performed.
- auth: passdb static now supports password={scheme} prefix.
- imapc: Added imapc_max_line_length to limit maximum memory usage.
- imap, pop3: Added rawlog_dir setting to store IMAP/POP3 traffic logs. This replaces at least partially the rawlog plugin.
- dsync: Added dsync_features=empty-header-workaround setting. This makes incremental dsyncs work better for servers that randomly return empty headers for mails. When an empty header is seen for an existing mail, dsync assumes that it matches the local mail.
- doveadm sync/backup: Added -I <max size> parameter to skip too large mails.
- doveadm sync/backup: Fixed -t parameter and added -e for "end date".
- doveadm mailbox metadata: Added -s parameter to allow accessing server metadata by using empty mailbox name.
- master process's listener socket was leaked to all child processes. This might have allowed untrusted processes to capture and prevent "doveadm service stop" comands from working.
- auth: userdb fields weren't passed to auth-workers, so %{userdb:*} from previous userdbs didn't work there.
- auth: Each userdb lookup from cache reset its TTL.
- auth: Fixed auth_bind=yes + sasl_bind=yes to work together
- auth: Blocking userdb lookups reset extra fields set by previous userdbs.
- auth: Cache keys didn't include %{passdb:*} and %{userdb:*}
- auth-policy: Fixed crash due to using already-freed memory if policy lookup takes longer than auth request exists.
- lib-auth: Unescape passdb/userdb extra fields. Mainly affected returning extra fields with LFs or TABs.
- lmtp_user_concurrency_limit>0 setting was logging unnecessary anvil errors.
- lmtp_user_concurrency_limit is now checked before quota check with lmtp_rcpt_check_quota=yes to avoid unnecessary quota work.
- lmtp: %{userdb:*} variables didn't work in mail_log_prefix
- autoexpunge settings for mailboxes with wildcards didn't work when namespace prefix was non-empty.
- Fixed writing >2GB to iostream-temp files (used by fs-compress, fs-metawrap, doveadm-http)
- director: Ignore duplicates in director_servers setting.
- zlib, IMAP BINARY: Fixed internal caching when accessing multiple newly created mails. They all had UID=0 and the next mail could have wrongly used the previously cached mail.
- doveadm stats reset wasn't reseting all the stats.
- auth_stats=yes: Don't update num_logins, since it doubles them when using with mail stats.
- quota count: Fixed deadlocks when updating vsize header.
- dict-quota: Fixed crashes happening due to memory corruption.
- dict proxy: Fixed various timeout-related bugs.
- doveadm proxying: Fixed -A and -u wildcard handling.
- doveadm proxying: Fixed hangs and bugs related to printing.
- imap: Fixed wrongly triggering assert-crash in client_check_command_hangs.
- imap proxy: Don't send ID command pipelined with nopipelining=yes
- imap-hibernate: Don't execute quota_over_script or last_login after un-hibernation.
- imap-hibernate: Don't un-hibernate if client sends DONE+IDLE in one IP packet.
- imap-hibernate: Fixed various failures when un-hibernating.
- fts: fts_autoindex=yes was broken in 2.2.25 unless fts_autoindex_exclude settings existed.
- fts-solr: Fixed searching multiple mailboxes (patch by x16a0)
- doveadm fetch body.snippet wasn't working in 2.2.25. Also fixed a crash with certain emails.
- pop3-migration + dbox: Various fixes related to POP3 UIDL optimization in 2.2.25.
- pop3-migration: Fixed "truncated email header" workaround.
participants (10)
-
Adi Pircalabu
-
Aki Tuomi
-
Eric Broch
-
Larry Rosenman
-
Michael A. Peters
-
Pierre Jaury
-
Stephan Bosch
-
Stuart Henderson
-
Tamsy
-
Timo Sirainen