]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
submission,submission-login: Implicitly enable CHUNKING when submission_backend_capab...
authorStephan Bosch <stephan.bosch@dovecot.fi>
Mon, 29 Oct 2018 16:27:17 +0000 (17:27 +0100)
committerStephan Bosch <stephan.bosch@dovecot.fi>
Mon, 29 Oct 2018 16:33:09 +0000 (17:33 +0100)
BINARYMIME requires CHUNKING support and we should not expect administrators to
always be aware of that fact.

src/submission-login/client.c
src/submission/submission-client.c

index 3ab4f6931dafff2b598c1c7d120879f4e173a405..11e8429307ad5aee101ceb27da83be3e7a2c56c7 100644 (file)
@@ -50,6 +50,13 @@ client_parse_backend_capabilities(struct submission_client *subm_client )
 
                subm_client->backend_capabilities |= cap;
        }
+
+       /* Make sure CHUNKING support is always enabled when BINARYMIME is
+          enabled by explicit configuration. */
+       if (HAS_ALL_BITS(subm_client->backend_capabilities,
+                        SMTP_CAPABILITY_BINARYMIME)) {
+               subm_client->backend_capabilities |= SMTP_CAPABILITY_CHUNKING;
+       }
 }
 
 static int submission_login_start_tls(void *conn_ctx,
index 46160dfe08b1b373394fb6190260f127e94d87d2..1625fd37b9966ee6eb3ba2365728747b092fe284 100644 (file)
@@ -96,6 +96,13 @@ static void client_parse_backend_capabilities(struct client *client)
                client->backend_capabilities |= cap;
        }
 
+       /* Make sure CHUNKING support is always enabled when BINARYMIME is
+          enabled by explicit configuration. */
+       if (HAS_ALL_BITS(client->backend_capabilities,
+                        SMTP_CAPABILITY_BINARYMIME)) {
+               client->backend_capabilities |= SMTP_CAPABILITY_CHUNKING;
+       }
+
        client->backend_capabilities_configured = TRUE;
 }