summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@iki.fi>2006-08-12 14:37:40 +0300
committerLars Wirzenius <liw@iki.fi>2006-08-12 14:37:40 +0300
commitf1b683e709890356af023e1d80d805aab7bb4d95 (patch)
tree2a173f2cb236a0005bbbfbe44bd3a9cf334b137a
parent747343e09d2930ebc783f9cc657a87877e823fb8 (diff)
downloadeoc-f1b683e709890356af023e1d80d805aab7bb4d95.tar.gz
Report problems sending mail. Thanks to Antti-Juhani Kaijanaho
-rw-r--r--eoc.py26
1 files changed, 19 insertions, 7 deletions
diff --git a/eoc.py b/eoc.py
index 52621bc..124cac2 100644
--- a/eoc.py
+++ b/eoc.py
@@ -395,13 +395,21 @@ class MailingListManager:
"\n ".join(text[:text.find("\n\n")].split("\n"))))
if recipients:
if self.smtp_server:
- smtp = smtplib.SMTP(self.smtp_server)
- smtp.sendmail(envelope_sender, recipients, text)
- smtp.quit()
+ try:
+ smtp = smtplib.SMTP(self.smtp_server)
+ smtp.sendmail(envelope_sender, recipients, text)
+ smtp.quit()
+ except:
+ error("Error sending SMTP mail, mail probably not sent")
+ sys.exit(1)
elif self.qmqp_server:
- q = qmqp.QMQP(self.qmqp_server)
- q.sendmail(envelope_sender, recipients, text)
- q.quit()
+ try:
+ q = qmqp.QMQP(self.qmqp_server)
+ q.sendmail(envelope_sender, recipients, text)
+ q.quit()
+ except:
+ error("Error sending QMQP mail, mail probably not sent")
+ sys.exit(1)
else:
recipients = string.join(recipients, " ")
f = os.popen("%s -oi -f '%s' %s" %
@@ -410,7 +418,11 @@ class MailingListManager:
recipients),
"w")
f.write(text)
- f.close()
+ status = f.close()
+ if status != 0:
+ error("%s returned %d, mail sending probably failed" %
+ (self.sendmail, status))
+ sys.exit((status >> 8) & 0xff)
else:
debug("send_mail: no recipients, not sending")