diff options
author | Matthias Andree <matthias.andree@gmx.de> | 2009-05-25 15:56:52 +0000 |
---|---|---|
committer | Matthias Andree <matthias.andree@gmx.de> | 2009-05-25 15:56:52 +0000 |
commit | d56ecd638f753e4430a9f7500ceb4867997af266 (patch) | |
tree | dbf1a0df2eb60efbd13185c9c89a481a308a4313 /sink.c | |
parent | bd2e568da48acbae7e0b43c48226541220b85340 (diff) | |
download | fetchmail-d56ecd638f753e4430a9f7500ceb4867997af266.tar.gz fetchmail-d56ecd638f753e4430a9f7500ceb4867997af266.tar.bz2 fetchmail-d56ecd638f753e4430a9f7500ceb4867997af266.zip |
Always treat 530 SMTP codes as temporary.
These are usually configuration errors (missing TLS/SSL). Patch
partially taken from Petr Cerny, Novell's Bugzilla 246829.
svn path=/branches/BRANCH_6-3/; revision=5339
Diffstat (limited to 'sink.c')
-rw-r--r-- | sink.c | 12 |
1 files changed, 12 insertions, 0 deletions
@@ -539,6 +539,18 @@ static int handle_smtp_report(struct query *ctl, struct msgblk *msg) free(responses[0]); return(PS_REFUSED); + case 530: /* must issue STARTTLS error */ + /* + * Some SMTP servers insist on encrypted communication + * Let's set PS_TRANSIENT, otherwise all messages to be sent + * over such server would be blackholed - see RFC 3207. + */ + if (outlevel > O_SILENT) + report_complete(stdout, + GT_("SMTP server requires STARTTLS, keeping message.\n")); + free(responses[0]); + return(PS_TRANSIENT); + default: /* bounce non-transient errors back to the sender */ if (smtperr >= 500 && smtperr <= 599) |