Socat is a relay for bidirectional data transfer between two independent da ta channels. Each of these data channels may be a file, pipe, device (serial l ine etc. or a pseudo terminal), a socket (UNIX, IP4, IP6 - raw, UDP, TCP), an SSL socket, proxy CONNECT connection, a file descriptor (stdin etc.), the G NU line editor (readline), a program, or a combination of two of these.