From 20d043a8283164ffbc74d737ff858fc99c2711c4 Mon Sep 17 00:00:00 2001 From: Matthias Andree Date: Sat, 3 Feb 2007 00:13:12 +0000 Subject: Fix 6.3.6 regression: repoll upon socket error after STLS failure. Berlios Bug #10133, reported by Andrej Kacian. svn path=/branches/BRANCH_6-3/; revision=5022 --- pop3.c | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) (limited to 'pop3.c') diff --git a/pop3.c b/pop3.c index 92fe06d1..556053ee 100644 --- a/pop3.c +++ b/pop3.c @@ -635,17 +635,6 @@ static int pop3_getauth(int sock, struct query *ctl, char *greeting) } memset(shroud, 0x55, sizeof(shroud)); shroud[0] = '\0'; -#ifdef SSL_ENABLE - /* this is for servers which claim to support TLS, but actually - * don't! */ - if (connection_may_have_tls_errors && ok == PS_SOCKET) - { - xfree(ctl->sslproto); - ctl->sslproto = xstrdup(""); - /* repoll immediately without TLS */ - ok = PS_REPOLL; - } -#endif break; case P_APOP: @@ -694,6 +683,18 @@ static int pop3_getauth(int sock, struct query *ctl, char *greeting) ok = PS_ERROR; } +#ifdef SSL_ENABLE + /* this is for servers which claim to support TLS, but actually + * don't! */ + if (connection_may_have_tls_errors && ok == PS_SOCKET) + { + xfree(ctl->sslproto); + ctl->sslproto = xstrdup(""); + /* repoll immediately without TLS */ + ok = PS_REPOLL; + } +#endif + if (ok != 0) { /* maybe we detected a lock-busy condition? */ -- cgit v1.2.3