Skip to content

Releases: grommunio/gromox

Gromox 2.15

18 Oct 13:17
Compare
Choose a tag to compare

Fixes:

  • imap: do not emit continuation request on LITERAL+ (now also for large literals >64K)
  • exmdb: ignore softdeleted folders when validating new folder name
  • exmdb: explicitly rollback SQLite transactions when the commit operation failed, to resolve cases of cannot start a transaction within a transaction
  • exmdb: ACE entries for anonymous were misreported to clients

Enhancements:

  • delivery: support for plus-addresses/recipient delimiters, e.g. <[email protected]>
  • delivery: new config directive lda_recipient_delimiters
  • mbop: new subcommand recalc-size to recalculate store size

Changes:

  • alias_resolve: config directives are no longer read from /etc/gromox/alias_resolve.cfg but now from /etc/gromox/gromox.cfg
  • oxcmail: do not emit Content-Disposition creation-time/modification-time parameters when those fields are not present in the MAPI object
  • Delete unused columns and indexes from the associations MariaDB table; (grommunio-admin-api should be updated to >= 1.12)

Gromox 2.14

04 Oct 11:07
Compare
Choose a tag to compare

Enhancements:

  • daemons: better SSL_accept error log messages
  • alias_resolve: support for nested mlist expansion
  • alias_resolve: support for Global Contact Objects
  • delivery: SIGHUP triggers a reload of (more) plugins now
  • gromox-mbop: add emptyfld options -a, -M

Fixes:

  • oxdisco, oab: avoid emitting extraneous NUL byte at end of XML document
  • imap: do not emit continuation request on LITERAL+
  • mbop: restore emptyfld functionality after switch to empty_folder v2 RPC
  • mbop: delmsg -f DRAFT 12345 did nothing due to a bad translation of the special name

Gromox 2.13

23 Sep 21:05
Compare
Choose a tag to compare
  • emsmdb: eliminiate duplicate message appearing when copying to a private non-default / shared store
  • EWS: support the {Create,Delete,Move,Copy,Update,Empty}Folder operation(s)
  • EWS: support the {Copy,Move}Item operation(s)

Gromox 2.12

04 Sep 17:19
Compare
Choose a tag to compare

Enhancements:

  • ews: support CreateItem, DeleteItem, SendItem requests
  • oxm2mt: support multi-valued properties

Fixes:

  • kdb2mt: do not abort when --src-mbox is used
  • exmdb_provider: opening the detail view of Personal Addressbook entries now works in Outlook, as does selecting them as message recipients
  • zcore: fix a flaw in permissions dialog that caused the delegates to be able to see the private items of the delegator

Behavioral changes:

  • exch: remove old PHP EWS handler
  • zcore: delete getuseravailability RPC and replace by new getuserfreebusy RPC

Gromox 2.11

21 Aug 13:59
Compare
Choose a tag to compare

Enhancements:

  • exmdb: attachment storage with hash-based filenames
  • exmdb_local: persistent (on-disk) last-autoreply time tracking
  • imap: allow large literals with APPEND
  • imap: add RFC 7888 support
  • oxdisco: allow AutoDiscover information retrieval from secondary mailboxes even if the scndstore_hints table does not have an entry.
  • emsmdb: "Mark all as read" in OL (Online mode) now works

Fixes:

  • oxcical: resolved another case of recurring appointments shifting due to timezone/daylightbias
  • exmdb_provider: resolve constraint failure on movecopy_messages
  • email_lib: add back CRLF when MIME::read_head is reconstructing headers
  • mapi_lib: resolve an infinite loop during html_to_rtf
  • exmdb_provider: ignore absent directories during gromox-mbop purge-datafiles
  • exmdb_provider: make exmdb_pf_read_states=1 hide folder sumamry counts as advertised by manpage
  • zcore: delegation dialog had erroneously set too many permission bits

Changes:

  • exmdb_client: disable timeout during active calls
  • delivery: raise context_average_mime limit from 8 to 500
  • nsp: drop "custom address list" name suffix from mlists

Gromox 2.10

15 Jun 15:23
Compare
Choose a tag to compare

Fixes:

  • imap: restore notifications during IDLE
  • midb: do not present softdeleted messages to IMAP
  • zcore: validate permissions when inbox rules or folder permissions are edited
  • lda_twostep_ruleproc: resolve array out-of-bounds access when resolving named properties
  • snapshot: switch back to root user identity to be able to purge snapshots

Enhancements:

  • DNSBL filtering mechanism, cf. man dnsbl_filter
  • Address book name resolution now evaluates alias addresses
  • pff2mt: speedup operation by 70%+
  • emsmdb: strike limits (raise to infinity) for session handles, user handles and notify handles, and raise limit for ems_max_pending_sesnotif to 1K
  • emsmdb: new configuration directives ems_max_active_notifh, ems_max_active_sessions, ems_max_active_users, ems_max_pending_sesnotif
  • mbop: new subcommands clear-photo, clear-profile, purge-softdelete, purge-datafiles

Changes:

  • The PHP-MAPI profile is now stored in the mail store as a property rather than as a flat file. The upgrade is automatically performed when the MAPI profile gets modified via PHP-MAPI.
  • The user profile picture is now stored in the mail store as a property rather than as a flat file. The upgrade is automatically performed when the photo is modified via PHP-MAPI.
  • /usr/libexec/gromox/cleaner is obsolete and replaced by mbop subcommand purge-datafiles.

Gromox 2.9

10 May 09:39
Compare
Choose a tag to compare

Fixes:

  • zcore: plug memory leak when address book data structure reloads
  • zcore: fix inverted evaluation of RES_CONTENT::comparable
  • zcore: moving messages from one store to another obtained CNs from the wrong store and could fail the operation
  • oxcical: add TZID for allday events
  • imap: consistently show EXISTS status before RECENT
  • imap: move EXISTS/RECENT response after SEARCH result
  • imap: skip reporting EXISTS/RECENT if folder is unchanged
  • imap: make FETCH RFC822 report FLAGS as well
  • imap: SEARCH by size used the wrong column
  • imap: avoid double status reporting when one message is changed multiple times
  • imap: add and populate a per-context seqid list
  • midb: unbreak search matching based on dates and sizes
  • imap: cease emitting extraneous FETCH FLAGS responses (works around a shortcoming in the KDE kmail client)
  • imap: resolve E-1995 erroneously showing when memory use is fine
  • emsmdb: avoid hitting an assertion when sort-reloading a table of a deleted folder

Enhancements:

  • emsmdb: support forwarding meeting requests from organizers that are not local to the installation
  • imap: broadcast changes to mailbox from EXPUNGE commands
  • midb: auto-regenerate ext/ digests when missing
  • Log the filename of the SQLite database when a query fails
  • emsmdb: add log messages for notification queue limits

Gromox 2.8

15 Apr 11:02
Compare
Choose a tag to compare

Fixes:

  • exmdb_provider: repair a 4-byte cutoff when reading PR_BODY, PR_TRANSPORT_MESSAGE_HEADERS if they are compressed on disk
  • emsmdb: setting multiple mails as read/unread was repaired
  • php_mapi: fix a case where proptag arrays had bogus keys
  • midb: resolve a crash when a P-SRHL HEADER search has not enough arguments
  • zcore: do not lose folder for OP_MOVE rules when that folder is in a public store
  • mda: the DATA command in LMTP mode did not emit one status line for every RCPT
  • nsp: fix janky addressbook navigation when the GAL has hidden entries
  • authmgr: resolve altnames before searching them in the LDAP backend
  • php_mapi: reduce memory block retention scopes so that requests with a large response (~128MB+) won't die from Out Of Memory
  • midb: fix E-1903 error appearing on shutdown

Enhancements:

  • The "Hide from addresbook" functionality has gained another bit, so that name resolution ("Check names" button in OL/g-web) is no longer tied to visibility in the GAL.
  • Support for non-default stores in the IMAP and POP3 protocols; use "actualusername!sharedmbox" as the username for login.
  • imap: allow setting \Recent flag with STORE command
  • imap: send TRYCREATE on failed SELECT
  • imap: output \Junk alongside \Spam for the junk folder
  • imap: emit special-use flags with plain LIST when so requested in the command
  • imap: add LIST response to SELECT/EXAMINE
  • pff2mt: add --with-assoc, --without-assoc

Changes:

  • daemons: the files /etc/gromox/exmdb_acl.txt, midb_acl.txt, event_acl.txt, timer_acl.txt were made obsolete and replaced by the new (exmdb_provider.cfg) "exmdb_hosts_allow", (midb.cfg) "midb_hosts_allow, (event.cfg) "event_hosts_allow", (timer.cfg) "timer_hosts_allow" directives.
  • http: adjust the built-in PHP-FPM socket paths to reflect changes in g-web and g-sync (this impacts test setups that run gromox-http without an nginx in front)
  • mda: update "Received" headers in messages to look more like Postfix's
  • pff2mt: --without-assoc is now the default
    (This is only a concern with .ost files, as .pst does not have FAI messages.)

Gromox 2.7

24 Mar 01:12
Compare
Choose a tag to compare

Fixes:

  • mbop: support folder strings for delmsg -f as was documented
  • oxcmail: do not fail exporting DSNs with unresolvable addresses
  • oxcical: do not fail exporting calendar objects with unresolvable addresses
  • oxvcard: repair NULL deref when exporting PR_CHILDRENS_NAMES
  • exmdb_provider: support mbox_contention_*=0 as was documented
  • gromox-snapshot: safer parsing of snapshot.cfg
  • emsmdb: resolve infinite loop when counting property value size of invalid UTF-8 strings

Behavioral changes:

  • exmdb_provider: default to mbox_contention_reject=0
  • exch: support absent values with RES_PROPERTY, RES_BITMASK and RES_CONTENT comparisons
  • zcore: make mapi_message_imtoinet operate on message instances, not messages

Gromox 2.6

10 Mar 00:16
Compare
Choose a tag to compare

Fixes:

  • exmdb_provider: filter duplicate propids when they occur in the mailbox, resolving a failure to export (broken) recipients to MSG, and resolving one instance of OL sync error 80070057.
  • oxvcard: PidLidBusinessCardDisplayDefinition named property was not assigned the right namespace (PSETID_ADDRESS)
  • oxcmail: do not abort export routine if SMIME message is lacking an SMIME body (just treat it as empty instead)
  • oxcical: do not abort export routine if IPM..Resp. has no attendee
  • exmdb_local: perform online lookup of named properties, resolving vcarduid being erroneously assigned propid 0
  • exmdb_provider: do not write propid 0 properties to database
  • midb, imap: FETCHing some mails did not function due to a misparse of the compat format of the "mimes" structure in mjson_parse_array
  • mapi_lib: rectify emission of \cf code in htmltortf
  • delivery: reduce number of default worker threads to number of client connections to temporarily address "too many connections"
  • delivery: retain queue messages on processing errors
  • mlist_expand: resolve null dereference during mlist_expand

Behavioral changes:

  • delivery: rename delivery_log_file -> lda_log_file (+ log_level)
  • Errors from sqlite3_step() will now be logged.
  • exch: consistently accept PT_STRING8 & PT_BINARY for RES_CONTENT evaluations