#!/usr/bin/env python3 import sys, socket import hashlib sk = socket.fromfd(3, socket.AF_INET, socket.SOCK_STREAM) s = sys.stdin.read() ret = sk.send(s) print("%s: send() -> %d" % (sys.argv[1], ret), file=sys.stderr) sk.shutdown(socket.SHUT_WR) m = hashlib.md5() while True: s = sk.recv((1 << 20) * 10) if not s: break print("%s: recv() -> %d" % (sys.argv[1], len(s)), file=sys.stderr) m.update(s) print(repr(m.hexdigest()))