File tree Expand file tree Collapse file tree 2 files changed +8
-3
lines changed Expand file tree Collapse file tree 2 files changed +8
-3
lines changed Original file line number Diff line number Diff line change 11__title__ = "pproxy"
2- __version__ = "2.1.4 "
2+ __version__ = "2.1.5 "
33__license__ = "MIT"
44__description__ = "Proxy server that can tunnel among remote servers by regex rules."
55__keywords__ = "proxy socks http shadowsocks shadowsocksr ssr redirect pf tunnel cipher ssl udp"
Original file line number Diff line number Diff line change @@ -210,10 +210,15 @@ async def server_run(self, handler):
210210 try :
211211 reader , writer = await asyncio .wait_for (wait , timeout = SOCKET_TIMEOUT )
212212 self .writer = writer
213- data = await reader .read_ ()
213+ try :
214+ data = await reader .read_n (1 )
215+ except asyncio .TimeoutError :
216+ data = None
214217 if data :
215218 reader ._buffer [0 :0 ] = data
216219 asyncio .ensure_future (handler (reader , writer ))
220+ else :
221+ writer .close ()
217222 errwait = 0
218223 except Exception as ex :
219224 try :
@@ -222,7 +227,7 @@ async def server_run(self, handler):
222227 pass
223228 if not self .closed :
224229 await asyncio .sleep (errwait )
225- errwait = errwait * 1.3 + 0.1
230+ errwait = min ( errwait * 1.3 + 0.1 , 30 )
226231 def client_run (self ):
227232 async def handler (reader , writer ):
228233 while not self .conn .empty ():
You can’t perform that action at this time.
0 commit comments