Skip to content

Releases: grommunio/gromox

Gromox 2.37

20 Nov 11:04
gromox-2.37
Compare
Choose a tag to compare

Fixes:

  • exmdb: fix garbage being returned to clients when reading v1z files from cid/
  • exmdb: stop an SQL error from appearing when gromox-mbop recalc-sizes is used on an empty store
  • oxcical: evaluate all, instead of just two, STANDARD/DAYLIGHT tzprops for determining the relevant DST timezone
  • ews: fix time elements, e.g. in OOF settings, always having value 1970-01-01
  • email_lib: on vCard ingestion, treat ORG lines as the structured field that they are specified as, rather than as one text value
  • exmdb_local: autovivify new named properties on delivery, fixing log message D-1220: cu_set_properties called with PR_NULL when ingesting a vCard message into an empty store via SMTP/LMTP
  • dbop_sqlite: avoid use of the UNIXEPOCH function since it is not available in AlmaLinux 9
  • lib: add missing chown call on newly-created logfiles to account for subsequent privilege separation

Enhancements:

  • dscli: evaluate not just one AutoDiscover URL but multiple as the specifation asks for
  • mbop: stop printing the help text multiple times when the "for-all-users" subcommand was used but options were rejected
  • gromox-mbsize: new debug utility for mailbox size analysis
  • gromox-tnef2mt: add support for importing standalone TNEF files

Changes:

  • stderr being a tty previously overruled daemons' log_file directive such as http.cfg:http_log_file=/somewhere.log. This has now changed and http_log_file has precedence over any tty-ness of stderr.

Gromox 2.36

06 Nov 16:02
gromox-2.36
Compare
Choose a tag to compare

Fixes:

  • ews: fix an ABA locking problem when EWS unsubscribe actions were processed
  • genimport: fix a data juggling issue that led to mt2exm printing proptag … from input stream has no named property info
  • mbck: do not attempt to repair allocated_eids if repair mode was not selected, fixing mbck printing sqlite3_prep(INSERT INTO allocated_eids) … inside a readonly TXN.
  • exmdb: fix an issue where creating new messages-embedded-in-messages could lead to sqlite3_exec(… INSERT INTO messages … VALUES (65536, …): UNIQUE constraint failed: messages.message_id (19), for msgids very close to the end of the block
  • mkprivate et al: fix an issue where force-overwriting databases would print database is locked
  • oxcmail: during conversion from RFC5322 to MAPI form, avoid generating a zero-length attachment for a zero-length mail

Enhancements:

  • mbop: new commands "ping", "for-all-users", "echo-username"
  • exmdb: faster process shutdown through parallelized closing of sqlite files
  • exmdb: better location diagnostics for RO-RO transactions, for RW-in-RO, and ROLLBACK issues

Changes:

  • exmdb: the default value for exmdb_provider.cfg:cache_interval (time until inactive sqlite files are closed) was reduced from 2h to 15min to curb system resource use
  • exmdb: the default value for exmdb_provider.cfg:populating_threads_num (asynchronous search folder population threads) from 50 to 4 to curb system resource use
  • exmdb: deactivate implicit integrity check when upgrading a mailbox's database schema, it takes too much time
  • (Integrity checks can still be done offline with mkprivate -U --integ)

Gromox 2.35

15 Oct 12:12
gromox-2.35
Compare
Choose a tag to compare

Fixes:

  • alias_resolve: resolve nullptr deref crash
  • ews: resolve nullptr deref crash
  • mapi_lib: fix out-of-bounds access in PROBLEM_ARRAY::transform
  • mapi_lib: rop_util_get_gc_value used the wrong mask, which caused "Change commit failed because the object was changed separately"

Changes:

  • exmdb: let PR_ACCESS include permissions from all group memberships

Gromox 2.34

08 Oct 17:55
gromox-2.34
Compare
Choose a tag to compare

Fixes:

  • php_mapi: cure crash occurring with mapi_getidsfromnames
  • midb: resolve "inside a readonly TXN" warnings during message deletion
  • exmdb: emit notifications only after SQL transactions are complete
  • imap: resolve unstable EXPUNGE observability

Enhancements:

  • exm2eml: do output named property map when -p is used
  • exm2eml: show named property mnemonics when -p is used twice
  • php_mapi: allow calling namedprop resolution functions with not just store objects, but also folder/message/attachment objects

Gromox 2.33

01 Oct 19:32
gromox-2.33
Compare
Choose a tag to compare

Fixes:

  • oxdisco: serve TB Autoconfig XML without requiring authentication (clients do not expect it to be protected)
  • oxcical: revert commit which evaluates different MAPI timezone properties to generate DTSTART/DTEND's TZID value

Enhancements:

  • oxcmail: Implement MIME fragment joining for the construction of the contents of PR_HTML.
  • dscli: add --ac option to test Mail Autoconfig (what Thunderbird uses in leu of AutoDiscover)
  • http: credential caching for HTTP Basic (config directive http_basic_auth_cred_caching, defaulting to 60s)

Changes:

  • The user_filter(4gx) plugin was replaced by a new implementation. user_filter.cfg is no longer read. New config directives (with new names) are in gromox.cfg.

Gromox 2.32

04 Sep 15:47
gromox-2.32
Compare
Choose a tag to compare

Fixes:

  • mysql_adaptor: re-speedup queries that came to ran without an index
  • mbop: make the "clear-profile" operation do clear g-web settings again
  • zcore: workaround potential hang during shutdown

Enhancements:

  • emsmdb, zcore: allow "Empty Folder" operations in public stores
  • exmdb: increased verbosity during shutdown phase so it does not appear like a hang

Gromox 2.31

14 Aug 09:24
gromox-2.31
Compare
Choose a tag to compare

Fixes:

  • freebusy: get_freebusy erroneously underreported occurrences for yearly occurrences
  • freebusy: the get_freebusy routine erroneously landed in an infinite loop if a yearly-recurring February 29 appointment was originally created in a year not divisible by 12.

Enhancements:

  • oxcmail: take /etc/mime.types under consideration when adding extensions to attachments

Changes:

  • oxcmail: priorities for MIME parts have been rectified for multipart/alternative and non-alternative containers; the conversion routine is no longer making picks across multiple container siblings.

Gromox 2.30

21 Jun 18:52
gromox-2.30
Compare
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
Compare
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
Compare
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.