summaryrefslogtreecommitdiff
path: root/Mailman/Handlers/ToUsenet.py
diff options
context:
space:
mode:
authorbwarsaw2000-04-07 16:24:47 +0000
committerbwarsaw2000-04-07 16:24:47 +0000
commit0cc57bb5f80786f440d2cb798628b0bfdf03fc48 (patch)
treec7849df72db8a5c0ade894fbed7a51034b371798 /Mailman/Handlers/ToUsenet.py
parent03cf5b4f6308e5895fb9a0139189ca5701234b2d (diff)
downloadmailman-0cc57bb5f80786f440d2cb798628b0bfdf03fc48.tar.gz
mailman-0cc57bb5f80786f440d2cb798628b0bfdf03fc48.tar.zst
mailman-0cc57bb5f80786f440d2cb798628b0bfdf03fc48.zip
do_child(): Catch and cleanly report socket.error exceptions which can
happen during the nntplib.NNTP() call.
Diffstat (limited to 'Mailman/Handlers/ToUsenet.py')
-rw-r--r--Mailman/Handlers/ToUsenet.py15
1 files changed, 10 insertions, 5 deletions
diff --git a/Mailman/Handlers/ToUsenet.py b/Mailman/Handlers/ToUsenet.py
index e826ecb26..48a3c4739 100644
--- a/Mailman/Handlers/ToUsenet.py
+++ b/Mailman/Handlers/ToUsenet.py
@@ -20,6 +20,7 @@ import sys
import os
import string
import re
+import socket
from Mailman.pythonlib.StringIO import StringIO
@@ -123,14 +124,18 @@ def do_child(mlist, msg):
# flatten the message object, stick it in a StringIO object and post
# that resulting thing to the newsgroup
fp = StringIO(str(msg))
- conn = nntplib.NNTP(mlist.nntp_host, readermode=1)
+ conn = None
try:
try:
+ conn = nntplib.NNTP(mlist.nntp_host, readermode=1)
conn.post(fp)
except nntplib.error_temp, e:
- sys.stderr.write('encountered NNTP error for list %s\n' %
- mlist.internal_name())
- sys.stderr.write(str(e) + '\n')
+ mlist.LogMsg('error', '(ToUsenet) NNTP error for list "%s": %s' %
+ (mlist.internal_name(), e))
+ except socket.error, e:
+ mlist.LogMsg('error', '(ToUsenet) socket error for list "%s": %s'
+ % (mlist.internal_name(), e))
finally:
- conn.quit()
+ if conn:
+ conn.quit()
os._exit(0)