Release date: 2012-06-09 15:39 UTC
Release state: stable
Changelog:
* Added possibility to set additional parameters of message part header,
e.g. attachment size [alec]
* Added automatic setting of attachment size via Content-Disposition header
size parameter [alec]
* Update enigmail to 1.4.2
* Update Lightning to 1.5
Changelog:
* Filelink: Upload your files to an online storage service and send links
to your friends, avoiding bounce back due to large attachments. We have
partnered with YouSendIt to bring this feature, but additional partners
will be added in the near future.
* In partnership with Gandi and Hover, you can now sign up for a
personalized email address from within Thunderbird. Along with your new
email address, Thunderbird will be automatically set up and ready to
send and receive messages. We are working with additional suppliers to
cover more areas of the world and to provide more options in the future.
* Various security fixes
MFSA 2012-40 Buffer overflow and use-after-free issues found using Address Sanitizer
MFSA 2012-39 NSS parsing errors with zero length items
MFSA 2012-38 Use-after-free while replacing/inserting a node in a document
MFSA 2012-37 Information disclosure though Windows file shares and shortcut files
MFSA 2012-36 Content Security Policy inline-script bypass
MFSA 2012-35 Privilege escalation through Mozilla Updater and Windows Updater Service
MFSA 2012-34 Miscellaneous memory safety hazards
* The minimum system requirements for Windows are now Windows XP Service
Pack 2 or later.
1. New authenticator driver, "gsasl". Server-only (at present).
This is a SASL interface, licensed under GPL, which can be found at
http://www.gnu.org/software/gsasl/.
This system does not provide sources of data for authentication, so
careful use needs to be made of the conditions in Exim.
2. New authenticator driver, "heimdal_gssapi". Server-only.
A replacement for using cyrus_sasl with Heimdal, now that $KRB5_KTNAME
is no longer honoured for setuid programs by Heimdal. Use the
"server_keytab" option to point to the keytab.
3. The "pkg-config" system can now be used when building Exim to reference
cflags and library information for lookups and authenticators, rather
than having to update "CFLAGS", "AUTH_LIBS", "LOOKUP_INCLUDE" and
"LOOKUP_LIBS" directly. Similarly for handling the TLS library support
without adjusting "TLS_INCLUDE" and "TLS_LIBS".
In addition, setting PCRE_CONFIG=yes will query the pcre-config tool to
find the headers and libraries for PCRE.
4. New expansion variable $tls_bits.
5. New lookup type, "dbmjz". Key is an Exim list, the elements of which will
be joined together with ASCII NUL characters to construct the key to pass
into the DBM library. Can be used with gsasl to access sasldb2 files as
used by Cyrus SASL.
6. OpenSSL now supports TLS1.1 and TLS1.2 with OpenSSL 1.0.1.
Avoid release 1.0.1a if you can. Note that the default value of
"openssl_options" is no longer "+dont_insert_empty_fragments", as that
increased susceptibility to attack. This may still have interoperability
implications for very old clients (see version 4.31 change 37) but
administrators can choose to make the trade-off themselves and restore
compatibility at the cost of session security.
7. Use of the new expansion variable $tls_sni in the main configuration option
tls_certificate will cause Exim to re-expand the option, if the client
sends the TLS Server Name Indication extension, to permit choosing a
different certificate; tls_privatekey will also be re-expanded. You must
still set these options to expand to valid files when $tls_sni is not set.
The SMTP Transport has gained the option tls_sni, which will set a hostname
for outbound TLS sessions, and set $tls_sni too.
A new log_selector, +tls_sni, has been added, to log received SNI values
for Exim as a server.
8. The existing "accept_8bitmime" option now defaults to true. This means
that Exim is deliberately not strictly RFC compliant. We're following
Dan Bernstein's advice in http://cr.yp.to/smtp/8bitmime.html by default.
Those who disagree, or know that they are talking to mail servers that,
even today, are not 8-bit clean, need to turn off this option.
9. Exim can now be started with -bw (with an optional timeout, given as
-bw<timespec>). With this, stdin at startup is a socket that is
already listening for connections. This has a more modern name of
"socket activation", but forcing the activated socket to fd 0. We're
interested in adding more support for modern variants.
10. ${eval } now uses 64-bit values on supporting platforms. A new "G" suffix
for numbers indicates multiplication by 1024^3.
11. The GnuTLS support has been revamped; the three options gnutls_require_kx,
gnutls_require_mac & gnutls_require_protocols are no longer supported.
tls_require_ciphers is now parsed by gnutls_priority_init(3) as a priority
string, documentation for which is at:
http://www.gnu.org/software/gnutls/manual/html_node/Priority-Strings.html
SNI support has been added to Exim's GnuTLS integration too.
For sufficiently recent GnuTLS libraries, ${randint:..} will now use
gnutls_rnd(), asking for GNUTLS_RND_NONCE level randomness.
12. With OpenSSL, if built with EXPERIMENTAL_OCSP, a new option tls_ocsp_file
is now available. If the contents of the file are valid, then Exim will
send that back in response to a TLS status request; this is OCSP Stapling.
Exim will not maintain the contents of the file in any way: administrators
are responsible for ensuring that it is up-to-date.
13. ${lookup dnsdb{ }} supports now SPF record types. They are handled
identically to TXT record lookups.
14. New expansion variable $tod_epoch_l for higher-precision time.
15. New global option tls_dh_max_bits, defaulting to current value of NSS
hard-coded limit of DH ephemeral bits, to fix interop problems caused by
GnuTLS 2.12 library recommending a bit count higher than NSS supports.
16. tls_dhparam now used by both OpenSSL and GnuTLS, can be path or identifier.
Option can now be a path or an identifier for a standard prime.
If unset, we use the DH prime from section 2.2 of RFC 5114, "ike23".
Set to "historic" to get the old GnuTLS behaviour of auto-generated DH
primes.
17. SSLv2 now disabled by default in OpenSSL. (Never supported by GnuTLS).
Use "openssl_options -no_sslv2" to re-enable support, if your OpenSSL
install was not built with OPENSSL_NO_SSL2 ("no-ssl2").
* rfc2045/rfc2045reply.c (mkreply): Fix copying of the contents of the
original message.
* msg2html.c (msg2html_download): rfc2231_udecodeDisposition() failure
is not fatal.
* cgi/cgi.c (cgiformdecode): Ditto.
* pcp/pcp.c (list_msg_mime): Ditto.
* liblock/mail.c (dotlock_exists): Handle getting here because of a
recycled pid.
* unicode/unicode.c (init_default_chset): Handle NULL from setlocale().
* rfc2045/reformime.c (main2): Fixed segfault on some arches from an
initial null given to strtok.
* rfc2045/reformime.c (main2): On ia64 and arm, argv is in readonly
memory.
* showmsg2html.c (error): Provide a definition for error().
* Fix gcc 4.6 warnings
* sqwebmail.spec.in: switch to systemd. Remove script used when
upgrading from ancient pre-sysconftool versions.
* Fix autoconf warnings.
* cone/gettext.C: gettext can't deal with literal ^Ds, so provide a
workaround: "\\D" literal.
* cone/cursesindexdisplay.C (drawLine): Misformatting of the date
column in some locales.
* rfc2045/rfc2045reply.c (mkreply): Fix copying of the contents of the
original message.
* rfc2045/reformime.c (do_print_info): rfc2231_udecodeDisposition()
failure is not fatal.
* rfc2045/reformime.c (get_suitable_filename): Ditto.
* rfc2045/reformime.c (main2): Fixed segfault on some arches from an
initial null given to strtok.
* mailbot: add "feedback" and "replyfeedback" formats, generating
RFC 5965-formatted feedback report. -a option attaches the entire
original message, instead of only its headers, for "replydsn",
"feedback", and "replyfeedback" formats.
* rfc2045/reformime.c (main2): On ia64 and arm, argv is in readonly
memory.
* imapd.c (main): Open IMAPDEBUGFILE only if it exists already.
(do_expunge): Optionally log deletions.
* pop3dserver.c (cleanup): Optionally log deletions.
* imapd.dist.in (IMAP_MOVE_EXPUNGE_TO_TRASH): Officially document how
IMAPDEBUGFILE works.
* imapscanclient.c: Postpone Y2038K for a while, for uid validities.
* liblock/mail.c (dotlock_exists): Handle getting here because of a
recycled pid.
* unicode/unicode.c (init_default_chset): Handle NULL from setlocale().
* rfc2045/reformime.c (main2): Fixed segfault on some arches from an
initial null given to strtok.
* rfc2045/reformime.c (main2): On ia64 and arm, argv is in readonly memory.
* pop3dserver.c (openpop3dlist): Try a few times to reopen pop3dsizelist
if it fails with ESTALE.
* pop3d.dist.in: Add AUTHSERVICE settings. They've been supported all along.
* Fix gcc 4.6 warnings
* courier-imap.spec.in: switch to systemd. Remove script used when
upgrading from ancient pre-sysconftool versions.
* Fix autoconf warnings.
* rfc2045mkboundary.c was broken in 0.68
Changes 0.68:
* rfc2045/rfc2045mkboundary.c (rfc2045_mk_boundary): truncate
the hostname portion of the boundary to 30 chars.
* courier/doc/courier.sgml: Remove descriptions of some configuration
files that were moved to the courier-authlib package a while ago.
They don't belong here any more.
* courier/submit.C: Use the authenticated address, instead of the
return address, for domain-based virtual configuration.
* courier/libs/cfilename.c (config_has_vhost): Checks whether
vhost.[ip] exists.
* courier/module.esmtp/courieresmtpd.c (main): Only set a message's
virtual host if vhost.[ip] exists.
* courier/module.esmtp/esmtpclient.c (get_sourceaddr): Make sure the
input buffer is null-terminated.
* courier/submit.C (getrcpts): If there's no vhost setting from the
sender's IP address (this includes local mail!) if vhost.domain exists,
use [domain] as the virtual host.
* Remove config_search(), which simply called config_localfilename().
Change all current callers to call config_localfilename().
* courier/libs/cfilename.c (config_set_local_vhost): saves a string
that gets appended as a suffix, by config_localfilename(), and if that
filename exists, that's returned as the filename, otherwise it's the
original string without the suffix. config_get_local_vhost() returns
the suffix string.
to config_set_local_vhost().
* courier/libs/comsubmitclient.c (submit_fork): If
config_get_local_vhost(), add a -vhost parameter to submit().
* courier/submit.C (cppmain): -vhost sets config_set_local_vhost().
* courier/submit2.C (closectl): New COMCTLFILE_VHOST parameter in the
config file, taken from the vhost setting.
* courier/libs/comctlfile.c (ctlfile_setvhost): If COMCTLFILE_VHOST is
set, call ctlfile_setvhost(), return an indication if the vhost has
changed. Absence of a COMCTLFILE_VHOST treated as a discrete "(null)"
setting.
* courier/module.esmtp/esmtpclient.c (esmtpchild): If ctlfile_setvhost()
then disconnect the current socket, if one is open.
* courier/module.esmtp/esmtpclient.c (get_sourceaddr): The IP address
specified in ipout or ip6out overrides SOURCE_ADDRESS and
SOURCE_ADDRESS_IPV6 environment variable.
* courier/module.local/localmail.c (main): Call ctlfile_setvhost().
* courier/module.uucp/uucp.c (uux): Call ctlfile_setvhost().
* courier/module.dsn/dsn.c (main): Call ctlfile_setvhost().
* liblock/mail.c (dotlock_exists): Quell a compiler warning.
* courier/courierd.dist.in SOURCE_ADDRESS: Add a note that this setting
is deprecated.
Changelog:
* Security fixes can be found here
MFSA 2012-40 Buffer overflow and use-after-free issues found using Address Sanitizer
MFSA 2012-39 NSS parsing errors with zero length items
MFSA 2012-38 Use-after-free while replacing/inserting a node in a document
MFSA 2012-37 Information disclosure though Windows file shares and shortcut files
MFSA 2012-36 Content Security Policy inline-script bypass
MFSA 2012-34 Miscellaneous memory safety hazards
* The MAPIResolveName API has been added to Simple MAPI
interfaces which should improve interoperability (244222)
database, and they are looking for them directly under INSTALL_DIR.
As such, move them to RCDIR.
- install bin/ scripts with --x rights.
Package not bumped. All these changes do not affect roundcube besides
installation and update. If your roundcube install works already, chances
are you have adjusted the package in a way similar to this patch.
PR 46533 by Wen Heping.
While here, set LICENSE.
1.0.6 Changelog:
QA release
* Bug #18856: Authentication warnings because of wrong Auth_SASL::factory
argument [kguest]
1.0.5 Changelog:
QA release
* Added basic support for any mechanism of the SCRAM family; with thanks to
Jehan Pages. [kguest]
* crammd5 and digestmd5 mechanisms name deprecated in favour of IANA registered
names 'cram-md5' and 'digest-md5'; with thanks to Jehan Pages. [kguest]
Changelog:
* Request #19406: Allow to set individual attachment part headers [alec]
* Fixed Bug #18982: Non-static method Mail_mimePart::encodeHeader() should not
be called statically [alec]
* 3.1.4 (stable)
* Some minor fixes for IMAP were made.
* A bug that cancelling editing contact on address book results in
click-and-drag behavior with newer GTK+ was fixed.
* Corrupted message caches of news and IMAP are automatically discarded
now.
* Win32: included libpng library was updated to 1.2.49 (security fix).
* Win32: included libtiff library was updated to 3.9.6 with CVE-2012-1173
patch (security fix).
* Win32: OpenSSL was updated to 0.9.8w (security fix).
* Win32: the bug that the installation process continued even if uninstall
was cancelled on update was fixed.
* 3.1.3 (stable)
* On browsing IMAP folder, the error "imap_cmd_gen_send: cannot send
command because another command is already running." was fixed.
* The crash bug that occurred when IMAP message fetching and new
message checking happened at the same time was fixed.
* The crash bug that was caused by offline switch while IMAP session was
active was fixed.
* A bug that filter settings were lost if Escape key was pressed
quickly on auto filter creation was fixed.
* Win32: OpenSSL was updated to 0.9.8t (security fix).
* Win32: included libpng library was updated to 1.2.47 (security fix).
* Win32: included curl executable was updated to 7.24.0.
* 1.1.0 (stable)
* The bugfixes and minor feature improvements were merged from Sylpheed
trunk.
- procmime_parse_mime_parameter(): spaces around equals between name
and value of MIME parameters are allowed.
- procmime_scan_multipart_message(): the max recursion level were
increased.
- conv_encode_header(): several bugs were fixed.
- my_memmem(): the buffer overrun was fixed.
- pop.c: invalid APOP timestamp is checked for now (CVE-2007-1558).
- socket.c: the bug that caused busy loop when connection was immediately
refused was fixed.
- procmime_get_encoding_for_str()
extract_parenthesis_with_escape()
extract_quote_with_escape()
strsplit_csv()
uriencode_for_mailto(): new functions were added.
* 1.0.0 (stable)
* The reference manuals were mostly completed.
* The libtool version was increased.
* 1.0.0beta1 (beta)
* The reference manuals were added.
* The sample codes were added.
* The new APIs were added to prefs_common, account, and folder.
* Several bugs were fixed.
* LDAP: Compatibility fix for v2.0: ldap: If attributes contain
ldapAttr=key=template%$ and ldapAttr doesn't exist, skip the key
instead of using "template" value with empty %$ part for the key.
+ pop3: Added pop3_uidl_duplicates setting for changing the behavior
for duplicate UIDLs.
+ director: Added "doveadm director ring remove" command.
- director: Don't crash with quickly disconnecting incoming director
connections.
- mdbox: If mail was originally saved to non-INBOX, and namespace
prefix is non-empty, don't assert-crash when rebuilding indexes.
- sdbox: Don't use more fds than necessary when copying mails.
- auth: Fixed crash with DIGEST-MD5 when attempting to do master user
login without master passdbs.
- Several fixes to mail_shared_explicit_inbox=no
- imapc: Use imapc_list_prefix also for listing subscriptions.
* Added support for retrieving Sieve scripts from dict lookup. This
means that Sieve scripts can now be downloaded from a database.
Compiled script binaries are still put on disk somewhere if used.
The INSTALL documentation is updated with information on this new
feature and the (backwards-compatible) changes to the configuration.
Note that his feature is currently not supported for
sieve_before/sieve_after or script management through ManageSieve.
+ Incorporated the sieve_duplicate plugin into main Pigeonhole tree as
a normal extension (vnd.dovecot.duplicate). This Dovecot-specific
extension adds the ability to check for duplicate deliveries based
on message ID. Specification can be found in:
doc/rfc/spec-bosch-sieve-duplicate.txt
+ Added support for specifying multiple sieve_before and sieve_after
paths. This adds much more flexibility to the multiscript
configuration. One application is to have user-specific Sieve
scripts outside the user's normal control through ManageSieve.
+ Added a "session ID" string for managesieve connections, available in
%{session} variable (analogous to Dovecot change).
- Fixed several small issues, including a few potential segfault bugs,
based on static source code analysis.
- ManageSieve: changed use of EPROTO error to EIO in ManageSieve
string stream implementation because it is apparently not known in
BSD.
- Gave stamp.h.in (needed for autotools) some content to prevent it
from disappearing in patch files.
- Fixed bug that caused a SunStudio CC compile failure (reported by
Piotr Tarnowski).
== [release-1-8-3] 1.8.3: 2012-05-22
A bug fix release of 1.8.2.
=== Package
* [ubuntu] Added Ubuntu Precise Pangolin support.
* [solaris] Use pkgutil instead of pkg-get.
[GitHub #6]
[Reported by h0lzi]
=== milter manager
==== Improvements
* binding ruby: update bundled ruby-glib2 to 1.1.3
==== Fixes
* [manager] support manager.event_loop_backend = "libev" on CentOS.
[Reported by SHIONO Kenji]
* [manager][children] use gulong instead of guint.
g_signal_connect() returns gulong.
=== milter-core
==== Fixes
* [libev] check whether the next id is used or not.
=== Document
==== Fixes
* doc install debian ubuntu: add missing postfix group related configuration
milter-manager user should belong to postfix group to access a socket
of other milter.
[milter-manager-users-ja:00163]
[Suggested by Satoru Sakashita]
* doc debian: adjust to the latest squeeze environment
[Suggested by Satoru Sakashita]
Changes from release announce:
* OpenSSL related (all supported Postfix versions).
o Some people have reported program crashes when the OpenSSL
library was updated while Postfix was accessing the Postfix
TLS session cache. To avoid this, the Postfix TLS session
cache ID now includes the OpenSSL library version number.
This cache ID is not shared via the network.
o The OpenSSL workaround introduced with the previous stable
and legacy releases did not compile with older gcc compilers.
These compilers can't handle #ifdef inside a macro invocation
(NOT: definition).
* postscreen(8) related (Postfix 2.9, Postfix 2.8).
o To avoid repeated warnings from postscreen(8) with "connect
to private/dnsblog service: Connection refused" on FreeBSD,
the dnsblog(8) daemon now uses the single_server program
driver instead of the multi_server driver. This one-line
code change has no performance impact for other systems,
and eliminates a high-frequency accept() race on a shared
socket that appears to cause trouble on FreeBSD. The same
single_server program driver has proven itself for many
years in smtpd(8). Problem reported by Sahil Tandon.
* Laptop-friendly support (all supported Postfix versions). A
little-known secret is that Postfix has always had support to
avoid unnecessary disk spin-up for MTIME updates, by doing
s/fifo/unix/ in master.cf (this is currently not supported on
Solaris systems). However, two minor fixes are needed to make
this bullet-proof.
o In laptop-friendly mode, the "postqueue -f" and "sendmail
-q" commands did not wait until their requests had reached
the pickup and qmgr servers before closing their UNIX-domain
request sockets.
o In laptop-friendly mode, the unused postkick command waited
for more than a minute because the event_drain() function
was comparing bitmasks incorrectly on systems with kqueue(2),
epoll(2) or /dev/poll support.
-make use of IMAP BODY.PEEK configurable; set the IMAP retriever parameter
`use_peek` to False to disable use of PEEK to get getmail's historical IMAP
behaviour.
series, users are encouraged to read /usr/pkg/share/doc/sympa/NEWS for
details. Summary of new features:
*** New bulk.pl daemon installed with Sympa. This daemon is dedicated to
mail distribution and allows to parallelize this process on a single
server as well as on multiple servers.
*** [Olivier Lumineau, CRU] Fresh new web CSS for the web interface.
*** Replace storage of password with encryption by md5 fingerprint. This
make remind password impossible. So now a one time ticket table is created
ticket are sent by email as an authentication token. Ticket can be used
for lost password, create account, moderation request . It should be
generalized to all operation that need a email chalenge.
*** New propertie in object message : spam_status . This feature is used in
modindex (listing of message waiting for moderation) to show message
tagued as spam.
4 new parameters :
- antispam_feature default off
- antispam_tag_header_name default X-Spam-Status
- antispam_tag_header_spam_regexp default ^\s*Yes
- antispam_tag_header_ham_regexp default ^\s*No
*** DKIM : Sympa now supports DKIM for message diffusion and control.
*** web_tt2/Makefile.am, web_tt2/ca.tt2, web_tt2/lca.tt2,
wwsympa/wwsympa.fcgi.in: It is now possible to create Custom actions
at the list or robot level. These custom actions allow you to create
new pages in the Sympa web interface. for now, you can only display
informations using this method. any post treatment (such as form
submission) must be handled outside of Sympa. See
https://www.sympa.org/manual_6.1/customizing#custom_actions for more
details.
*** [Submitted by J. jourdan] "suspension of membership." The user can suspend
his subscription to the lists
that he subscribes. For a finite length or not. Added a calendar in
javascript to select a date.
Also, lots of translastion updates, and bug fixes (including security ones)
Fix PR pkg/46427
Changelog:
* Fix various issues relating to new mail notifications and filtering
on POP3 based accounts
* Fixes an occasional startup crash seen in TB 12.0
* Fixes an issue with corrrupted message bodies when using movemail
* Session ID is now included by default in auth and login process log lines. It
can be added to mail processes also by adding %{session} to mail_log_prefix.
+ Added ssl_require_crl setting, which specifies if CRL check must be successful
when verifying client certificates.
+ Added mail_shared_explicit_inbox setting to specify if a shared INBOX should
be accessible as "shared/$user" or "shared/$user/INBOX".
- v2.1.5: Using "~/" as mail_location or elsewhere failed to actually expand it
to home directory.
- dbox: Fixed potential assert-crash when reading dbox files.
- trash plugin: Fixed behavior when quota is already over limit.
- mail_log plugin: Logging "copy" event didn't work.
- Proxying to backend server with SSL: Verifying server certificate name always
failed, because it was compared to an IP address.
* libXp was used by Xaw8, but it had been obsolated, and in pkgsrc,
x11/libXaw/buildlink3.mk had been switched to pick up Xaw7 by default.
* With x11/xorg-cf-files, libXp was offered with XawClientLibs,
but updated to 1.0.4, it was removed.
* And pkgsrc had been switched to use always xorg-cf-files and imake from pkgsrc,
so all platforms should not require libXp from libXaw with Imake.
Bump PKGREVISION.
Patches from Bernd Ernesti on pkgsrc-users.
Changelog:
The following problems are fixed.
* Security fixes
* Using MAPI send with Thunderbird in offline mode will now work correctly
* Language packs will now work for all releases of an ESR branch
* Remove unused option.
* Update enigmail to 1.4.1
Changelog:
* Global Search results now include message extracts in the results
* Various security fixes
* Various improvements to RSS feed subscription and general feed handling
* Thunderbird now supports add-ons that provide different types of
local mail storage
Major changes with Postfix 2.8.10
---------------------------------
This release adds support to turn off the TLSv1.1 and TLSv1.2
protocols. Introduced with OpenSSL version 1.0.1, these are known
to cause inter-operability problems with for example hotmail.
The radical workaround is to temporarily turn off problematic
protocols globally:
/etc/postfix/main.cf:
smtp_tls_protocols = !SSLv2, !TLSv1.1, !TLSv1.2
smtp_tls_mandatory_protocols = !SSLv2, !TLSv1.1, !TLSv1.2
smtpd_tls_protocols = !SSLv2, !TLSv1.1, !TLSv1.2
smtpd_tls_mandatory_protocols = !SSLv2, !TLSv1.1, !TLSv1.2
However, it may be better to temporarily turn off problematic
protocols for broken sites only:
/etc/postfix/main.cf:
smtp_tls_policy_maps = hash:/etc/postfix/tls_policy
/etc/postfix/tls_policy:
example.com may protocols=!SSLv2:!TLSv1.1:!TLSv1.2
Important:
- Note the use of ":" instead of comma or space. Also, note that
there is NO space around the "=" in "protocols=".
- The smtp_tls_policy_maps lookup key must match the "next-hop"
destination that is given to the Postfix SMTP client. If you
override the next-hop destination with transport_maps, relayhost,
sender_dependent_relayhost_maps, or otherwise, you need to specify
the same destination for the smtp_tls_policy_maps lookup key.
* IMAP: When neither the session nor the mailbox has modseq tracking enabled,
return the mailbox as having NOMODSEQ in SELECT/EXAMINE reply. Old versions
in this situation always simply returned HIGHESTMODSEQ as 1, which could have
broken some clients.
+ dict file: Added optional fcntl/flock locking (default is dotlock)
+ fts-solr: doveadm fts rescan now resets indexes, which allows reindexing
mails. (This isn't a full rescan implementation like fts-lucene has.)
+ doveadm expunge: Added -d parameter to delete mailbox if it's empty after
expunging.
- IMAP: Several fixes related to mailbox listing in some configs
- director: A lot of fixes and performance improvements
- v2.1.4 didn't work without a mail home directory set
- mbox: Deleting a mailbox didn't delete its index files.
- pop3c: TOP command was sent incorrectly
- trash plugin didn't work properly
- LMTP: Don't add a duplicate Return-Path: header when proxying.
- listescape: Don't unescape namespace prefixes.
version 2.09: Sat Feb 25 14:47:39 CET 2012
Improvements:
- remove dependency to Test::Pod by moving 99pod.t from t/
to xt/ as result of rt.cpan.org#69918 [Martin Mokrejs]
Changes to the Cyrus IMAP Server since 2.4.15
* Bug #3651 - 64 bit dirhash breaks existing systems. NOTE this
includes a fix to the re-written rehash tool released with 2.4.15
Changes to the Cyrus IMAP Server since 2.4.14
* Bug #3664, #3665 - Sieve filters don't work if mailbox contains
dots
* Bug #3651 - 64 bit dirhash breaks existing systems. NOTE - this
includes a complete rewrite of tools/rehash, making it much simpler
and more reliable. Check the usage statement
* Bug #1228 - mailbox dumps need to dump quotaroots
* Bug #3613 - CATENATE command returns BADURL
* Bug #3627 - enabling improved_mboxlist_sort documentation mention
subscription files
* Bug #3661 - Memory leaks in sync_server, nntpd, popd
* Bug #3621 - quota bug involving nested quota roots
* Bug #3667 - FLAGS.SILENT needs to return new MODSEQ if QRESYNC
enabled
- switch to using BODY.PEEK in IMAP retrieval; I no longer see
problems with this feature in my testing. If users experience
incompatibility with any IMAP servers where 4.25.0 worked, please
let me know.
+ Added mail_temp_scan_interval setting and changed its default value
from 8 hours to 1 week.
+ Added pop3-migration plugin for easily doing a transparent IMAP+POP3
migration to Dovecot: http://wiki2.dovecot.org/Migration/Dsync
+ doveadm user: Added -m parameter to show some of the mail settings.
- Proxying SSL connections crashed in v2.1.[23]
- fts-solr: Indexing mail bodies was broken.
- director: Several changes to significantly improve error handling
- doveadm import didn't import messages' flags
- mail_full_filesystem_access=yes was broken
- Make sure IMAP clients can't create directories when accessing
nonexistent users' mailboxes via shared namespace.
- Dovecot auth clients authenticating via TCP socket could have failed
with bogus "PID already in use" errors.
the IMAP server:
Panic: file mail-storage.c: line 628 (mailbox_alloc): assertion failed:
(uni_utf8_str_is_valid(vname))
Problem reported and fix tested by Thorsten Frueauf.
Set LICENSE while here.
imap-2007f fixes a couple bugs.
Fix for RFC 4959 Initial Client Response auth failures noted first by
MacOSX Lion Mail users.
Adjust tcp_open.c:tcp_socket_open to make it a little more useful by adding
a write file descriptor test to the select in the case that the open
timeout is set.
In osdep/unix/env_unix.c:create_path there was a printf that should have
been an sprintf. Doesn't matter on modern systems.
4.1
* IPv6 support
* Significantly improved performance
* Cygwin compatibility (for use under Windows)
* Ability to execute arbitrary programs when users log in
* And lots more
== MIME::Types 1.18 / 2012-03-20
* New MIME Types:
* Types reported in Issue #6
(https://github.com/halostatue/mime-types/issues/6):
* CoffeeScript (text/x-coffeescript; .coffee; 8bit).
* AIR
(application/vnd.adobe.air-applicationinstaller-package+zip, .air;
base64).
* WOFF (application/font-woff; .woff; base64).
* TrueType (application/x-font-truetype; .ttf; base64).
* OpenType (application/x-font-opentype; .otf; base64).
* WebM (audio/webm, video/webm; .webm). Issue #11
(https://github.com/halostatue/mime-types/issues/11).
* New extensions:
* f4v/f4p (video/mp4, used by Adobe); f4a/fb4 (audio/mp4, used by Adobe).
* Bug Fixes:
* It was pointed out that Licence.txt was incorrectly named. Fixed by
renaming to Licence.rdoc (from Issue/Pull Request #8,
https://github.com/halostatue/mime-types/issues/8).
* It was pointed out that a plan to have the test output generated
automatically never went through. Issue #10
(https://github.com/halostatue/mime-types/issues/10)
pam.buildlink3.mk. This is wrong and a hack, but it gets the package
building again in my test environment. Someone please revert this and
do it right.
Currently there seems to be logic for enabling PAM in the build or not
on various platforms depending on whether native PAM appears to exist.
This is higly bogus; the package should be cleaned up so it either
depends on PAM or doesn't, regardless of platform, or preferably makes
it a build option.
XXX.
* A new -G option causes files created by mimedefang to
be group-readable and sockets to be group readable/writable.
* The multiplexor snoops in on communications and saves the
Sendmail queue-ID for logging purposes. It logs the queue ID when
logging a slave's STDERR.
* MIMEDefang passes along the client port number, server IP address
and server port number to all filter functions. This feature was
sponsored by Scayl.
Exact changes aren't available but they are similar as ruby-mail 2.4.3 and
2.4.4 for these security fixes.
* Fix security vulnerability allowing command line exploit when using
file delivery method
* Fix security vulnerability allowing command line exploit when using
exim or sendmail from the command line
== Version 2.4.4 - Wed Mar 14 22:44:00 +1100 2012 Mikel Lindsaar <mikel@reinteractive.net>
* Fix security vulnerability allowing command line exploit when using file delivery method
== Version 2.4.3 - Tue Mar 6 19:38:00 UTC 2012 Mikel Lindsaar <mikel@reinteractive.net>
* Fix security vulnerability allowing command line exploit when using exim or sendmail from the command line
* Change Mail#deliver! to also inform the interceptors
* Encodings.value_decode(str): Treat lines with mixed encoding correctly when the line ends with a plain text part.
== Thu Jan 19 13:49:34 UTC 2012 Mikel Lindsaar <mikel@reinteractive.net>
* Fix non ascii character folding problems
* Handle multipart mail in Mail::Message#to_yaml / #from_yaml
* More warning fixes
* Normalize the Parse Error class and messages
* Fix for Mail::Encodings.unquote_and_convert not handling unquoted characters mixed in between quoted strings
* Updated treetop to latest version, specs now run approximately 25-30% faster!
* Version bump to 2.4.1 and gem release
== Sun Jan 15 18:15:56 UTC 2011 Mikel Lindsaar <mikel@reinteractive.net>
* Speed up reading of messages by about 12x
* Added Message#without_attachments! that removes all message's attachments
* Added shoulda-style RSpec matchers
* Added support for @ in display name
* Added support for the :tls and :ssl options
* Added UTF-16 and UTF-32 support
* Added Exim as it's own delivery manager
* Added Ruby 1.9.3 compatibility
* Fix for Sendmail return-path escaping
* Fix for alias for SJIS was changed from shift_jis to windows-31J in Ruby 1.9.3
* Fix for undefined method 'constantize' error when no ActiveSupport loaded
* Fix Mail::Field#== comparison
* Fixed Regexp warning: character class has duplicated range
* Fixed encoding non-latin names in addresses
* Fixed issue with non-7bit attachment filenames
* Now define String#blank? only if not defined yet
* Decoding text parts using charset from Content-Type field
* Per RFC 5322, do not accept emails with consecutive dots
* Bunch of bug fixes from contributed pull requests
* Travis CI setup and passing on 6 rubies
* Upgrade RSpec to 2.8.0
* Lots of warnings fixed
* Version bump to 2.4.0 and gem release
There are a ton of proxying related improvements in this release. You
should now be able to do pretty much anything you want with Dovecot
proxy/director.
This release also includes the initial version of dsync-based replication.
I'm already successfully using it for @dovecot.fi mails, but it still has
some problems. See http://dovecot.org/list/dovecot/2012-March/064243.html
for some details how to configure it.
+ Initial implementation of dsync-based replication. For now this
should be used only on non-critical systems.
+ Proxying: POP3 now supports sending remote IP+port from proxy to
backend server via Dovecot-specific XCLIENT extension.
+ Proxying: proxy_maybe=yes with host=<hostname> (instead of IP)
works now properly.
+ Proxying: Added auth_proxy_self setting
+ Proxying: Added proxy_always extra field (see wiki docs)
+ Added director_username_hash setting to specify what part of the
username is hashed. This can be used to implement per-domain
backends (which allows safely accessing shared mailboxes within
domain).
+ Added a "session ID" string for imap/pop3 connections, available
in %{session} variable. The session ID passes through Dovecot
IMAP/POP3 proxying to backend server. The same session ID is can be
reused after a long time (currently a bit under 9 years).
+ passdb checkpassword: Support "credentials lookups" (for
non-plaintext auth and for lmtp_proxy lookups)
+ fts: Added fts_index_timeout setting to abort search if indexing
hasn't finished by then (default is to wait forever).
- doveadm sync: If mailbox was expunged empty, messages may have
become back instead of also being expunged in the other side.
- director: If user logged into two directors while near user
expiration, the directors might have redirected the user to two
different backends.
- imap_id_* settings were ignored before login.
- Several fixes to mailbox_list_index=yes
- Previous v2.1.x didn't log all messages at shutdown.
- mbox: Fixed accessing Dovecot v1.x mbox index files without errors.
* Update Lightning to 1.3 from 1.3b1
Changelog:
* Support for Apple iCloud and Chandler servers improved
* Support for high contrast themes (needs to be enabled in the preferences)
* New toolbar to adapt to Thunderbird's Tabs-on-Top
- Fix handling of % character in IMAP protocol (#1488382)
- Fix duplicate names handling in addressbook searches (#1488375)
- Fix displaying of HTML messages from Disqus (#1488372)
- Disable E_STRICT warnings on PHP 5.4
- Prevent from folder selection on virtual folder collapsing (#1488346)
- Fix automatic unsubscribe of non-existent folders
- Fix double-quotes handling in recipient names
- User configurable setting how to display contact names in list
- Make contacts list sorting configurable for the admin/user
- Fix parse errors in DDL files for MS SQL Server
- Revert SORT=DISPLAY support, removed by mistake (#1488327)
- Add lost translation label in de_DE (#1488315)
- Fix drafts update issues when edited from preview pane (#1488314)
- Fix wrong variable name in rcube_ldap.php (#1488302)
- Make mime type detection based on filename extension to be case-insensitive
- Fix failure on MySQL database upgrade from 0.7 - text column can't have default value (#1488300)
Release date: 2012-03-12 10:04 UTC
Release state: stable
Changelog:
* Request #19009: Remove error_reporting from tests [alec]
* Fixed Bug #19094: Email addresses do not have to contain a space
between the name and address part [alec]
* Fixed Bug #19328: Wrong encoding of filenames with comma [alec]
Bugs resolved in 2.4.14
* Bug #2685 folder delete and annotations
* Bug #3381 tools/rehash script is not 64bit safe
* Bug #3405 tls support for ctl_mboxlist
* Bug #3452 sieve uses mailbox name in internal format in autoreply
* Bug #3485 cyr_expire tries to delete parent directories that are not empty
* Bug #3582 Extra LF+SP characters been inserted in the middle of the XML
attachments
* Bug #3598 lmtp auditlog for murder proxy mode
* Bug #3623 OpenBSD (and other platforms without working mmap) multiple bugs
* Bug #3636 Renaming a mailbox doesn't remove old folder
* Bug #3628 folders with spaces and subfolders with same prefix as parent folder
don't show up
* Bug #3634 RENAME INBOX no longer works
* Bug #3635 cmd_rename() fails to check error codes
* Bug #3636 unexpunge locks mailbox until all output is emitted
* Bug #3637 imapd and ipop3d in 2.4 no longer log expunge events to syslog
* Bug #3640 LMTP accepts NULL bytes in headers, resulting in incorrect header/
mail size in meta-data
* Bug #3642 iPhone 5 expects SPECIAL-USE in LIST output
* Bug #3645 Ability to delete folder "shared"
* Bug #3649 unable to remove mailbox
* Bug #3650 ENVELOPE contains unexpected CRLF
Postfix stable release 2.8.9 is available. This contains fixes that
are already part of Postfix 2.9 and 2.10.
* The "change header" milter request could replace the wrong
header. A long header name could match a shorter one, because
a length check was done on the wrong string. Reported by
Vladimir Vassiliev.
* Core dump when postlog emitted the "usage" message, caused
by an extraneous null assignment. Reported by Kant (fnord.hammer).
You can find the updated Postfix source code at the mirrors listed
at http://www.postfix.org/.
Fix bug #SF3400670: Send ADSP failure reports when rejecting
a message.
Fix bug #SF3419149: Add MaximumSignedBytes to opendkim-config.h.
Fix bug #SF3441240: Appy ReportBccAddress when generating ADSP
reports.
Fix bug #SF3447199: Fix logic preventing the application of the
BodyLengthDB.
Fix Authentication-Results generation with "AddAllSignatureResults"
enabled.
Fix a crash bug when trying to handle certain malformed header fields
in verify-only mode.
Improve error checking in the callback provided to libunbound to
avoid crashes.
Cope with versions of Sleepycat DB that crash when asking for a file
descriptor for in-memory databases.
Don't override "On-NoSignature" when "Quarantine" is set.
Ignore header field names that contain semi-colons, as they produce
syntactically invalid signatures.
LIBOPENDKIM: Fix bug #SF3465400: Don't use "new" as a parameter name
in dkim.h since that's an error for C++.
LIBOPENDKIM: NOERROR is the same as NXDOMAIN for the purposes of
the ADSP existence check. Problem noted by Todd Nagengast.
LIBOPENDKIM: Return DKIM_STAT_SYNTAX from dkim_header() if the header
field name contained a semi-colon.
LIBAR: After computing a timeout, if the fractional seconds portion
adds to exactly a second, convert that amount to seconds.
Previous versions only converted when the fractional portion
exceeded a second. This led to threads that spin
indefinitely. Problem noted by Todd Lyons and Gary Mills;
forensic evidence revealing the problem at long last provided
by Todd Lyons.
STATS: Fix a crash bug in opendkim-importstats due to improper handling
of NULL returns from SQL.
2.4.2
Don't apply BodyLengthDB when not signing.
LIBOPENDKIM: Update for draft-kucherawy-dkim-atps-06.
LIBOPENDKIM: Terminate the strings returned by dkim_sig_getsubstring()
and dkim_sig_getidentity() whenever possible.
CONTRIB: Change "chkconfig" instruction in RHEL init script,
and a minor tweak to the RPM spec file.
2.4.1 2011/06/28
Fix bug #SF3312691: Add "-e" command line switch to extract a value
from configuration.
Fix bug #SF3324488: Accommodate postfix's job ID generation by moving
the BodyLengthDB check down to EOH.
Fix bug #SF3327106: Fix mode-based short-circuit logic.
Patch #SF3321766: Remove "-d" from usage message (not implemented).
Print database error strings instead of just return codes in
query test mode, and clean up error strings when extracting
them from the layers below.
Minor fixes related to use of OpenDBX.
LIBOPENDKIM: Fix bug #SF3328330: Correct generation of "z=" tags.
LIBOPENDKIM: Patch #SF3313534: Improve thread-safe use of OpenSSL
in dkim_init() and dkim_free().
LIBOPENDKIM: Patch #SF3314269: Change all uses of off_t to ssize_t,
as the former is reserved for use with filesystem APIs.
LIBOPENDKIM: Make the user context pointer (void) rather than
(const void) since the caller is allowed to change it.
LIBOPENDKIM: Proper handling of DKIM_CBSTAT_ERROR from the prescreen
and final callbacks.
LIBOPENDKIM: Fix up initialization under _FFR_OVERSIGN.
BUILD: Adjust gprof code to accomodate systems that put profiling
output in <binary>.gmon rather than gmon.out.
2.4.0 2011/06/06
Feature request #SF3060140: Extension of odkim.sign() to include
maximum signed byte count.
Feature request #SF3171865: Add _FFR_LUA_GLOBALS, enabling a
mechanism to maintain state between Lua scripts.
Feature request #SF3241982: Optionally add an Authentication-Results
field for all signatures present, not just the first good one.
Feature request #SF3256630: Add _FFR_RATE_LIMIT, enabling hooks for
post-verification rate controls.
Feature request #SF3290461: Add optional support for querying a
memcache daemon via libmemcached.
Feature request #SF3299041: Be tougher on use of the "l=" tag by
removing "BodyLengths", renaming "BodyLengthDBFile" to
"BodyLengthDB", and allowing pattern matches. This
effectively activates _FFR_BODYLENGTH_DB as well.
Feature request #SF3303911: Add "DisableADSP" setting.
In the stats recording code, only check for a domain match for
signatures that don't have errors (i.e., short circuit if
sigerror is not zero).
LIBOPENDKIM: Feature request #SF2969516: Teach dkim_chunk() about
DKIM_LIBFLAGS_FIXCRLF.
LIBOPENDKIM: Feature request #SF3123731: Extend FixCRLF to cover
header fields.
LIBOPENDKIM: Feature request #SF3151534: Extract DKIM reputation
support to its own library.
LIBOPENDKIM: Feature request #SF3279589: Add _FFR_XTAGS, adding
support for generic extension tags in signatures.
LIBOPENDKIM: Feature request #SF3300738: Add dkim_sig_getqueries()
and dkim_policy_getqueries() to assist API consumers that
have their own DNS mechanisms not directly adaptable to ours.
LIBOPENDKIM: Return an error from dkim_getsighdr() or
dkim_getsighdr_d() if called after a key load failure.
LIBAR: Check that the descriptor's write socket is writable before
calling ar_sendquery() when trying to identify open requests
that need retransmission.
STATS: Feature request #SF3066106: Add "opendkim-anonstats" tool.
CONTRIB: Paths in init/redhat/opendkim are now auto-generated.
Activate _FFR_MAXVERIFY.
(while here, set LICENSE=apache-1.1.)
------
v2.3.6
------
[mjr] Fix issue that caused erroneous file listings for objects in sources
without a __uid value.
[jan] Allow to export photo/logo fields to vCard without MIME type.
[jan] Support X-EPOCSECONDNAME fields of Nokia phones.
[jan] Add upgrade scripts for next-generation SQL share driver.
[jan] Fix splitting up names when exporting to N properties of vCards.
[jan] Only set the encoding parameter for binary data in vCards, if data is not
empty (Bug #9413).
[jan] Fix searching for fields matching an email address if using 'emails'
attribute instead of 'email' (Bug #9472).
[jan] Use personal address books first if determining the default one (Valentin
Vidic, Request #9367).
[jan] Use name format preference not only for paging, but for sorting too
(Request #8806).
[jan] Fix photo corruption when exporting to vCard 3.0 (Bug #9100).
------
v2.3.5
------
[jan] Correctly export FN vCard property if 'alternative_name' is set, but not
'name' (Bug #9207).
[jan] Fix import of addresses from LDIF (Axel Jurak, Bug #9215).
[jan] Speed up browsing of long address books.
------
v2.3.4
------
[jan] Remove deleted contacts from distribution lists in the same address book.
[mjr] Allow creation of default, personal address book when other read-only
sources are present.
[mjr] Log in history when deleting all of a user's contacts (Bug #8755).
[jan] Only export non-empty fields if exporting manually.
[jan] Add export to vCard 3.0.
[jan] Only synchronize those fields that are supported by the client
(Request #6658, requires Horde 3.3.7).
------
v2.3.3
------
[jan] Fix syntax of MSSQL scripts (Bug #8664).
[jan] Add preference for the name format to use for sorting (Request #6721).
[jan] Condense whitespace in composite fields (Request #8654).
[jan] Add and fix Oracle-specific SQL scripts.
[jan] Add Croatian translation (Matej Vela <matej.vela@carnet.hr>,
Iva Rumora <iva.rumora@zg.t-com.hr>).
[mjr] Fix permission checking for virtual address books.
[jan] Update deleted attributes during synchronization (lst_hoe02@kwsoft.de,
Request #6658).
[jan] Support X-ANNIVERSARY, X-CHILDREN, and X-SPOUSE vCard fields
(Request #8074).
[jan] Fix copying and moving of image fields (Ryu <ryu@ryux.org>, Bug #8523).
[jan] Don't return an error on empty LDAP search results (Bug #8595).
[jan] Replace PHP5-only code from the LDIF exporter (Bug #8586).
------
v2.3.2
------
[mms] Upgrade prototype.js to v1.6.1.
[jan] Fix synchronization with output compression enabled (Bug #7769).
[mjr] Fix contacts being deleted during synchronization when moved from one
address book to another (ryu@ryux.org, Bug #8487).
[mjr] Add new API method for retrieving the default share for a source.
[jan] Don't overwrite the compositing fields, when importing composite fields.
[cjh] Fix searches for multiple strict fields and at least one non-strict field
(tinu@humbapa.ch, Bug #7876).
[mjr] Specific timeobject categories are now only advertised when they are
present in a configured source.
(while here, set LICENSE=gnu-gpl-v2.)
-------
v4.3.11
-------
[mms] SECURITY: Fix XSS vulnerabilities on the compose page, the contacts popup
window, and with certain IMAP mailbox names.
-------
v4.3.10
-------
[jan] Don't submit the action form when reloading messages with iTip
attachments (Bug #9502).
* Renamed sieve_global_path setting to sieve_default for clarity. Old name is
still recognized for backwards compatibility. Support for the ancient (pre
v1.1) name for this setting "global_script_path" is now dropped.
* Added means to prohibit use of redirect action. Setting sieve_max_redirects
to 0 now means that redirect is disallowed in stead of unlimited. Default
value remains four.
* Fixed interaction of Sieve include extension with ManageSieve. It is updated
to match new requirements in the draft include specification. Missing
included scripts are no longer an error at upload time.
* Updated RFC2822 header field body verification to exclude non-printing
characters (RFC5322). Only Sieve actions that can create unstructured header
values (currently enotify/mailto and editheader) are affected by this change.
+ Completed sieve-filter tool to a useful state. The sieve-filter tool provides
a means to (re)filter messages in a mailbox through a Sieve script.
+ Implemented the Sieve editheader extension. It is now possible to add and
remove message headers from within Sieve.
+ ManageSieve: added support for reading quoted and literal strings as a
stream. Fixes support for handing large SASL responses (analogous to similar
changes in Dovecot). It is now also allowed to use a quoted string for the
PUTSCRIPT script argument.
+ Added code to cleanup tmp directory in Sieve storage directory (sieve_dir)
every once in a while.
+ Added support for substituting the entire message during Sieve processing.
This is used for the filter action provided by the new sieve_extprograms
plugin (provided separately for now). The filter action allows passing the
message through an external program.
+ Added support for restricting certain Sieve language extensions to
(admin-controled) global scripts. Restricted extensions can be configured
using the new sieve_global_extensions setting. This is particularly useful
for some of the Dovecot-specific (plugin-based) Sieve extensions, that can
be somewhat hazardous when under direct control of users (e.g.
sieve_extprograms).
* Plugins now use UTF-8 mailbox names rather than mUTF-7: acl, autocreate,
expire, trash, virtual
* auth_username_format default changed to %Lu. If you really want case
sensitive usernames, set it back to empty.
* Solr full text search backend changed to use mailbox GUIDs instead of mailbox
names, requiring reindexing everything. solr_old backend can be used with old
indexes to avoid reindexing, but it doesn't support some newer features.
* Expire plugin: Only go through users listed by userdb iteration. Delete dict
rows for nonexistent users, unless expire_keep_nonexistent_users=yes.
* Temporary authentication failures sent to IMAP/POP3 clients now includes the
server's hostname and timestamp. This makes it easier to find the error
message from logs.
* dsync was merged into doveadm. There is still "dsync" symlink pointing to
"doveadm", which you can use the old way for now. The preferred ways to run
dsync are "doveadm sync" (for old "dsync mirror") and "doveadm backup".
+ imapc (= IMAP client) storage allows using a remote IMAP server to be used as
storage. This allows using Dovecot as a smart (caching) proxy or using dsync to
do migration from remote IMAP server.
+ Mailbox indexing via queuing indexer service (required for Lucene)
+ Lucene full text search (FTS) backend rewritten with support for different
languages
+ FTS finally supports "OR" search operation
+ FTS supports indexing attachments via external programs
+ IMAP FUZZY extension, supported by Lucene and Solr FTS backends
+ IMAP SPECIAL-USE extension to describe mailboxes
+ Mailbox list indexes
+ Statistics tracking via stats service. Exported via doveadm stats.
+ Autocreate plugin creates/subscribes mailboxes physically only when the
mailbox is opened for the first time. Mailbox listing shows the autocreated
mailboxes even if they don't physically exist.
+ Password and user databases now support default_fields and override_fields
settings to specify template defaults/overrides.
+ SCRAM-SHA-1 authentication mechanism by Florian Zeitz
+ LDAP: Allow building passdb/userdb extra fields from multiple LDAP attributes
by using %{ldap:attributeName} variables in the template.
+ Improved multi-instance support: Track automatically which instances are
started up and manage the list with doveadm instance commands. All Dovecot
commands now support -i <instance_name> parameter to select the instance
(instead of having to use -c <config path>). See instance_name setting.
+ auth: Implemented support for Postfix's "TCP map" sockets for user existence
lookups.
- listescape plugin works perfectly now
Changes since 2.1.0:
+ dsync: If message with same GUID is saved multiple times in session, copy it
instead of re-saving.
- acl plugin + autocreated mailboxes crashed when listing mailboxes
- doveadm force-resync: Don't skip autocreated mailboxes (especially INBOX).
- If process runs out of fds, stop listening for new connections only
temporarily, not permanently (avoids hangs with process_limit=1 services)
- auth: passdb imap crashed for non-login authentication (e.g. smtp).
- The Postfix sqlite client, introduced with Postfix 2.8, had an
embarassing bug in its quoting routine. As the result of a
last-minute code cleanup before release, this routine returned the
unquoted text instead of the quoted text. The opportunities for
mis-use are limited: Postfix sqlite database files are usually owned
by root, and Postfix daemons usually run with non-root privileges so
they can't corrupt the database. This problem was reported by Rob
McGee (rob0).
- The Postfix 2.8.4 fix for local delivery agent database lookup
errors was incomplete. The fix correctly added new code to detect
database lookup errors with mailbox_transport_maps,
mailbox_command_maps or fallback_transport_maps, but it failed to
log the problem, and to produce a defer logfile record which is
needed for "delayed mail" and "mail too old" delivery status
notifications.
- The trace(8) service, used for DSN SUCCESS notifications, did not
distinguish between notifications for a non-bounce or a bounce
message, causing it to "reply" to mail with the null sender
address. Problem reported by Sabahattin Gucukoglu.
- Support for Dovecot auth over TCP sockets, using code that already
existed for testing purposes. Patrick Koetter kindly provided an
update for the SASL_README file.
- Workaround in the LDAP client for changes in the under-documented
OpenLDAP API, by Victor Duchovni.
Changes from previous:
----------------------
version 2.102: Wed Jan 4 09:31:51 CET 2012
Fixes:
- regex which matched attributes dumped core on hugh attributes.
rt.cpan.org#69414 [Yanyan Yang]
- document generation fixes.
Improvements:
- correct synopsis of ::Thread::Manager
- ::Thread::Node::threadToString uses study() on subject
version 2.101: Thu Aug 25 10:16:03 CEST 2011
Fixes:
- multipart's-part content-type could remove some attributes
rt.cpan.org#69516 [Yanyan Yang]
- filenames in content-disposition fields are sometimes charset
encoded (not supported by the RFCs) Decode them.
[Thomas Karcher]
- example how to use $msg->moveTo() was wrong. [Flash]
Improvements:
- use the Net::Domain::hostfqdn() for the creation of unique
message-ids if libnet is installed.
rt.cpan.org#69803 [Christoph 'Mehdorn' Weber]
version 2.099: Thu Jul 7 16:02:38 CEST 2011
Fixes:
- body() of structured studied fields failed.
Improvements:
- add overloading of comparison to Mail::Message::Field::Address
objects. Triggered by [Andrew Beverley]
- implement study on date fields.
version 2.098: Thu Mar 17 09:01:36 CET 2011
Fixes:
- accept mbox message separators from the 60's, because mozilla
uses 1-1-1965 as default separator when importing mail.
rt.cpan.org#65572 [Willi Mann]
- accept mbox message separators from the upcoming 20's
- Mail::Transport::POP3 has use_ssl setting too late [Mark Delany]
- Mail::Transport::IMAP4 folder create produced "use of
undefined". rt.cpan.org#66001 [Willi Mann]
- Error message when stringifying a studied empty field.
rt.cpan.org#66381 [Florian]
- do not split headers for encoded components which contain
blanks (which is illegal) reported by [Florian]
Improvements:
- maildir: do not remove :2, from the filename if there are
no flags. [Mikolaj Kucharski]
version 2.097: Wed Jan 26 16:11:41 CET 2011
Fixes:
- override Mail::Transport::Sendmail destinations included
original destinations.
rt.cpan.org#64266 [Andrew Beverley]
Improvements:
- added examples/strip-spam-markup.pl by [Gary Funck]
- do not hardcode perl version in test.pl, hopefully resolving many
cpantesters complaints.
- randomize boundary string to avoid (undemonstrated) security risks
with boundary guessing.
- manual pages produced with new version of OODoc, producing more
condensed output.
version 2.096: Tue Nov 9 10:04:25 CET 2010
Fixes:
- allow dot in username for pop/imap (probably used by someone)
[Jim Cromie]
Improvements:
- spelling fixes
rt.cpan.org#59061 [Salvatore Bonaccorso]
- implement Mail::Box::POP3s [Jim Cromie]
- do not run test-scripts with -T, because modern TAP::Harness
uses PERL5LIB which is disabled by the flag.
version 2.095: Fri Jul 2 11:17:35 CEST 2010
Fixes:
- permit additional colons in maildir filenames.
rt.cpan.org #58534 [Stefan Kangas]
- maildir messages in the 'new' queue will not get ":2,", as in
mutt. rt.cpan.org#58550 [Stefan Kangas]
- fix handling of messages with empty bodys. Had mild consequences
to multipart preamble and prelude processing.
rt.cpan.org#58544 [Stefan Kangas]
Improvements:
- spelling fixes
rt.cpan.org#56678 [Salvatore Bonaccorso]
version 2.094: Tue Apr 6 11:17:15 CEST 2010
Fixes:
- parse address phrase with line fold in ::Full:Addresses
rt.cpan.org#55309 [Diomidis Spinellis]
- handle empty preambles and postludes in multiparts even
very strict, because the may be signed.
rt.cpan.org#54529 [John Gardiner Myers]
Improvements:
- fix documentation on use of Mail::Message::Head::build()
and a few more minor documentation errors. [Kiss Gabor]
- $msg->reply fallback to From address, not only Reply-To
- add example/unpack.pl
- added install configuration choice "none". Also control
via environment variables.
- spelling fixes.
rt.cpan.org#53127 [Salvatore Bonaccorso]
version 2.093: Thu Dec 24 17:02:06 CET 2009
Fixes:
version 2.093: Thu Dec 24 17:02:06 CET 2009
Fixes:
version 2.093: Thu Dec 24 17:02:06 CET 2009
Fixes:
- rewrite of Mail::Message::Full:decode(), because original
trick for blank removal kept on biting me. Now implemented
without trick.
rt.cpan.org#52600 [Dmitry Bigunyak]
- make text/plain default when a body is created, as promised
by the documentation.
rt.cpan.org#52278 [Dmitry Bigunyak]
- add toplevel() to ::Body::Multipart and ::Body::Nested to
support reply() called on message parts.
- fix tests-script to make MIME::Entity cleanup the msg-* files
in the tests/ directory.
Improvements:
- rewrite of SYNOPSIS for Mail::Message::Field::Addresses
rt.cpan.org#43703 [Dmitry Bigunyak]
- added Mail::Box::Locker::FcntlLock, contributed by Jim In Aus
rt.cpan.org#48568 [Jim in Aus]
- support additional headers to a reply message.
- added explanation of character-set "PERL" for a ::Body
(suggested by [Dmitry Bigunyak])
version 2.092: Fri Nov 20 16:13:46 CET 2009
Fixes:
- do not set all signal handlers to "exit(0)"
rt.cpan.org#50433 [Slaven Rezic]
- do not enforce the use of /usr/bin/perl in the test-scripts,
but use the perl which is selected via the path.
version 2.091: Sun Sep 6 23:54:17 CEST 2009
Fixes:
- Another fix to thread detection start where first message
is not found. rt.cpan.org#40347 [Florian]
- translate '_' to blank when charset not known.
rt.cpan.org#41661 [Florian]
- no "undef" for field Content-Length with empty message bodies.
[Daniel Richard G.]
- Mail::Message::Body::eol() with parameter sometimes did not
return a body but a character.
rt.cpan.org#49334 [Brian McCauley]
- Mail::Message::Body::eol() should add \n to last texts line
if it is missing.
rt.cpan.org#49362 [Brian McCauley]
Improvements:
- better "From " message separator line generated when converting
messages for Mbox storage. Written by [Daniel Richard G.]
version 2.090: Tue Jun 2 11:56:28 CEST 2009
Fixes:
- second attempt to use Encode to do base64/qp encoding in
Mail::Message::Field::Full, This time with test script.
[Alexander Averyanov]
- Mail::Box::Locker::POSIX lock did always succeed.
rt.cpan.org#46003 [Rainer Schöpf] via Debian#528364
- Maildir accept lower-case flags
rt.cpan.org#42182 [Hardaker]
- Message parser needlessly required read access to folders.
rt.cpan.org #46388 [Mike Ekberg]
version 2.089: Mon Apr 20 21:00:34 CEST 2009
Fixes:
- do not restart parser after folder write, which could end-up in
empy folders if mode=='w' [Reinier Post]
- fix takemail script for Mbox.
rt.cpan.org#44439 [Reinier Post]
- alternative option names for 'file' in various lockers, needed
to be able to use them in the multi-locker. Needed by [Mark Hedges]
- use Encode to do base64/qp encoding in Mail::Message::Field::Full,
which handles multibyte characters correctly. Patch by
[Alexander Averyanov]
version 2.088: Thu Mar 19 08:54:31 CET 2009
Fixes:
- ::Parser::Perl should call binmode() as method on the file-
handle to work. [Ashwini Singh]
- pre-created locker object cannot be passed to Mail::Box::open()
because its creation requires a Mail::Box object. [Mark Hedges]
- recover from illegal phrases in email addresses, for studied
fields in Mail::Message::Field::Addresses [Robert Bruccole]
- require Date::Format, introduced in 2.082 [cpantesters]
Improvements:
- specify encoding type of character-set (q or b) with
Mail::Message::Field::Address objects.
Requested by [Alexander Averyanov]
- default mail box locker object should use the same logging
settings as the mail box itself. Spotted by [Mark Hedges]
- the existence of Mail/Makefile.PL was an accident.
version 2.087: Tue Feb 3 12:41:10 CET 2009
Fixes:
- more character-decoding errors in field study.
rt.cpan.org#41661 [Florian]
- username in folder URL must get decoded as well, to allow
'@' signs and colons in the usernames.
rt.cpan.org#41976 [Matt S Trout]
- accept unknown flags for Maildir.
rt.cpan.org#42182 [Wes Hardaker]
Improvements:
- add DIGEST-MD5 and LOGIN to the AUTO search list of IMAP4.
Triggered by rt.cpan.org#42136 [Alexander Thoukydides]
- add warnings on two spots that message labels may get lost
when moving them to an other folder type.
- use external file for body after 100kB, not 10kB. Should
improve on performance.
2012-01-31 SUZUKI Takahiko <takahiko@iij.ad.jp>
* 1.2.0
* [DKIM] fix mis-canonicalization of empty message body in "relax" mode
2011-12-05 SUZUKI Takahiko <takahiko@iij.ad.jp>
* 1.1.992
* support platforms which doesn't have EAI_NODATA any more
* adjust configure.ac not to link with librt when ldns is chosen as a resolver
2011-11-28 SUZUKI Takahiko <takahiko@iij.ad.jp>
* 1.1.991
* switch default resolver from libbind to ldns
* [SPF/SIDF] fix memory allocation error at expanding "p" macro when <ip> has no validated domain names
* [SPF/SIDF] fix misevaluation on domain names longer than 63 characters (thanks to KODAMA Daisuke, NEC BIGLOBE)
* [DKIM] catch up the updates from RFC4871, RFC5672 to RFC6376
* [DKIM] change result from "none" to "permerror" of message without any Author header
* [DKIM] fix mis-canonicalization of header field name includes WSP in "relax" mode
* [DKIM] fix memory allocation error on message with syntax errors in sig-i-tag value
ChangeLog:
1.895 2012-01-15
allow non-ASCII *only in phrase*
1.894 2012-01-14
note that the use of the regex vars is not a great idea
1.893 2012-01-02
reject any non-ascii content in strings
Notable changes in archivemail 0.9.0:
* IMAP: support for international mailbox names containing non-ASCII
characters.
Notable changes in archivemail 0.8.0:
* Removed the feature to setuid to the mailbox owners when run as root.
This was a bad idea; it's really hard to do safely, if at all possible.
Obsoletes: patch #2783134.
* New option --archive-name, or short -a, to hard-code an archive filename.
Like the --suffix and --prefix options, it is expanded with strftime().
This option conflicts with archiving multiple mailboxes. Closes: feature
request #1306538.
* New option --prefix, or short -p, to specify an archive name prefix. Like
a suffix specified with the --suffix option, the prefix is expanded with
strftime(). Specifying this option disables the default archive name
suffix. Obsoletes: feature request #604281. (Thanks Serafeim Zanikolas
for an initial patch)
* New option --all to archive all messages in a mailbox. Closes: #1764846.
* archivemail now expands wildcards in IMAP mailbox names. For example, the
url imaps://user@server/foo/* will expand to all subfolders of foo.
Closes: feature request #1978540. Obsoletes: patch #1918937.
* To determine the delivery date of a message, archivemail now looks for the
timestamp of the latest 'Received' header before resorting to
'Resent-Date' or 'Date'. This should give much better results when there
is no 'Delivery-date' header, which is still checked first.
(Thanks Andrew Ferrier & Christian Brabandt)
Closes: #1481316, #1764855, Debian bug #272666.
* We now omit the dotlock if we don't have sufficient permissions to create
it in the mbox directory. (The file is still locked with lockf.)
Together with more changes under the hood (see below) this means
archivemail can now operate on mbox files in the system mail spool.
Closes: #855269.
* Replaced some simple minded file operation security checks with more
decent ones. This means we can safely operate in /tmp, for example. The
price is that we no longer accept symlinked files. Obsoletes: patch
#1874868.
* The archive now also gets locked while archivemail updates it.
* mbox locking got completely rewritten. Switched from flock to lockf
locking, which is NFS-safe and portable, and we now lock with lockf first,
then with a dotlock, instead of the other way around. (This is makes
archivemail compatible with Debian systems. ;)
while here,
* LICENSE=gnu-gpl-v2
* register egg-info.
== Version 0.1.11 ==
libgmail.py
* Fixed bug that broke attachment support (SF bug #2034927)
* added .author_fullname field for messages
* Don't crash on threads with google chat log (Debian bug #502458)
== Version 0.1.10 ==
libgmail.py
* Use mechanize instead of ClientCookie [Patch #2014779]
* Very basic Unicode support [Patch #1926861]
gmail_transport.py
* New version that uses mechanize
(owing again to Jose Rodriguez)
NOTE: libgmail now depends on mechanize, which
can be downloaded from:
http://wwwsearch.sourceforge.net/mechanize/#download
(in Debian/Ubuntu as python-mechanize, and an easy_install
installer is also available)
== Version 0.1.9 ==
libgmail.py
* Fixed login that was broken for a bunch of new
gmail accounts, thanks to a patch by rhauer
NOTE: libgmail now depends on ClientCookie, which
can be downloaded from:
http://wwwsearch.sourceforge.net/ClientCookie/#download
== Version 0.1.8 ==
libgmail.py
* Added 'search' method to contactLists that returns
an array of contacts who match a given search term
(at some point, the contacts API is long overdue
for a revamp, but for now, hey, why not)
This is a patch by Alex Chiang --WD--
* libgmail now asks for the old Gmail interface,
so that it isn't broken by the new Gmail updates.
(Thanks to Aaron and Stu for work on this)
(Fixes SF bug #1822662)
== Version 0.1.7 ==
libgmail.py
gmail_transport.py
* Applied patch that adds proxy support, both
for passwordless and password-ful proxies
(is that a word?), by Jose Rodriguez --WD+SZ--
== Version 0.1.6.2 ==
libgmail.py
* Bugfix for attachment problems --WD--
(SF Bug #1793026, Patch #1799605 by 'stephster')
archive.py
* Protect messages with a "from" line in them --WD--
(SF Patch #1790809 by 'scop')
== Version 0.1.6.1 ==
libgmail.py
* Bugfix for login problems --WD--
== Version 0.1.6 ==
libgmail.py
* Added support for "Gmail Apps" aka "Gmail For Your Domain" --WD--