aboutsummaryrefslogtreecommitdiffstats
path: root/pop3.c
diff options
context:
space:
mode:
authorMatthias Andree <matthias.andree@gmx.de>2007-02-03 00:13:12 +0000
committerMatthias Andree <matthias.andree@gmx.de>2007-02-03 00:13:12 +0000
commit20d043a8283164ffbc74d737ff858fc99c2711c4 (patch)
tree80940b1af01c88b9f4880c46260a3b90621570ed /pop3.c
parent071e48042c68f2dd41ff7332fee1d9307bb9a0a6 (diff)
downloadfetchmail-20d043a8283164ffbc74d737ff858fc99c2711c4.tar.gz
fetchmail-20d043a8283164ffbc74d737ff858fc99c2711c4.tar.bz2
fetchmail-20d043a8283164ffbc74d737ff858fc99c2711c4.zip
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
Diffstat (limited to 'pop3.c')
-rw-r--r--pop3.c23
1 files changed, 12 insertions, 11 deletions
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? */