Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env sage
- #encoding=utf-8
- from sage.all_cmdline import *
- from sage.all import *
- import socket
- from telnetlib import Telnet
- import concurrent.futures
- import traceback
- DIR = os.path.dirname(os.path.realpath(__file__))
- HOST,PORT = '127.0.0.1',65535
- def handle_client(sock):
- global x
- try:
- t = Telnet()
- t.sock=sock
- resp = t.read_until(b'\n');print(resp)
- exec(resp[:-1],globals())
- resp = t.read_until(b'\n');print(resp)
- t.write(f"{eval(resp[:-1])}\n".encode())
- except Exception as E:
- traceback.print_exc()
- print(E)
- sock.send(f"{E}\n".encode())
- pass
- sock.close()
- if __name__=='__main__':
- # sage -python sage_service.py
- executor = concurrent.futures.ThreadPoolExecutor(max_workers=10)
- with socket.socket(socket.AF_INET,socket.SOCK_STREAM) as s:
- print(f"START server {HOST}:{PORT}")
- s.bind((HOST,PORT))
- s.listen()
- while True:
- conn,addr = s.accept()
- print('Connected from',addr)
- try:
- set_future = executor.submit(handle_client,(conn))
- except Exception as E:
- print(f"[-]Error: {E}")
- pass
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement