aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers/imap/camel-imap-store.c
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2001-06-25 23:40:30 +0800
committerDan Winship <danw@src.gnome.org>2001-06-25 23:40:30 +0800
commit834e3b7f7e5e7632ed9c0117d6cf633ef9c34213 (patch)
tree1cc95ca496e176912fbc3ad29964f20cf19fc1b7 /camel/providers/imap/camel-imap-store.c
parent3818583af9e5bd55136e56717fc50ef1822a76c6 (diff)
downloadgsoc2013-evolution-834e3b7f7e5e7632ed9c0117d6cf633ef9c34213.tar
gsoc2013-evolution-834e3b7f7e5e7632ed9c0117d6cf633ef9c34213.tar.gz
gsoc2013-evolution-834e3b7f7e5e7632ed9c0117d6cf633ef9c34213.tar.bz2
gsoc2013-evolution-834e3b7f7e5e7632ed9c0117d6cf633ef9c34213.tar.lz
gsoc2013-evolution-834e3b7f7e5e7632ed9c0117d6cf633ef9c34213.tar.xz
gsoc2013-evolution-834e3b7f7e5e7632ed9c0117d6cf633ef9c34213.tar.zst
gsoc2013-evolution-834e3b7f7e5e7632ed9c0117d6cf633ef9c34213.zip
Fix this: IMAP doesn't allow an extra argument to AUTHENTICATE to avoid a
* providers/imap/camel-imap-store.c (try_auth): Fix this: IMAP doesn't allow an extra argument to AUTHENTICATE to avoid a useless round trip like some other SASL bindings do. * providers/imap/camel-imap-command.c (imap_read_response): Deal with IMAP servers that (incorrectly) return "+\r\n" rather than "+ \r\n" for an empty continuation response. (camel_imap_response_extract_continuation): Likewise. svn path=/trunk/; revision=10480
Diffstat (limited to 'camel/providers/imap/camel-imap-store.c')
-rw-r--r--camel/providers/imap/camel-imap-store.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/camel/providers/imap/camel-imap-store.c b/camel/providers/imap/camel-imap-store.c
index d16a7e4a4c..eecc7b0e35 100644
--- a/camel/providers/imap/camel-imap-store.c
+++ b/camel/providers/imap/camel-imap-store.c
@@ -391,16 +391,12 @@ try_auth (CamelImapStore *store, const char *mech, CamelException *ex)
CAMEL_IMAP_STORE_ASSERT_LOCKED (store, command_lock);
- sasl = camel_sasl_new ("imap", mech, CAMEL_SERVICE (store));
-
- sasl_resp = camel_sasl_challenge_base64 (sasl, NULL, ex);
-
- response = camel_imap_command (store, NULL, ex, "AUTHENTICATE %s%s%s",
- mech, sasl_resp ? " " : "",
- sasl_resp ? sasl_resp : "");
+ response = camel_imap_command (store, NULL, ex,
+ "AUTHENTICATE %s", mech);
if (!response)
- goto lose;
+ return FALSE;
+ sasl = camel_sasl_new ("imap", mech, CAMEL_SERVICE (store));
while (!camel_sasl_authenticated (sasl)) {
resp = camel_imap_response_extract_continuation (store, response, ex);
if (!resp)