diff options
Diffstat (limited to 'camel/providers')
-rw-r--r-- | camel/providers/imap/camel-imap-command.c | 4 | ||||
-rw-r--r-- | camel/providers/imap/camel-imap-store.c | 12 |
2 files changed, 6 insertions, 10 deletions
diff --git a/camel/providers/imap/camel-imap-command.c b/camel/providers/imap/camel-imap-command.c index 54df2fe5a3..ce6f60554d 100644 --- a/camel/providers/imap/camel-imap-command.c +++ b/camel/providers/imap/camel-imap-command.c @@ -218,7 +218,7 @@ imap_read_response (CamelImapStore *store, CamelException *ex) response->status = respbuf; /* Check for OK or continuation response. */ - if (!strncmp (respbuf, "+ ", 2)) + if (*respbuf == '+') return response; retcode = imap_next_word (respbuf); if (!strncmp (retcode, "OK", 2)) @@ -514,7 +514,7 @@ camel_imap_response_extract_continuation (CamelImapStore *store, { char *status; - if (response->status && !strncmp (response->status, "+ ", 2)) { + if (response->status && *response->status == '+') { status = response->status; response->status = NULL; CAMEL_IMAP_STORE_LOCK (store, command_lock); 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) |