PaulHowarth/Blog/2015-10-05

Monday 5th October 2015

Fedora Project

  • Updated milter-greylist to 4.5.15 in Rawhide:

    • Use QueueId on Postfix

    • Only change socket ownership if it exists in filesystem
    • Index option for the addheader clause

    • Add format strings for SPF and DKIM results
    • Update author list

Local Packages

  • Updated dovecot to 2.2.19:

    • pop3_deleted_flag has been broken since v2.2.10, and using it would cause buffer overflows, which could be exploitable; however, this bug would have become visible quite soon after users had deleted some POP3 mails, because the pop3 processes would have started crashing all the time even in normal use

    • "doveadm director flush" command has a changed meaning now: it safely moves users to their wanted backends, instead of simply forgetting the mapping entirely and leaving the existing connections untouched; use the -F parameter to get the original unsafe behaviour

    • Added imap-hibernate processes (see imap_hibernate_timeout setting); IDLEing IMAP connections can be hibernated, which saves memory

    • Optimized tracking mailboxes' vsizes (= sum of all messages' sizes); if mailbox_list_index=yes, it's also stored in there, which makes it very efficient to look up vsizes for all mailboxes

    • Added a quota "count" backend, which uses the mailbox vsizes to get the current quota usage; it requires using the new quota_vsizes=yes setting, which tracks the messages' "virtual sizes" rather than "physical sizes" (their distinction is minor and mostly irrelevant nowadays - if mail sizes should be counted with LF or CRLF newlines)

    • "doveadm director up/down" commands added; the monitoring script should be using these commands instead of changing the vhost count, which allows admin to manually disable a server by changing the vhost count to 0 without the monitoring script changing it back

    • Added support for HAProxy protocol: http://wiki2.dovecot.org/HAProxy

    • Added push-notification plugin framework, which can be used to easily implement push notifications to various backends; implemented "ox" backend for notifying Open-Xchange via HTTP/json

    • imap_logout_format supports more variables now, e.g. number of deleted messages

    • pop3: Added pop3_delete_type setting (related to pop3_deleted_flag)

    • plugin { fts_enforced=yes } setting now fails body searches unless it can be done via the full text search engine

    • Added %{passdb:*} and %{userdb:*} variables to various places

    • auth: Added ":protected" suffix for passdb and userdb fields; if used, the field doesn't overwrite an existing field

    • IMAP/POP3 proxy: If a backend server dies, avoid client reconnection spikes by slowly disconnecting clients over time; this is enabled by setting login_proxy_max_disconnect_delay=secs passdb extra field

    • imap: Added new read-only METADATA entries: /private/specialuse, /shared/comment, /shared/admin

    • imap: If client disconnects in the middle of a command, log how long the command had been running

    • mdbox: Rebuilding could have caused message's reference count to overflow the 16-bit number in some situations, causing problems when trying to expunge the duplicates

    • Various search fixes (fts, solr, tika, lib-charset, indexer)

    • Various virtual plugin fixes
    • Various fixes and optimizations to dsync, imapc and pop3-migration

    • imap: Various RFC compliance and crash fixes to NOTIFY

  • Also updated pigeonhole to 0.4.9:

    • Properly implemented checking of ABI version for Sieve interpreter plugins, much like Dovecot itself does for plugins; this will prevent plugin ABI mismatches

    • Implemented a vnd.dovecot.environment extension; this builds upon the standard environment extension and adds a few more environment items, such as username and default mailbox, and also creates a variables namespace so that environment items can be accessed directly

    • Sieve extprograms plugin: Made line endings of the input passed to the external programs configurable; this can be configured separately for each of the three extensions

    • ManageSieve: Implemented proxy XCLIENT support; this allows the proxy to pass client information to the back-end

    • ManageSieve: Fixed an assert failure occurring when a client disconnects during the GETSCRIPT command

    • doveadm sieve plugin: Fixed incorrect initialization of mail user; this caused a few memory leaks

    • sieve-filter command line tool: Fixed handling of failure-related implicit keep when there is an explicit default destination folder; this caused message duplication

    • lib-sieve: Fixed bug in RFC5322 header folding, in which words longer than the optimal line length caused empty lines in the output, which would break the resulting message header; this surfaced in References: headers with very long message IDs

  • Updated perl-DateTime-Format-Strptime to 1.57:

    • Make all tests pass with both the current DateTime::Locale and the upcoming new version (currently still in trial releases)

  • Updated python-zope-interface to 4.1.3:


Recent