|
30 | 30 |
|
31 | 31 |
|
32 | 32 | class TCPAbridgedO(TCP): |
33 | | - RESERVED = (b"HEAD", b"POST", b"GET ", b"OPTI", b"\xee" * 4) |
| 33 | + RESERVED = (b"HEAD", b"POST", b"GET ", b"OPTI", b"\xee" * 4, b"\xdd" * 4) |
34 | 34 |
|
35 | 35 | def __init__( |
36 | 36 | self, |
37 | 37 | ipv6: bool, |
38 | 38 | proxy: Union[str, ProxyDict, None] = None, |
39 | 39 | crypto_executor_workers: int = 1, |
40 | | - loop: Optional[asyncio.AbstractEventLoop] = None, |
41 | 40 | ) -> None: |
42 | | - super().__init__(ipv6, proxy, crypto_executor_workers, loop) |
| 41 | + super().__init__(ipv6, proxy, crypto_executor_workers) |
43 | 42 |
|
44 | 43 | self.encrypt = None |
45 | 44 | self.decrypt = None |
@@ -77,7 +76,7 @@ async def send(self, data: bytes, *args, request_ack: bool = False) -> None: |
77 | 76 | else: |
78 | 77 | header = (b"\xff" if request_ack else b"\x7f") + length.to_bytes(3, "little") |
79 | 78 |
|
80 | | - payload = await self.loop.run_in_executor( |
| 79 | + payload = await asyncio.get_event_loop().run_in_executor( |
81 | 80 | self.crypto_executor, aes.ctr256_encrypt, header + data, *self.encrypt |
82 | 81 | ) |
83 | 82 | await super().send(payload) |
@@ -112,6 +111,6 @@ async def recv(self, length: int = 0) -> Optional[bytes]: |
112 | 111 | if data is None: |
113 | 112 | return None |
114 | 113 |
|
115 | | - return await self.loop.run_in_executor( |
| 114 | + return await asyncio.get_event_loop().run_in_executor( |
116 | 115 | self.crypto_executor, aes.ctr256_decrypt, data, *self.decrypt |
117 | 116 | ) |
0 commit comments