add nodelay

This commit is contained in:
clowwindy 2014-05-01 11:44:36 +08:00
parent b8f9370426
commit 355307e5ef
3 changed files with 7 additions and 0 deletions

3
.gitignore vendored
View File

@ -25,3 +25,6 @@ pip-log.txt
#Mr Developer
.mr.developer.cfg
.DS_Store
.idea

View File

@ -121,6 +121,7 @@ class Socks5Server(SocketServer.StreamRequestHandler):
try:
self.encryptor = encrypt.Encryptor(KEY, METHOD)
sock = self.connection
sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
data = sock.recv(262)
if not data:
sock.close()
@ -202,6 +203,7 @@ class Socks5Server(SocketServer.StreamRequestHandler):
# reply immediately
aServer, aPort = self.getServer()
remote = socket.create_connection((aServer, aPort))
remote.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
self.send_encrypt(remote, addr_to_send)
logging.info('connecting %s:%d' % (addr, port[0]))
except socket.error, e:

View File

@ -102,6 +102,7 @@ class Socks5Server(SocketServer.StreamRequestHandler):
self.encryptor = encrypt.Encryptor(self.server.key,
self.server.method)
sock = self.connection
sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
iv_len = self.encryptor.iv_len()
data = sock.recv(iv_len)
if iv_len > 0 and not data:
@ -130,6 +131,7 @@ class Socks5Server(SocketServer.StreamRequestHandler):
try:
logging.info('connecting %s:%d' % (addr, port[0]))
remote = socket.create_connection((addr, port[0]))
remote.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
except socket.error, e:
# Connection refused
logging.warn(e)