socks: use unlimited buffered chan