Commit graph

280 commits

Author SHA1 Message Date
Larry Rosenman
8f79574ba0 mail/dovecot: upgrade to 2.3.9.3
Changelog:
    * CVE-2020-7046: Truncated UTF-8 can be used to DoS
      submission-login and lmtp processes.
    * CVE-2020-7957: Specially crafted mail can crash snippet generation.

MFH:		2020Q1
Security:	CVE-2020-7046
Security:	CVE-2020-7957
Security:	74db0d02-b140-4c32-aac6-1f1e81e1ad30
2020-02-13 00:47:39 +00:00
Larry Rosenman
38be96ca81 mail/dovecot: upgrade to 2.3.9.2,
* CVE-2019-19722: Mails with group addresses in From or To fields caused
crash in push notification drivers.
- additional fix for blank headers

PORTREVISION bump for mail/dovecot-pigeonhole, mail/dovecot-fts-xapian
*NOT* requesting MFH as 2.3.9 is not in 2019Q4.

Security:	b7dc4dde-2e48-43f9-967a-c68461537cf2
Security:	CVS-2019-19722
2019-12-13 15:02:25 +00:00
Larry Rosenman
0e8254517a mail/dovecot, mail/dovecot-pigeonhole: upgrade to 2.3.9, 0.5.9 respectively.
Bump PORTREVISION of mail/dovecot-fts-xapian for version change of dovecot.

Changelog:
Dovecot:
* Changed several event field names for consistency and to avoid
  conflicts in parent-child event relationships:
   * SMTP server command events: Renamed "name" to "cmd_name"
   * Events inheriting from a mailbox: Renamed "name" to "mailbox"
   * Server connection events have only "remote_ip", "remote_port",
     "local_ip" and "local_port".
   * Removed duplicate "client_ip", "ip" and "port".
   * Mail storage events: Removed "service" field.
     Use "service:<name>" category instead.
   * HTTP client connection events: Renamed "host" to "dest_host" and
     "port" to "dest_port"
* auth: Drop Postfix socketmap support. It hasn't been working
  with recent Postfix versions for a while now.
* push-notification-lua: The "subject" field is now decoded to UTF8
  instead of kept as MIME-encoded.
+ push-notification-lua: Added new "from_address", "from_display_name",
  "to_address" and "to_display_name" fields. The display names are
  decoded to UTF8.
+ Added various new fields to existing events.
  See http://doc.dovecot.net/admin_manual/list_of_events.html
+ Add lmtp_add_received_header setting. It can be used to prevent LMTP
  from adding "Received:" headers.
+ doveadm: Support SSL/STARTTLS for proxied doveadm connections based on
  doveadm_ssl setting and proxy ssl/tls settings.
+ Log filters support now "service:<name>", which matches all events for
  the given service. It can also be used as a category.
+ lib: Use libunwind to get abort backtraces with function names
  where available.
+ lmtp: When the LMTP proxy changes the username (from passdb lookup)
  add an appropriate ORCPT parameter.
- lmtp: Add lmtp_client_workarounds setting to implement workarounds for
  clients that send MAIL and RCPT commands with additional spaces before
  the path and for clients that omit <> brackets around the path.
  See example-config/conf.d/20-lmtp.conf.
- lda/lmtp: Invalid MAIL FROM addresses were rejcted too aggressively.
  Now mails from addresses with unicode characters are delivered, but
  their Return-Path header will be <> instead of the given MAIL FROM
  address.
- lmtp: The lmtp_hdr_delivery_address setting is ignored.
- imap: imap_command_finished event's "args" and "human_args" parameters
  were always empty.
- mbox: Seeking in zlib and bzip2 compressed input streams didn't work
  correctly.
- imap-hibernate: Process crashed when client got destroyed while it was
  attempted to be unhibernated, and the unhibernation fails.
- *-login: Proxying may have crashed if SSL handshake to the backend
  failed immediately. This was unlikely to happen in normal operation.
- *-login: If TLS handshake to upstream server failed during proxying,
  login process could crash due to invalid memory access.
- *-login: v2.3 regression: Using SASL authentication without initial
  response may have caused SSL connections to hang. This happened often
  at least with PHP's IMAP library.
- *-login: When login processes are flooded with authentication attempts
  it starts logging errors about "Authentication server sent unknown id".
  This is still expected. However, it also caused the login process to
  disconnect from auth server and potentially log some user's password
  in the error message.
- dict-sql: SQL prepared statements were not shared between sessions.
  This resulted in creating a lot of prepared statements, which was
  especially inefficient when using Cassandra backend with a lot of
  Cassandra nodes.
- auth: auth_request_finished event didn't have success=yes parameter
  set for successful authentications.
- auth: userdb dict - Trying to list users crashed.
- submission: Service could be configured to allow anonymous
  authentication mechanism and anonymous user access.
- LAYOUT=index: Corrupted dovecot.list.index caused folder creation to
  panic.
- doveadm: HTTP server crashes if request target starts with double "/".
- dsync: Remote dsync started hanging if the initial doveadm
  "dsync-server" command was sent in the same TCP packet as the
  following dsync handshake. v2.3.8 regression.
- lib: Several "input streams" had a bug that in some rare situations
  might cause it to access freed memory. This could lead to crashes or
  corruption.
  The only currently known effect of this is that using zlib plugin with
  external mail attachments (mail_attachment_dir) could cause fetching
  the mail to return a few bytes of garbage data at the beginning of the
  header. Note that the mail wasn't saved corrupted, but fetching it
  caused corrupted mail to be sent to the client.
- lib-storage: If a mail only has quoted content, use the quoted text
  for generating message snippet (IMAP PREVIEW) instead of returning
  empty snippet.
- lib-storage: When vsize header was rebuilt, newly calculated message
  sizes were added to dovecot.index.cache instead of being directly
  saved into vsize records in dovecot.index.
- lib: JSON generator was escaping UTF-8 characters unnecessarily.

Pigeonhole:
+ Added events for Sieve and ManageSieve, see
  https://doc.dovecot.org/admin_manual/list_of_events/#pigeonhole
+ Pigeonhole: Implement the Sieve "special-use" extension described in
  RFC 8579.
- duplicate: Test only compared the handles which would cause
  different values to be cached as the same duplicate test. Fix to also
  compare the actual hashes.
- imap_sieve_filter: IMAP FILTER Command had various bugs in error
  handling. Errors may have been duplicated for each email, errors
  may have been missing entirely, command tag and ERRORS/WARNINGS
  parameters were swapped.
2019-12-04 17:59:41 +00:00
Larry Rosenman
b0fb975578 mail/dovecot: include mention of security.bsd.hardlink_check_{g,u}id in pkg-message.
PR:		242223
Submitted by:	tphilipp@potion-studios.com
2019-11-26 01:52:57 +00:00
Larry Rosenman
81fc1d3d05 mail/dovecot: revert removing patch that is still needed.
PR:		240607
2019-10-16 16:25:07 +00:00
Baptiste Daroussin
df50252ad1 Revert changes that crept in by accident
Reported by:	fluffy
Pointy hat:	bapt
2019-10-10 08:18:26 +00:00
Larry Rosenman
0510a1fdbc mail/dovecot: really fix LUA=off.
Pointy Hat To: ler
2019-10-09 15:44:56 +00:00
Larry Rosenman
5c38738326 mail/dovecot: fix breakage when LUA is NOT selected.
PR:		241144
Submitted by:	matthias.pfaller@familie-pfaller.de
Reported by:	many
Pointy Hat To: ler
2019-10-09 14:38:32 +00:00
Baptiste Daroussin
0be2ce42f1 Drop the ipv6 virtual category for m* category as it is not relevant anymore 2019-10-09 12:06:22 +00:00
Baptiste Daroussin
85176da363 dovecot-fts-xapian: Bump portrevision after dovecot upgrade
Add a note to the dovecot port about the requirement to bump the portrevision
each time dovecot is updated

PR:		241147
Reported by:	Matthias Pfaller <matthias.pfaller@familie-pfaller.de>
2019-10-09 09:30:16 +00:00
Larry Rosenman
f86b5247b0 mail/dovecot, mail/dovecot-pigeonhole: upgrade to 2.3.8 and 0.5.8 respectively.
release notes:
dovecot:
Changes

+ Added mail_delivery_started and mail_delivery_finished events, see
https://doc.dovecot.org/admin_manual/list_of_events/ for details.
+ dsync-replication: Don't replicate users who have "noreplicate" extra
field in userdb.
+ doveadm service status: Show total number of processes created.
+ When logging to syslog, use instance_name setting's value for the
ident. This commonly is added as a log prefix.
+ Base64 encoding/decoding code was rewritten with additional features.
It shouldn't cause any user visible changes.
- v2.3.7 regression: If a folder only receives new mails without any
other mail access, dovecot.index.log keeps growing forever and
dovecot.index keeps being rewritten for every mail delivery.
- dsync-replication may lose keywords after syncing mails restored from
another replica. This only happened if the mail only had keywords and no
system flags.
- event filters: Non-textual event fields could not be filtered using
wildcards.
- auth: Scope parameter was missing from OAuth password grant request.
- doveadm client-server communication may hang in some situations. It is
also using unnecessarily small TCP/IP packet sizes.
- doveadm who and kick did not flush protocol output correctly.
- imap: SETMETADATA with literal value would delete the metadata value
instead of updating it.
- imap: When client issues FETCH PREVIEW (LAZY=FUZZY) command, the
caching decisions should be updated so that newly saved mails will have
the preview cached.
- With mail_nfs_index=yes and/or mail_nfs_storage=yes setuid/setgid
permission bits in some files may have become dropped with some NFS
servers. Changed NFS flushing to now use chmod() instead of chown().
- quota: warnings did not work if quota root was noenforcing
- acl: Global ACL file ignored the last line if it didn't end with LF.
- doveadm stats dump: With JSON formatter output numbers using the
number type instead of as strings
- lmtp_proxy: Ensure that real_* variables are correctly set when using
lmtp_proxy.
- event exporter: http-post driver had hardcoded timeout and did not
support DNS lookups or TLS connections.
- auth: Fix user iteration to work with userdb passwd with glibc v2.28.
- auth: auth service can crash if auth-policy JSON response is invalid
or returned too fast.
- In some rare situations "ps" output could have shown a lot of "?"
characters after Dovecot process titles.
- When dovecot.index.pvt is empty, an unnecessary error is logged:
  Error: .../dovecot.index.pvt reset, view is now inconsistent
- SMTP address encoder duplicated initial double quote character when
the localpart of an address ended in '..'. For example
"user+..@example.com" became ""user+.."@example.com in a
  sieve redirect.

pigeonhole:
Changes

- Sieve may leak resources in rare cases when a redirect, vacation or
report action fails to send the message. This mainly applies when Sieve
is executed in IMAP context; i.e., for the IMAPSIEVE or FILTER=SIEVE
capabilities.
2019-10-08 21:56:51 +00:00
Jan Beich
4bbb4133b2 devel/icu: update to 65.1
Changes:	http://site.icu-project.org/download/65
ABI:		https://abi-laboratory.pro/tracker/timeline/icu4c/
2019-10-03 20:35:29 +00:00
Larry Rosenman
ae697c8f1e mail/dovecot: remove no longer needed patch file.
PR:		240607
Submitted by:	paul.le.gauret@gmail.com
2019-09-16 01:24:37 +00:00
Larry Rosenman
3d824592bd mail/dovecot,mail/dovecot-pigeonhole: fix CVE-2019-11500
Changes
-------
* CVE-2019-11500: IMAP protocol parser does not properly handle NUL byte
  when scanning data in quoted strings, leading to out of bounds heap
  memory writes. Found by Nick Roessler and Rafi Rubin.

MFH:		2019Q3
Security:	CVE-2019-11500
2019-08-28 15:59:59 +00:00
Mathieu Arnold
558224994b onvert to UCL & cleanup pkg-message (categories l-m) 2019-08-13 22:29:42 +00:00
Larry Rosenman
bec604d835 mail/dovecot, mail/dovecot-pigeonhole: upgrade to 2.3.7.1 and 0.5.7.1 respectively.
These releases fix the reported regressions in v2.3.7 & v0.5.7.

Dovecot core:
        - Fix TCP_NODELAY errors being logged on non-Linux OSes
        - lmtp proxy: Fix assert-crash when client uses BODY=8BITMIME
        - Remove wrongly added checks in namespace prefix checking

Pigeonhole:
        - dsync: Sieve script syncing failed if mailbox attributes weren't
          enabled.
2019-07-23 14:26:56 +00:00
Larry Rosenman
bbfb58d14f mail/dovecot: [PATCH] lib-storage: Namespace prefix shouldn't be included in all
mailbox name validity checks

Obtained from:	upstream github.
2019-07-22 23:17:54 +00:00
Larry Rosenman
35ca9f2f90 mail/dovecot: One should actually TEST their patches.
Fix previous commit.

Pointy Hat To: ler
2019-07-17 20:19:19 +00:00
Larry Rosenman
454dfccf4e mail/dovecot: stop whining about TCP_NODELAY errors.
[PATCH] lib: ostream-file: Don't log any errors when setting
 TCP_NODELAY

It's likely never useful to log the error, and it seems more and more
unexpected errors just keep popping up.

Obtained from:	upstream git.
2019-07-17 19:22:24 +00:00
Larry Rosenman
a9892b4b7b mail/dovecot: stop spamming the log with EINVAL.
PR:		239172
Submitted by:	zillion1@o2.pl
Obtained from:	dovecot mailing list.
2019-07-12 19:22:09 +00:00
Larry Rosenman
d41e1e5999 mail/dovecot, mail/dovecot-pigeonhole: Update to 2.3.7 and 0.5.7 respectively.
dovecot changelog:
* fts-solr: Removed break-imap-search parameter
+ Added more events for the new statistics, see
  https://doc.dovecot.org/admin_manual/list_of_events/
+ mail-lua: Add IMAP metadata accessors, see
  https://doc.dovecot.org/admin_manual/lua/
+ Add event exporters that allow exporting raw events to log files and
  external systems, see
  https://doc.dovecot.org/configuration_manual/event_export/
+ SNIPPET is now PREVIEW and size has been increased to 200 characters.
+ Add body option to fts_enforced. This triggers building FTS index only
  on body search, and an error using FTS index fails the search rather
  than reads through all the mails.
- Submission/LMTP: Fixed crash when domain argument is invalid in a
  second EHLO/LHLO command.
- Copying/moving mails using Maildir format loses IMAP keywords in the
  destination if the mail also has no system flags.
- mail_attachment_detection_options=add-flags-on-save caused email body
  to be unnecessarily opened when FETCHing mail headers that were
  already cached.
- mail attachment detection keywords not saved with maildir.
- dovecot.index.cache may have grown excessively large in some
  situations. This happened especially when using autoexpunging with
  lazy_expunge folders. Also with mdbox format in general the cache file
  wasn't recreated as often as it should have.
- Autoexpunged mails weren't immediately deleted from the disk. Instead,
  the deletion from disk happened the next time the folder was opened.
  This could have caused unnecessary delays if the opening was done by
  an interactive IMAP session.
- Dovecot's TCP connections sometimes add extra 40ms latency due to not
  enabling TCP_NODELAY. HTTP and SMTP/LMTP connections weren't
  affected, but everything else was. This delay wasn't always visible -
  only in some situations with some message/packet sizes.
- imapc: Fix various crash conditions
- Dovecot builds were not always reproducible.
- login-proxy: With shutdown_clients=no after config reload the
  existing connections could no longer be listed or kicked with doveadm.
- "doveadm proxy kick" with -f parameter caused a crash in some
  situations.
- Auth policy can cause segmentation fault crash during auth process
  shutdown if all auth requests have not been finished.
- Fix various minor bugs leading into incorrect behaviour in mailbox
  list index handling. These rarely caused noticeable problems.
- LDAP auth: Iteration accesses freed memory, possibly crashing
  auth-worker
- local_name { .. } filter in dovecot.conf does not correctly support
  multiple names and wildcards were matched incorrectly.
- replicator: dsync assert-crashes if it can't connect to remote TCP
  server.
- config: Memory leak in config process when ssl_dh setting wasn't
  set and there was no ssl-parameters.dat file.
  This caused config process to die once in a while
  with "out of memory".

pigeonhole changelog:
+ vacation: Made the subject for the automatic response message produced
  by the Sieve vacation action configurable. Both the default subject
  (if the script defines none) and the subject template (e.g. used to
  add a subject prefix) can be configured.
- dsync: dsync-replication does not synchronize Sieve scripts.
- imap_sieve_filter: Reduce FILTER=SIEVE verbosity over IMAP connection.
- testsuite: Pigeonhole testsuite segfaulted if it was compiled with
  GCC 9
2019-07-12 13:20:29 +00:00
Larry Rosenman
368ab2c722 mail/dovecot: remove obsolete patch.
no PORTREVISION bump, as it doesn't change the package.

Reported by:	herbert@gojira.at
2019-05-01 14:38:59 +00:00
Larry Rosenman
15dd243379 mail/dovecot, mail/dovecot-pigeonhole: upgrade to 2.3.6, 0.5.6 respectively.
Dovecot changelog:
* CVE-2019-11494: Submission-login crashed with signal 11 due to null pointer access when authentication was aborted by disconnecting.
* CVE-2019-11499: Submission-login crashed when authentication was started over TLS secured channel and invalid authentication message was sent.
* auth: Support password grant with passdb oauth2.
+ Use system default CAs for outbound TLS connections.
+ Simplify array handling with new helper macros.
+ fts_solr: Enable configuring batch_size and soft_commit features.
- lmtp/submission: Fixed various bugs in XCLIENT handling, including a hang when XCLIENT commands were sent infinitely to the remote server.
- lmtp/submission: Forwarded multi-line replies were erroneously sent as two replies to the client.
- lib-smtp: client: Message was not guaranteed to contain CRLF consistently when CHUNKING was used.
- fts_solr: Plugin was no longer compatible with Solr 7.
- Make it possible to disable certificate checking without setting ssl_client_ca_* settings.
- pop3c: SSL support was broken.
- mysql: Closing connection twice lead to crash on some systems.
- auth: Multiple oauth2 passdbs crashed auth process on deinit.
- HTTP client connection errors infrequently triggered a segmentation fault when the connection was idle and not used for a particular client instance.

Pigeonhole changelog:
+ sieve: Redirect loop prevention is sometimes ineffective. Improve existing loop detection by also recognizing the
  X-Sieve-Redirected-From header in incoming messages and dropping redirect actions when it points to
  the sending account. This header is already added by the redirect action, so this improvement only adds an additional use of this header.
- sieve: Prevent execution of implicit keep upon temporary failure occurring at runtime.

MFH:		2019Q2
Security:	CVE-2019-11494
Security:	CVE-2019-11499
2019-04-30 21:33:30 +00:00
Larry Rosenman
8d7569cded mail/dovecot: upgrade to 2.3.5.2
* CVE-2019-10691: Trying to login with 8bit username containing
      invalid UTF8 input causes auth process to crash if auth policy is
      enabled. This could be used rather easily to cause a DoS. Similar
      crash also happens during mail delivery when using invalid UTF8 in
      From or Subject header when OX push notification driver is used.

MFH:		2019Q2
Security:	CVE-2019-10691
2019-04-18 15:22:06 +00:00
Larry Rosenman
0c2a225328 mail/dovecot: upgrade to 2.3.5.1.
* CVE-2019-7524: Missing input buffer size validation leads into
      arbitrary buffer overflow when reading fts or pop3 uidl header
      from Dovecot index. Exploiting this requires direct write access to
      the index files.

MFH:		2019Q1
Security:	CVE-2019-7524
2019-03-28 12:24:41 +00:00
Jan Beich
480c577baa devel/icu: update to 64.1
Changes:	http://site.icu-project.org/download/64
ABI:		https://abi-laboratory.pro/tracker/timeline/icu4c/
PR:		236325
Exp-run by:	antoine
Differential Revision:	https://reviews.freebsd.org/D19479
2019-03-27 21:11:08 +00:00
Larry Rosenman
df81cb1b9c mail/dovecot and mail/dovecot-pigeonhole upgrade to 2.3.5 and 0.5.5 respectively
dovecot changelog:
+ Lua push notification driver: mail keywords and flags are provided in MessageNew and MessageAppend events.
+ submission: Implement support for plugins.
+ auth: When auth_policy_log_only=yes, only log what the policy server response would do without actually doing it.
+ auth: Always log policy server decisions with auth_verbose=yes
- v2.3.[34]: doveadm log errors: Output was missing user/session
- lda: Debug log lines could have shown slightly corrupted
- login proxy: Login processes may have crashed in various ways when login_proxy_max_disconnect_delay was set.
- imap: Fix crash with Maildir+zlib if client disconnects during APPEND
- lmtp proxy: Fix potential assert-crash
- lmtp/submission: Fix crash when SMTP client transaction times out
- submission: Split large XCLIENT commands to 512 bytes per command, so Postfix accepts them.
- submission: Fix crash when client sends invalid BURL command
- submission: relay backend: VRFY command: Avoid forwarding 500 and 502 replies back to client.
- lib-http: Fix potential assert-crash when DNS lookup fails
- lib-fts: Fix search query generation when one language ignores a token (e.g. via stopwords).

pigeonhole changelog:
+ IMAPSieve: Add new plugin/imapsieve_expunge_discarded setting which causes messages discarded by an IMAPSieve script to be expunged immediately, rather than only being marked as "\Deleted" (which is still the default behavior).
- IMAPSieve: Fix panic crash occurring when a COPY command copies
messages from a virtual mailbox where the source messages originate from more than a single real mailbox.
- imap4flags extension: Fix deleting all keywords. When the action
resulted in all keywords being removed, no changes were actually
applied.
- variables extension: Fix truncation of UTF-8 variable content. The maximum size of Sieve variables was enforced by truncating the
variable string content bluntly at the limit, but this does not
consider UTF-8 code point boundaries. This resulted in broken UTF-8 strings. This problem also surfaced for variable modifiers, such as the ":encodeurl" modifier provided by the Sieve "enotify" extension. In that case, the resulting URI escaping could also be truncated inappropriately.
- IMAPSieve, IMAP FILTER=SIEVE: Fix replacing a modified message. Sieve scripts running in IMAPSIEVE or IMAP FILTER=SIEVE context that modify the message, stored the message a second time, rather than replacing the originally stored unmodified message.
- Fix segmentation fault occurring when both the sieve_extprograms
plugin (for the Sieve interpreter) and the imap_filter_sieve plugin (for IMAP) are loaded at the same time. A symbol was defined by both plugins, causing a clash when both were loaded.
2019-03-05 23:34:12 +00:00
Larry Rosenman
a434efa6bf mail/dovecot: upgrade to 2.3.4.1
* CVE-2019-3814: If imap/pop3/managesieve/submission client has
      trusted certificate with missing username field
      (ssl_cert_username_field), under some configurations Dovecot
      mistakenly trusts the username provided via authentication instead
      of failing.
    * ssl_cert_username_field setting was ignored with external SMTP AUTH,
      because none of the MTAs (Postfix, Exim) currently send the
      cert_username field. This may have allowed users with trusted
      certificate to specify any username in the authentication. This bug
      didn't affect Dovecot's Submission service.

PR:		235523
Submitted by:	pascal.christen@hostpoint.ch
MFH:		2019Q1
Security:	1340fcc1-2953-11e9-bc44-a4badb296695
Security:	CVE-2019-3814
2019-02-05 14:50:38 +00:00
Larry Rosenman
d39a167fe8 mail/dovecot: Fix previous commit.
I missed a character typing the patch.

Pointy Hat: ler
2019-01-06 17:55:58 +00:00
Larry Rosenman
a6885ac1ef mail/dovecot: Pick up mailing list patch for imap-preauth vs. stats-writer.
see the dovecot mailing list thread on imap-preauth and stats-writer between
Stephan Bosch and a FreeBSD user

Obtained from:	upstream mailing list.
2019-01-06 17:46:53 +00:00
Larry Rosenman
fab5b969f8 mail/dovecot: Pick up a mailinglist patch for solr/tika separation.
solr and tika currently use the same http client connection.  Upstream
made the attached patches in response to my (ler@) bug report.

Obtained from:	upstream mailing list.
2019-01-02 22:30:55 +00:00
Larry Rosenman
7c09023980 mail/dovecot: Add upstream patch to fix a double free in MySQL.
Obtained from:	3c5101ffdd.patch
2018-12-04 17:53:58 +00:00
Larry Rosenman
15513b1966 mail/dovecot: add option to support libsodium
- libsodium option to support security/libsodium based crypts
- pet portlint
- fix LUA option pkg-plist issues
2018-12-04 11:33:06 +00:00
Larry Rosenman
3f50049b45 mail/dovecot: pick up patch from upstream to quiet format warnings.
Obtained from:	de42b54aaf
2018-11-23 18:22:16 +00:00
Larry Rosenman
218e60f065 mail/dovecot update to 2.3.4, mail/dovecot-pigeonhole to 0.5.4
dovecot change log:
* The default postmaster_address is now "postmaster@<user domain or
   server hostname>". If username contains the @domain part, that's
   used. If not, then the server's hostname is used.
* "doveadm stats dump" now returns two decimals for the "avg" field.

+ Added push notification driver that uses a Lua script
+ Added new SQL, DNS and connection events.
   See https://wiki2.dovecot.org/Events
+ Added "doveadm mailbox cache purge" command.
+ Added events API support for Lua scripts
+ doveadm force-resync -f parameter performs "index fsck" while opening
   the index. This may be useful to fix some types of broken index files.
   This may become the default behavior in a later version.
- director: Kicking a user crashes if login process is very slow
- pop3_no_flag_updates=no: Don't expunge DELEted and RETRed messages
   unless QUIT is sent.
- auth: Fix crypt() segfault with glibc-2.28+
- imap: Running UID FILTER script with errors assert-crashes
- dsync, pop3-migration: POP3 UIDLs weren't added to
   dovecot.index.cache while mails were saved.
- dict clients may have been using 100% CPU while waiting for dict
   server to finish commands.
- doveadm user: Fixed user listing via HTTP API
- All levels of Cassandra log messages were logged as Dovecot errors.
- http/smtp client may have crashed after SSL handshake
- Lua auth converted strings that looked like numbers into numbers.

pigeonhole change log:
  * Adjustments to several changes in Dovecot v2.3.4 make this Pigeonhole
    release dependent on that Dovecot release; it will not compile against
    older Dovecot versions. And, conversely, you need to upgrade
    Pigeonhole when upgrading Dovecot to v2.3.4.
  * The changes regarding the default postmaster_address in Dovecot v2.3.4
    mainly apply to Pigeonhole. The new default should work for all
    existing installations, thereby fixing several reported v2.3/v0.5
    migration problems.

  - IMAP FILTER=SIEVE capability: Fix assert crash occurring when running
    UID FILTER on a Sieve script with errors.
2018-11-23 15:12:44 +00:00
Larry Rosenman
f32efe0e56 mail/dovcecot: fix thinko in previous update. Don't print config always
PR:		232803
Submitted by:	oleg@pcbtech.ru
2018-10-30 14:04:21 +00:00
Larry Rosenman
d3bf037d52 mail/dovecot: give better error message(s) when there are configuration errors.
PR:		232785
Submitted by:	prj@rootwyrm.com
2018-10-29 23:28:26 +00:00
Jan Beich
91f9922c6f devel/icu: update to 63.1
Changes:	http://site.icu-project.org/download/63
ABI:		https://abi-laboratory.pro/tracker/timeline/icu4c/
PR:		232300
Exp-run by:	antoine
2018-10-23 11:35:03 +00:00
Larry Rosenman
fe8ee0a8b2 mail/dovecot: don't pick up libsodium if installed.
PR:		232236
Submitted by:	d8zNeCFG@aon.at
2018-10-14 13:30:39 +00:00
Larry Rosenman
8093260938 mail/dovecot upgrade to 2.3.3, mail/dovecot-pigeonhole upgrade to 0.5.3.
dovecot changelog:
* doveconf hides more secrets now in the default output.
* ssl_dh setting is no longer enforced at startup. If it's not set and
   non-ECC DH key exchange happens, error is logged and client is
   disconnected.

+ Added log_debug=<filter> setting.
+ Added log_core_filter=<log filter> setting.
+ quota-clone: Write to dict asynchronously
+ --enable-hardening attempts to use retpoline Spectre 2 mitigations
+ lmtp proxy: Support source_ip passdb extra field.
+ doveadm stats dump: Support more fields and output stddev by default.
+ push-notification: Add SSL support for OX backend.
- NUL bytes in mail headers can cause truncated replies when fetched.
- director: Conflicting host up/down state changes may in some rare
   situations ended up in a loop of two directors constantly overwriting
   each others' changes.
- director: Fix hang/crash when multiple doveadm commands are being
   handled concurrently.
- director: Fix assert-crash if doveadm disconnects too early
- virtual plugin: Some searches used 100% CPU for many seconds
- dsync assert-crashed with acl plugin in some situations.
- mail_attachment_detection_options=add-flags-on-save assert-crashed
   with some specific Sieve scripts.
- Mail snippet generation crashed with mails containing invalid
   Content-Type:multipart header.
- Log prefix ordering was different for some log lines.
- quota: With noenforcing option current quota usage wasn't updated.
- auth: Kerberos authentication against Samba assert-crashed.
- stats clients were unnecessarily chatty with the stats server.
- imapc: Fixed various assert-crashes when reconnecting to server.
- lmtp, submission: Fix potential crash if client disconnects while
   handling a command.
- quota: Fixed compiling with glibc-2.26 / support libtirpc.
- fts-solr: Empty search values resulted in 400 Bad Request errors
- fts-solr: default_ns parameter couldn't be used
- submission server crashed if relay server returned over 7 lines in
   a reply (e.g. to EHLO)

pigeonhole changelog:
- Fix assertion panic occurring when managesieve service fails to open
   INBOX while saving a Sieve script. This was caused by a lack of
   cleanup after failure.
- Fix specific messages causing an assert panic with actions that
   compose a reply (e.g. vacation). With some rather weird input from the
   original message, the header folding algorithm (as used for composing
   the References header for the reply) got confused, causing the panic.
- IMAP FILTER=SIEVE capability: Fix FILTER SIEVE SCRIPT command parsing.
   After finishing reading the Sieve script, the command parsing
   sometimes didn't continue with the search arguments. This is a time-
   critical bug that likely only occurs when the Sieve script is sent in
   the next TCP frame.

Add a patch to close stderr in src/master/main.c, should fix PR 228003.

PR:		228003
Submitted by:	psagers@ignorare.net
2018-10-01 23:18:30 +00:00
Larry Rosenman
07090b75cb mail/dovecot, mail/dovecot22: suppress harmless error message when the symlink in /var/run/dovecot
to the config file doesn't exist.

PR:		225078
Reported by:	pkubaj@anongoth.pl
Reviewed by:	adamw
MFH:		2018Q3
2018-08-19 21:00:17 +00:00
Larry Rosenman
4f57328ec6 mail/dovecot: upgrade to 2.3.2.1.
v2.3.2 still had a few unexpected bugs:

- SSL/TLS servers may have crashed during client disconnection
- lmtp: With lmtp_rcpt_check_quota=yes mail deliveries may have
   sometimes assert-crashed.
- v2.3.2: "make check" may have crashed with 32bit systems
2018-07-09 17:30:06 +00:00
Larry Rosenman
7a80b8a75e mail/dovecot, mail/dovecot-pigeonhole: upgrade to 2.3.2 and 0.5.2 respectively
dovecot changelog:
v2.3.2 is mainly a bugfix release. It contains all the changes in v2.2.36, as well as a bunch of other fixes (mainly for v2.3-only bugs). Binary packages are already in https://repo.dovecot.org/

* old-stats plugin: Don't temporarily enable PR_SET_DUMPABLE while
   opening /proc/self/io. This may still cause security problems if the
   process is ptrace()d at the same time. Instead, open it while still
   running as root.
+ doveadm: Added mailbox cache decision&remove commands. See
   doveadm-mailbox(1) man page for details.
+ doveadm: Added rebuild attachments command for rebuilding
   $HasAttachment or $HasNoAttachment flags for matching mails. See
   doveadm-rebuild(1) man page for details.
+ cassandra: Use fallback_consistency on more types of errors
+ lmtp proxy: Support outgoing SSL/TLS connections
+ lmtp: Add lmtp_rawlog_dir and lmtp_proxy_rawlog_dir settings.
+ submission: Add support for rawlog_dir
+ submission: Add submission_client_workarounds setting.
+ lua auth: Add password_verify() function and additional fields in
   auth request.
- doveadm-server: TCP connections are hanging when there is a lot of
   network output. This especially caused hangs in dsync-replication.
- Using multiple type=shared mdbox namespaces crashed
- mail_fsync setting was ignored. It was always set to "optimized".
- lua auth: Fix potential crash at deinit
- SSL/TLS servers may have crashed if client disconnected during
   handshake.
- SSL/TLS servers: Don't send extraneous certificates to client when
   alt certs are used.
- lda, lmtp: Return-Path header without '<' may have assert-crashed.
- lda, lmtp: Unencoded UTF-8 in email address headers may assert-crash
- lda: -f parameter didn't allow empty/null/domainless address
- lmtp, submission: Message size limit was hardcoded to 40 MB.
   Exceeding it caused the connection to get dropped during transfer.
- lmtp: Fix potential crash when delivery fails at DATA stage
- lmtp: login_greeting setting was ignored
- Fix to work with OpenSSL v1.0.2f
- systemd unit restrictions were too strict by default
- Fix potential crashes when a lot of log output was produced
- SMTP client may have assert-crashed when sending mail
- IMAP COMPRESS: Send "end of compression" marker when disconnecting.
- cassandra: Fix consistency=quorum to work
- dsync: Lock file generation failed if home directory didn't exist
- Snippet generation for HTML mails didn't ignore &entities inside
   blockquotes, producing strange looking snippets.
- imapc: Fix assert-crash if getting disconnected and after
   reconnection all mails in the selected mailbox are gone.
- pop3c: Handle unexpected server disconnections without assert-crash
- fts: Fixes to indexing mails via virtual mailboxes.
- fts: If mails contained NUL characters, the text around it wasn't
   indexed.
- Obsolete dovecot.index.cache offsets were sometimes used. Trying to
   fetch a field that was just added to cache file may not have always
   found it.

pigeonhole changelog:
Changelog v0.5.2:

+ Implement plugin for the a vendor-defined IMAP capability called
   "FILTER=SIEVE". It adds the ability to manually invoke Sieve filtering
   in IMAP. More information can be found in
   doc/plugins/imap_filter_sieve.txt.
- The Sieve address test caused an assertion panic for invalid addresses
   with UTF-8 codepoints in the localpart. Fixed by properly detecting
   invalid addresses with UTF-8 codepoints in the localpart and skipping
   these like other invalid addresses while iterating addresses for the
   address test.
- Make the length of the subject header for the vacation response
   configurable and enforce the limit in UTF-8 codepoints rather than
   bytes. The subject header for a vacation response was statically
   truncated to 256 bytes, which is too limited for multi-byte UTF-8
   characters.
- Sieve editheader extension: Fix assertion panic occurring when it is
   used to manipulate a message header with a very large header field.
- Properly abort execution of the sieve_discard script upon error.
   Before, the LDA Sieve plugin attempted to execute the sieve_discard
   script when an error occurs. This can lead to the message being lost.
- Fix the interaction between quota and the sieve_discard script. When
   quota was used together with a sieve_discard script, the message
   delivery did not bounce when the quota was exceeded.
2018-06-29 16:36:04 +00:00
Jan Beich
3beb732dad devel/icu: update to 62.1
Changes:	http://site.icu-project.org/download/62
ABI:		https://abi-laboratory.pro/tracker/timeline/icu4c/
PR:		229359
Exp-run by:	antoine (only 10.4)
2018-06-29 14:22:11 +00:00
Larry Rosenman
b990f7429a mail/dovecot{,22} add BEFORE: mail to RC script
PR:	228998
Submitted by:	ohauer@FreeBSD.org
2018-06-13 20:59:52 +00:00
Larry Rosenman
dab3036d35 mail/dovecot: fix "2.3.1 Replication is throwing scary errors"
make makepatch for cleanliness
Submitted by:	remko
Reported by:	remko
Obtained from:	upstream
2018-06-06 19:23:00 +00:00
Adam Weinberger
6e5b40ba2c Scale back my portfolio
I'm releasing maintainership on a number of ports that I no longer have
time to maintain effectively.
2018-05-18 15:23:27 +00:00
Adam Weinberger
e24183cdc7 Add an upstream patch to fix a panic when a malformed address line
is fed to dovecot, as OpenSMTPd can do.

Submitted by:	gahr
Reported by:	brnrd
Obtained from:	fbed9168dc
2018-04-24 18:11:23 +00:00
Danilo G. Baio
bd62adb536 Add mail/dovecot22 (v2.2.35) and mail/dovecot-pigeonhole04 (v0.4.23)
This brings back Dovecot 2.2.35 to the tree because there is an issue
with version 2.3.1 and replication in some scenarios [1].

Keep this version until this problem gets fixed upstream.

1 - https://www.dovecot.org/list/dovecot/2018-April/111477.html

Approved by:	adamw (maintainer of mail/dovecot)
Approved by:	ler   (maintainer of mail/dovecot-pigeonhole)
2018-04-22 21:35:38 +00:00
Jan Beich
ae60358af5 devel/icu: update to 61.1
Changes:	http://site.icu-project.org/download/61
ABI:		https://abi-laboratory.pro/tracker/timeline/icu4c/
PR:		227042
Exp-run by:	antoine
MFH:		2018Q2 (required by Firefox 61)
2018-04-06 15:53:16 +00:00