Use connect_ex() instead of connect().

Removes old XXX comment and possible source of long-delays.
This commit is contained in:
Jeremy Hylton 2001-10-29 16:44:37 +00:00
parent fbd5797eb7
commit e16e54f7f1
1 changed files with 9 additions and 12 deletions

View File

@ -53,7 +53,7 @@ import sys
import os
from errno import EALREADY, EINPROGRESS, EWOULDBLOCK, ECONNRESET, \
ENOTCONN, ESHUTDOWN, EINTR
ENOTCONN, ESHUTDOWN, EINTR, EISCONN
try:
socket_map
@ -301,17 +301,14 @@ class dispatcher:
def connect (self, address):
self.connected = 0
# XXX why not use connect_ex?
try:
self.socket.connect (address)
except socket.error, why:
if why[0] in (EINPROGRESS, EALREADY, EWOULDBLOCK):
return
else:
raise socket.error, why
self.addr = address
self.connected = 1
self.handle_connect()
err = self.socket.connect_ex(address)
if err in (EINPROGRESS, EALREADY, EWOULDBLOCK):
return
if err in (0, EISCONN):
self.addr = address
self.connected = 1
self.handle_connect()
raise socket.error, err
def accept (self):
try: