VANESSA_SOCKET_PIPE(1)

NAME
vanessa_socket_pipe - Trivial TCP/IP pipe based on libvanessa_socket

SYNOPSIS
vanessa_socket_pipe [options]

DESCRIPTION
A TCP/IP pipe is a user space programme that listens for TCP/IP connections on port on the local host and when a client connects makes a connection to a TCP port, possibly on another host. Once both connections are established data sent on one connection is relayed to the other, hence forming a bi-directional pipe.

Uses include enabling connections to specific ports on hosts behind a packet filter.

This code is intended primarily as an example of how many of the features of libvanessa_socket work.

OPTIONS

-c|--connection_limit:
    Maximum number of connections to accept simultaneously. A value of zero sets no limit on the number of simultaneous connections. (default 0)

-d|--debug:
    Turn on verbose debuging to stderr.

-h|--help:
    Display this message.

-L|--listen_port:
    Port to listen on. (mandatory)

-l|--listen_host:
    Address to listen on. May be a hostname or an IP address. If not defined then listen on all local addresses.

-n|--no_lookup:
    Turn off lookup of hostnames and portnames. That is, hosts must be given as IP addresses and ports must be given as numbers.

-O|--outgoing_port:
    Define a port to connect to. If not specified -l|--listen_port will be used.

-o|--outgoing_host:
    Define host to connect to. May be a hostname or an IP address. (mandatory)

-q|--quiet:
    Only log errors. Overriden by -d|--debug.

-t|--timeout:
    Idle timeout in seconds. Value of zero sets infinite timeout. (default 1800)

Notes:
    Default value for binary flags is off.
    -L|--listen_port and -o|--outgoing_host must be defined.

AUTHOR
Simon Horman <horms@verge.net.au>