From b41b648ce36ab08e4a131fd47532516912949984 Mon Sep 17 00:00:00 2001 From: Jon Miles Date: Wed, 10 Sep 2003 13:20:49 +0000 Subject: [PATCH] In pop_auth.c:pop_auth_sasl(), if the main loop received anything back from the server that didnt begin with '+ ', it was bailing out and skipping the checks to see if there was a +OK response. --- pop_auth.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pop_auth.c b/pop_auth.c index 20cc7f09..9353eef5 100644 --- a/pop_auth.c +++ b/pop_auth.c @@ -106,13 +106,12 @@ static pop_auth_res_t pop_auth_sasl (POP_DATA *pop_data, const char *method) if (rc != SASL_CONTINUE) break; - if (mutt_strncmp (inbuf, "+ ", 2)) - goto bail; - #ifdef USE_SASL2 - if (sasl_decode64 (inbuf, strlen (inbuf), buf, LONG_STRING-1, &len) != SASL_OK) + if (!mutt_strncmp (inbuf, "+ ", 2) + && sasl_decode64 (inbuf, strlen (inbuf), buf, LONG_STRING-1, &len) != SASL_OK) #else - if (sasl_decode64 (inbuf, strlen (inbuf), buf, &len) != SASL_OK) + if (!mutt_strncmp (inbuf, "+ ", 2) + && sasl_decode64 (inbuf, strlen (inbuf), buf, &len) != SASL_OK) #endif { dprint (1, (debugfile, "pop_auth_sasl: error base64-decoding server response.\n")); -- 2.40.0