import os import socket import sys import threading import msvcrt msvcrt.setmode(0,os.O_BINARY) msvcrt.setmode(1,os.O_BINARY) conn=socket.socket() conn.setsockopt(socket.IPPROTO_IP,31,socket.htonl(16)) conn.bind(('192.168.123.43',0)) conn.settimeout(10) conn.connect((sys.argv[1],int(sys.argv[2]))) conn.settimeout(None) def upload(): try: while True: data=os.read(0,65536) if not data:break conn.sendall(data) conn.shutdown(socket.SHUT_WR) except OSError:pass threading.Thread(target=upload,daemon=True).start() try: while True: data=conn.recv(65536) if not data:break os.write(1,data) finally: conn.close()