diff options
Diffstat (limited to 'extra/gnome-online-accounts/smtp-auth-plain.patch')
-rw-r--r-- | extra/gnome-online-accounts/smtp-auth-plain.patch | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/extra/gnome-online-accounts/smtp-auth-plain.patch b/extra/gnome-online-accounts/smtp-auth-plain.patch deleted file mode 100644 index c6782d0f6..000000000 --- a/extra/gnome-online-accounts/smtp-auth-plain.patch +++ /dev/null @@ -1,88 +0,0 @@ -From 2210bf547dc35adacbc95c0dcf4abe75a73a8368 Mon Sep 17 00:00:00 2001 -From: Debarshi Ray <debarshir@gnome.org> -Date: Tue, 18 Jun 2013 15:27:55 +0000 -Subject: smtp-auth-plain: Handle multiline SMTP greetings - -Fixes: https://bugzilla.gnome.org/702263 ---- -diff --git a/src/goabackend/goasmtpauthplain.c b/src/goabackend/goasmtpauthplain.c -index bb783bd..77324cf 100644 ---- a/src/goabackend/goasmtpauthplain.c -+++ b/src/goabackend/goasmtpauthplain.c -@@ -167,6 +167,40 @@ smtp_auth_plain_check_454 (const gchar *response, GError **error) - - /* ---------------------------------------------------------------------------------------------------- */ - -+static gboolean -+smtp_auth_plain_check_greeting (GDataInputStream *input, GCancellable *cancellable, GError **error) -+{ -+ gboolean ret; -+ gchar *response; -+ -+ response = NULL; -+ ret = FALSE; -+ -+ greeting_again: -+ response = g_data_input_stream_read_line (input, NULL, cancellable, error); -+ if (response == NULL) -+ goto out; -+ g_debug ("< %s", response); -+ if (smtp_auth_plain_check_421 (response, error)) -+ goto out; -+ if (smtp_auth_plain_check_not_220 (response, error)) -+ goto out; -+ -+ if (response[3] == '-') -+ { -+ g_clear_pointer (&response, g_free); -+ goto greeting_again; -+ } -+ -+ ret = TRUE; -+ -+ out: -+ g_free (response); -+ return ret; -+} -+ -+/* ---------------------------------------------------------------------------------------------------- */ -+ - static gchar * - smtp_auth_plain_get_domain (GoaSmtpAuthPlain *auth, - GError **error) -@@ -563,15 +597,8 @@ goa_smtp_auth_plain_run_sync (GoaMailAuth *_auth, - - if (!auth->greeting_absent) - { -- response = g_data_input_stream_read_line (input, NULL, cancellable, error); -- if (response == NULL) -- goto out; -- g_debug ("< %s", response); -- if (smtp_auth_plain_check_421 (response, error)) -+ if (!smtp_auth_plain_check_greeting (input, cancellable, error)) - goto out; -- if (smtp_auth_plain_check_not_220 (response, error)) -- goto out; -- g_clear_pointer (&response, g_free); - } - - /* Send EHLO */ -@@ -685,15 +712,8 @@ goa_smtp_auth_plain_starttls_sync (GoaMailAuth *_auth, - - /* Check the greeting */ - -- response = g_data_input_stream_read_line (input, NULL, cancellable, error); -- if (response == NULL) -- goto out; -- g_debug ("< %s", response); -- if (smtp_auth_plain_check_421 (response, error)) -+ if (!smtp_auth_plain_check_greeting (input, cancellable, error)) - goto out; -- if (smtp_auth_plain_check_not_220 (response, error)) -- goto out; -- g_clear_pointer (&response, g_free); - - /* Send EHLO */ - --- -cgit v0.9.2 |