diff options
author | Matthias Andree <matthias.andree@gmx.de> | 2007-02-03 00:13:12 +0000 |
---|---|---|
committer | Matthias Andree <matthias.andree@gmx.de> | 2007-02-03 00:13:12 +0000 |
commit | 20d043a8283164ffbc74d737ff858fc99c2711c4 (patch) | |
tree | 80940b1af01c88b9f4880c46260a3b90621570ed /pop3.c | |
parent | 071e48042c68f2dd41ff7332fee1d9307bb9a0a6 (diff) | |
download | fetchmail-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.c | 23 |
1 files changed, 12 insertions, 11 deletions
@@ -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? */ |