31 lines
1.0 KiB
Python
31 lines
1.0 KiB
Python
import asyncio, socket
|
|
from utils.keys_manager_1 import *
|
|
from utils.send_receive import *
|
|
|
|
|
|
async def handle_client(reader, writer):
|
|
request = None
|
|
quit_msg_code = b'|<--eos-->|'
|
|
(private_key,public_key) = check_for_existing_keys()
|
|
while request != quit_msg_code:
|
|
print('Receiving ans [ ... ]')
|
|
request = recv_msg(reader)
|
|
#request = (await reader.read(255)).decode('utf8')
|
|
print('Receiving ans [ OK ] {}'.format(request))
|
|
response = str(request) + '\n'
|
|
send_msg_async(writer, response)
|
|
#writer.write(response.encode('utf8'))
|
|
try:
|
|
await writer.drain()
|
|
# Prevent closed connections without 'eos'
|
|
except ConnectionResetError:
|
|
print('Connection Closed')
|
|
break
|
|
print('Received \'eos\' signal, will now close session [ ... ]')
|
|
writer.close()
|
|
print('Session closed [ OK ]')
|
|
|
|
loop = asyncio.get_event_loop()
|
|
loop.create_task(asyncio.start_server(handle_client, 'localhost', 15555))
|
|
loop.run_forever()
|