mirror of https://github.com/python/cpython
Merged revisions 82404 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r82404 | giampaolo.rodola | 2010-06-30 19:38:28 +0200 (mer, 30 giu 2010) | 1 line fix issue #6589: cleanup asyncore.socket_map if smtpd.SMTPServer constructor raises an exception ........
This commit is contained in:
parent
9f11f39758
commit
1daf7aa2b2
24
Lib/smtpd.py
24
Lib/smtpd.py
|
@ -274,15 +274,21 @@ class SMTPServer(asyncore.dispatcher):
|
|||
self._localaddr = localaddr
|
||||
self._remoteaddr = remoteaddr
|
||||
asyncore.dispatcher.__init__(self)
|
||||
self.create_socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
# try to re-use a server port if possible
|
||||
self.set_reuse_addr()
|
||||
self.bind(localaddr)
|
||||
self.listen(5)
|
||||
print >> DEBUGSTREAM, \
|
||||
'%s started at %s\n\tLocal addr: %s\n\tRemote addr:%s' % (
|
||||
self.__class__.__name__, time.ctime(time.time()),
|
||||
localaddr, remoteaddr)
|
||||
try:
|
||||
self.create_socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
# try to re-use a server port if possible
|
||||
self.set_reuse_addr()
|
||||
self.bind(localaddr)
|
||||
self.listen(5)
|
||||
except:
|
||||
# cleanup asyncore.socket_map before raising
|
||||
self.close()
|
||||
raise
|
||||
else:
|
||||
print >> DEBUGSTREAM, \
|
||||
'%s started at %s\n\tLocal addr: %s\n\tRemote addr:%s' % (
|
||||
self.__class__.__name__, time.ctime(time.time()),
|
||||
localaddr, remoteaddr)
|
||||
|
||||
def handle_accept(self):
|
||||
conn, addr = self.accept()
|
||||
|
|
|
@ -73,6 +73,9 @@ C-API
|
|||
Library
|
||||
-------
|
||||
|
||||
- Issue #6589: cleanup asyncore.socket_map in case smtpd.SMTPServer constructor
|
||||
raises an exception.
|
||||
|
||||
- Issue #9125: Add recognition of 'except ... as ...' syntax to parser module.
|
||||
|
||||
- Issue #9085: email package version number bumped to its correct
|
||||
|
|
Loading…
Reference in New Issue