From d3a7d023b47d2a137f01109e7b38702dca3f11d3 Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Sun, 9 Aug 2009 22:00:30 -0400 Subject: [PATCH] *-login: Moved ssl=required checking to login-common. --HG-- branch : HEAD --- src/imap-login/client-authenticate.c | 12 ------------ src/login-common/client-common-auth.c | 12 ++++++++++++ src/pop3-login/client-authenticate.c | 11 ----------- 3 files changed, 12 insertions(+), 23 deletions(-) diff --git a/src/imap-login/client-authenticate.c b/src/imap-login/client-authenticate.c index 0285bc415b..e2492d0727 100644 --- a/src/imap-login/client-authenticate.c +++ b/src/imap-login/client-authenticate.c @@ -125,7 +125,6 @@ imap_client_auth_begin(struct imap_client *imap_client, const char *mech_name, int cmd_authenticate(struct imap_client *imap_client, const struct imap_arg *args) { - struct client *client = &imap_client->common; const char *mech_name, *init_resp = NULL; /* we want only one argument: authentication mechanism name */ @@ -139,17 +138,6 @@ int cmd_authenticate(struct imap_client *imap_client, init_resp = IMAP_ARG_STR(&args[1]); } - if (!client->secured && strcmp(client->set->ssl, "required") == 0) { - if (client->set->verbose_auth) { - client_log(client, "Login failed: " - "SSL required for authentication"); - } - client->auth_attempts++; - client_send_line(client, CLIENT_CMD_REPLY_AUTH_FAIL_NOSSL, - "Authentication not allowed until SSL/TLS is enabled."); - return 1; - } - mech_name = IMAP_ARG_STR(&args[0]); if (*mech_name == '\0') return -1; diff --git a/src/login-common/client-common-auth.c b/src/login-common/client-common-auth.c index 6277c2ec6d..557e6b3ea5 100644 --- a/src/login-common/client-common-auth.c +++ b/src/login-common/client-common-auth.c @@ -426,6 +426,18 @@ sasl_callback(struct client *client, enum sasl_server_reply sasl_reply, int client_auth_begin(struct client *client, const char *mech_name, const char *init_resp) { + if (!client->secured && strcmp(client->set->ssl, "required") == 0) { + if (client->set->verbose_auth) { + client_log(client, "Login failed: " + "SSL required for authentication"); + } + client->auth_attempts++; + client_send_line(client, CLIENT_CMD_REPLY_AUTH_FAIL_NOSSL, + "Authentication not allowed until SSL/TLS is enabled."); + return 1; + } + + client_ref(client); client->auth_initializing = TRUE; sasl_server_auth_begin(client, login_protocol, mech_name, diff --git a/src/pop3-login/client-authenticate.c b/src/pop3-login/client-authenticate.c index 2f08dec580..e10c8a799b 100644 --- a/src/pop3-login/client-authenticate.c +++ b/src/pop3-login/client-authenticate.c @@ -77,17 +77,6 @@ bool cmd_auth(struct pop3_client *pop3_client, const char *args) const struct auth_mech_desc *mech; const char *mech_name, *p; - if (!client->secured && strcmp(client->set->ssl, "required") == 0) { - if (client->set->verbose_auth) { - client_log(client, "Login failed: " - "SSL required for authentication"); - } - client->auth_attempts++; - client_send_line(client, CLIENT_CMD_REPLY_AUTH_FAIL_NOSSL, - "Authentication not allowed until SSL/TLS is enabled."); - return TRUE; - } - if (*args == '\0') { /* Old-style SASL discovery, used by MS Outlook */ unsigned int i, count; -- 2.47.3