Skip to content

Instantly share code, notes, and snippets.

@ErDmKo
Created July 9, 2013 18:33
Show Gist options
  • Save ErDmKo/5959913 to your computer and use it in GitHub Desktop.
Save ErDmKo/5959913 to your computer and use it in GitHub Desktop.
#server
def socketer(s, ...):
s.bind(...)
s.listen(10)
while 1:
conn, addr = s.accept()
out = (....).encode('zlib')
out = str(len(out))+"data_length"+out
conn.sendall(out)
s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
server = Process(target = socketer, args=(s, ...)
server.start()
...
server.terminate()
os.remove(...)
#client
s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
s.connect(...)
data = s.recv(100)
data_length = data.split('data_length')[0]
data = data[len(data_length+'data_length'):]
data_length = int(data_length)
while len(data) < data_length:
chunk = s.recv(data_length-len(data))
data += chunk
s.close()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment