30 lines
701 B
Python
30 lines
701 B
Python
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()
|