Skip to content

Releases: grommunio/gromox

Gromox 2.30

21 Jun 18:52
gromox-2.30

Choose a tag to compare

Fixes:

  • exmdb: instace_load_message RPC with unsynthesizable properties will no longer yield an erroneous error
  • exmdb: setting anonymous-ID permissions on folders was erroneously treated as wanting to set default-ID permissions and did not complete
  • oxcical: emit VTIMEZONE for events without PidLidAppointmentTimeZoneDefinitionStartDisplay
  • php_mapi: delete nonsensical return types from function stubs used for introspection
  • Set syslog process names (meaningful for non-glibc platforms)
  • pam_gromox: resolve a use-after-free when the module is invoked twice in a row (as is the case with e.g. saslauthd)
  • exmdb: resolve use-after-free/crash on process shutdown (search folder shutdown)

Enhancements:

  • gromox-mbop: new subcommand set-locale to change store language
  • exmdb: add more SQLite transactions and make concurrent read access for stores possible
  • ruleproc: initial autoprocessing for meeting requests
    • conflict detection, response sending for conflicts, automatic addition to calendar
    • needs to be enabled with gromox.cfg:lda_mrautoproc=yes
  • imap, pop3, delivery-queue: HAProxy protocol support (send-proxy-v2)
  • zcore: show private distribution lists the grommunio-web address book

Gromox 2.29

04 Jun 08:12
gromox-2.29

Choose a tag to compare

Fixes:

  • dnsbl_filter: support DNSBL servers that do not emit TXT records
  • email_lib: cure IMAP Structure Descriptions indicating a mail size 2 bytes larger than it is
  • imap: cope with truncated EML files
  • exmdb: delete leftover stray ROLLBACK statement
  • ews: cure null dereference in tInternetMessageHeader::parse
  • ews: use vmime parser to break down IMHs and reset an Apple workaround for "From" lines

Changes:

  • emsmdb: attempt to synthesize PR_SENDER_ADDRTYPE & PR_SENT_REPRESENTING_ADDRTYPE when they are missing (also warn when those properties are deleted)

Gromox 2.28

02 May 09:59
gromox-2.28

Choose a tag to compare

Fixes:

  • imap: repair messages not getting added to midb during 64K+ append
  • imap: cure client session hang when midb failed to add a mail during 64K-append
  • mysql_adaptor: gracefully handle attempts to use Unicode in usernames (treat as non-existing user rather than failing the user lookup altogether)
  • zcore: a crash on shutdown was addressed

Enhancements:

  • mysql_adaptor: allow Unicode in alternate usernames (altnames)
  • Populate PR_DELETED_ON property for softdeleted items
  • exmdb: exmdb_rpc_debug will now emit execution time for EXRPCs
  • zcore: zrpc_debug logging now includes the session GUID to help correlate which ZRPCs are executed by which user
  • imap: imap_cmd_debug logging now includes the client IP address to help correlate which actions are executed by which user
  • pop3: pop3_cmd_debug logging now includes the client IP address to help correlate which actions are executed by which user

Changes:

  • remote_delivery.cfg is obsolete. If you need an SMTP relay for outgoing mail (and you do not have a local postfix to take care of that), you should set gromox.cfg:outgoing_smtp_url.

Gromox 2.27

07 Apr 06:52
gromox-2.27

Choose a tag to compare

Fixes:

  • email_lib: avoid splitting UTF-8 code units across lines
  • imap: avoid emitting NIL for body-fld-lines

Enhancements:

  • php_mapi: expose default+anonymous ACEs to PHP programs
  • zcore: expose new PR_EC_ENABLED_FEATURES_L property
  • ews: implement updating folder permissions
  • eml2mt: emit a hint if an Outlook .msg file is erroneously passed to eml2mt

Changes:

  • exch: start ICS Change Numbers at 0 rather than 2^47 (new mailboxes only)
  • PR_MAILBOX_OWNER_ENTRYID is generated for public stores
  • exmdb database layer remodeled to support concurrent reads per mailbox in the future

Gromox 2.26

11 Mar 17:17

Choose a tag to compare

Fixes:

  • exmdb: Fix restriction mismatching on PR_PARENT_SVREID & PR_PARENT_ENTRYID, which had caused reminders to go off even after appointments were moved to the wastebasket.
  • exmdb_local: rectify wrong/empty From: lines in bounce messages
  • ews: fix segfault when loading public folder item
  • zcore: repaired thumbnail retrieval, which used the wrong directory

Enhancements:

  • mbop: add subcommands for manipulating websettings_persistent

Changes:

  • zcore: store websettings_persistent directly in the store rather than the zcore shadow store object (automatic migration is in place)
  • kdb2mt: avoid importing PR_EC_WEBAPP_PERSISTENT_SETTINGS_JSON

Gromox 2.25

29 Feb 14:46

Choose a tag to compare

Fixes:

  • mkpublic: newly created public stores lacked a replguidmap table
  • exmdb: repair initialization of PR_ATTACH_NUM when instances are opened
  • oxcmail: strip leftover right angled bracket from Content-ID on oxcmail_import
  • http: do not terminate if an illegal outgoing_smtp_url is used
  • http: avoid garbage From line in non-delivery reports generated by OP_BOUNCE rules

Changes:

  • oxcmail: export no longer generates a MIME epilogue, which should workaround Outlook's broken S/MIME validator which fails to include epilogues in the signature verification.
  • http: recognition for the http_old_php_hanlder directive has been removed
  • zcore: g-web settings are now stored in a named property rather than the shadow store object (automatic migration is in place)

Enhancements:

  • mt2exm: the -B option can be used with all folder names
  • mbop: new commands get-photo, set-photo, get-websettings, set-websettings

Gromox 2.24

10 Feb 11:53

Choose a tag to compare

Fixes:

  • email_lib: the last byte of a MIME part was erroneously deleted
  • emsmdb: repair garbage memory read when creating a stream on a PT_STRING8 property
  • ews: repair a potential lack of results with the ResolveNames operation when searching by email address

Enhancements:

  • ews: add t:AlternateIdType attribute

Gromox 2.23

05 Feb 21:39

Choose a tag to compare

Fixes:

  • snapshot: on btrfs, fallback to rm when encountering reflink-based snapshots
  • oxcmail: make PR_REPLY_RECIPIENT_NAMES be consistent with _ENTRYIDS
  • oxcmail: deal with semicolons in Reply-To
  • oxcmail: do not ignore IDN addresses when reading headers
  • oxcmail: resolve a case with trashed body bytes when a line began with dot

Enhancements:

  • exmdb: add config directive exmdb_contention_reject_time for configuring contention timeout
  • exmdb: have DB_ITEM instances track which function holds them, and report this upon reaching contention timeouts
  • exmdb: make dbg_synth_content config directive work with the read_message RPC
  • new command: gromox-exm2mt

Gromox 2.21

08 Jan 18:15

Choose a tag to compare

Fixes:

  • exch: fix nonsensical compare operation in function check_message_owner
  • lib: guard against an integer overflow when inserting last element in range_set
  • imap: do not flag zero-length usernames/passwords as a syntax error
  • exmdb: avoid showing E-5310/5311 for absent files

Enhancements:

  • Support for outgoing message submission via postdrop. Use the new config directive outgoing_smtp_url=sendmail://localhost in gromox.cfg.
  • gromox-snapshot: Support snapshots on XFS
  • zcore: log REMOTE_ADDR on authentication failure for fail2ban
  • ews: improve contact item and task item support
  • php-mapi: add mapi_getuserfreebusyical function
  • exmdb: add ICS request dumper (config directive gromox.cfg:exmdb_ics_log_file)

Behavioral changes:

  • kdb2mt: remove option aliases that have been deprecated for a year

Gromox 2.20

15 Dec 11:28

Choose a tag to compare

Fixes:

  • oxdisco: allow autodiscover for room/equipment stores
  • oxcical: allday events are now emitted (pursuant to the oxcical_allday_ymd config directive) as "floating time" per the OXCICAL spec recommendations
  • oxcical: resolve integer underflow that botched weekorder computation in weekly-recurring events
  • oxcical: resolve out-of-bounds access during generation of iCal RDATE lines
  • ews: avoid a heap-use-after-free during freebusy retrieval
  • zcore: zs_getuserfreebusy had failed to resolve usernames and display freebusy status in the scheduling matrix view
  • ldap_adaptor: resolve data race with double-free when per-organization LDAP settings were used

Enhancements:

  • ews: improve calendar item coverage for mac calendar app
  • all daemons: add various config directives to set file descriptor table limits
  • zcore: add new error code and string for when the MAPI object handles have been exhausted by a user (as will normally happen when importing a multi-vCard/multi-iCal file with 400+ contacts/events, due to config directive zcore_max_obh_per_session)

Behavioral changes:

  • http: the file descriptor table limit is by default set to the environment hard limit (instead of 2256 fds, one will have 512K in Linux-systemd environments now)
  • php_mapi: do not convert freebusy_event_details fields which are not available