@@ -31,34 +31,33 @@ def __init__(self, ipv6: bool, proxy: dict):
3131
3232 self .seq_no = None
3333
34- def connect (self , address : tuple ):
35- super ().connect (address )
34+ async def connect (self , address : tuple ):
35+ await super ().connect (address )
3636 self .seq_no = 0
3737
38- def sendall (self , data : bytes , * args ):
39- # 12 = packet_length (4), seq_no (4), crc32 (4) (at the end)
38+ async def send (self , data : bytes , * args ):
4039 data = pack ("<II" , len (data ) + 12 , self .seq_no ) + data
4140 data += pack ("<I" , crc32 (data ))
4241 self .seq_no += 1
4342
44- super ().sendall (data )
43+ await super ().send (data )
4544
46- def recvall (self , length : int = 0 ) -> bytes or None :
47- length = super ().recvall (4 )
45+ async def recv (self , length : int = 0 ) -> bytes or None :
46+ length = await super ().recv (4 )
4847
4948 if length is None :
5049 return None
5150
52- packet = super ().recvall (unpack ("<I" , length )[0 ] - 4 )
51+ packet = await super ().recv (unpack ("<I" , length )[0 ] - 4 )
5352
5453 if packet is None :
5554 return None
5655
57- packet = length + packet # Whole data + checksum
58- checksum = packet [- 4 :] # Checksum is at the last 4 bytes
59- packet = packet [:- 4 ] # Data without checksum
56+ packet = length + packet
57+ checksum = packet [- 4 :]
58+ packet = packet [:- 4 ]
6059
6160 if crc32 (packet ) != unpack ("<I" , checksum )[0 ]:
6261 return None
6362
64- return packet [8 :] # Skip packet_length (4) and tcp_seq_no (4)
63+ return packet [8 :]
0 commit comments