]> dgit.raspbian.org Git - dovecot.git/commitdiff
[PATCH 5/6] imap: Add imap_compress_on_proxy hidden setting
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Wed, 4 Jun 2025 14:05:36 +0000 (17:05 +0300)
committerNoah Meyerhans <noahm@debian.org>
Wed, 16 Sep 2026 19:06:35 +0000 (15:06 -0400)
Keep it disabled by default for now. Once we're sure COMPRESS on proxy
works properly we'll enable it again.

Gbp-Pq: Name 0005-imap-Add-imap_compress_on_proxy-hidden-setting.patch

src/imap/cmd-compress.c
src/imap/imap-settings.c
src/imap/imap-settings.h

index 18aa988892b07834df417ae6d30d504562f2c401..0367cc6f64fec98f832e71f67910f53cd2a9d1e5 100644 (file)
@@ -87,7 +87,8 @@ bool cmd_compress(struct client_command_context *cmd)
                return TRUE;
        }
 
-       if (client->multiplex_output != NULL) {
+       if (client->multiplex_output != NULL &&
+           client->set->imap_compress_on_proxy) {
                /* Let imap-login process handle the COMPRESS. It's the one
                   that will send the tagged reply to the client. */
                client->compress_handler = handler;
index aa0cd747cbba12149ca5716848fcda74898331b0..3e2561ccd2636551111e001f5315e7fb52debd4d 100644 (file)
@@ -81,6 +81,7 @@ static const struct setting_define imap_setting_defines[] = {
        DEF(ENUM, imap_fetch_failure),
        DEF(BOOL, imap_metadata),
        DEF(BOOL, imap_literal_minus),
+       DEF(BOOL_HIDDEN, imap_compress_on_proxy),
        DEF(BOOL, mail_utf8_extensions),
 #ifdef BUILD_IMAP_HIBERNATE
        DEF(TIME, imap_hibernate_timeout),
@@ -115,6 +116,7 @@ static const struct imap_settings imap_default_settings = {
        .imap_fetch_failure = "disconnect-immediately:disconnect-after:no-after",
        .imap_metadata = FALSE,
        .imap_literal_minus = FALSE,
+       .imap_compress_on_proxy = FALSE,
        .mail_utf8_extensions = FALSE,
 #ifdef DOVECOT_PRO_EDITION
        .imap_hibernate_timeout = 30,
index 202ea45a30936488617bf948158666aa45ef1ccd..347d85cec7dd37617102043567278545f6951413 100644 (file)
@@ -34,6 +34,7 @@ struct imap_settings {
        const char *imap_fetch_failure;
        bool imap_metadata;
        bool imap_literal_minus;
+       bool imap_compress_on_proxy;
        bool mail_utf8_extensions;
        unsigned int imap_hibernate_timeout;
        ARRAY_TYPE(const_string) imap_id_send;