From 24896b110eef7d2bd247acb53e20ccf7cfbe1abd Mon Sep 17 00:00:00 2001 From: Stephan Bosch Date: Fri, 19 Oct 2018 16:42:41 +0200 Subject: [PATCH] submission,submission-login: Omit listing VRFY capability if the backend provides no explicit support. --- src/submission-login/client-authenticate.c | 3 ++- src/submission/submission-client.c | 3 +-- src/submission/submission-commands.c | 3 ++- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/submission-login/client-authenticate.c b/src/submission-login/client-authenticate.c index 335ed8c920..8b5422f833 100644 --- a/src/submission-login/client-authenticate.c +++ b/src/submission-login/client-authenticate.c @@ -70,7 +70,8 @@ static void cmd_helo_reply(struct submission_client *subm_client, if (client_is_tls_enabled(client) && !client->tls) smtp_server_reply_ehlo_add(reply, "STARTTLS"); smtp_server_reply_ehlo_add(reply, "PIPELINING"); - smtp_server_reply_ehlo_add(reply, "VRFY"); + if ((backend_caps & SMTP_CAPABILITY_VRFY) != 0) + smtp_server_reply_ehlo_add(reply, "VRFY"); smtp_server_reply_ehlo_add_xclient(reply); } smtp_server_reply_submit(reply); diff --git a/src/submission/submission-client.c b/src/submission/submission-client.c index e0cd34dcfb..46160dfe08 100644 --- a/src/submission/submission-client.c +++ b/src/submission/submission-client.c @@ -106,8 +106,7 @@ void client_apply_backend_capabilities(struct client *client) /* propagate capabilities */ caps |= SMTP_CAPABILITY_AUTH | SMTP_CAPABILITY_PIPELINING | SMTP_CAPABILITY_SIZE | SMTP_CAPABILITY_ENHANCEDSTATUSCODES | - SMTP_CAPABILITY_CHUNKING | SMTP_CAPABILITY_BURL | - SMTP_CAPABILITY_VRFY; + SMTP_CAPABILITY_CHUNKING | SMTP_CAPABILITY_BURL; caps &= SUBMISSION_SUPPORTED_SMTP_CAPABILITIES; smtp_server_connection_set_capabilities(client->conn, caps); } diff --git a/src/submission/submission-commands.c b/src/submission/submission-commands.c index 2f94a185fc..587e751322 100644 --- a/src/submission/submission-commands.c +++ b/src/submission/submission-commands.c @@ -89,7 +89,8 @@ void submission_helo_reply_submit(struct smtp_server_cmd_ctx *cmd, } else { smtp_server_reply_ehlo_add(reply, "SIZE"); } - smtp_server_reply_ehlo_add(reply, "VRFY"); + if ((backend_caps & SMTP_CAPABILITY_VRFY) != 0) + smtp_server_reply_ehlo_add(reply, "VRFY"); submission_helo_reply_add_extra(client, reply); } -- 2.47.3