The socat distribution contains the following files:
* README: an introduction to socat
* FILES: a navigator through the socat distribution (this file)
* EXAMPLES: a collection of simple examples how to use socat.
* COPYING: what you and others are allowed to do with socat.
* PORTING: instructions and tips if you want to try socat on a new platform.
* BUGREPORTS: instructions what to do with problems and contributions.
* SECURITY: tips if you want to use socat in a security relevant environment.
* DEVELOPMENT: infos for programmers
* VERSION: the version of the socat distribution, for inclusion during
* CHANGES: what happened since first public release
* socat.1: man page of socat
* socat.html: html version of man page
* xio.help: reference manual of the address definitions (xioopen function)
* daemon.sh: example shell script for running socat as TCP relay daemon
* ftp.sh: example shell based ftp client, using socat for transport
* mail.sh: example shell based smtp client, for execution by socat
* gatherinfo.sh: shell script for gathering info about platform and socat
* server.pem: a self signed test cerificate, for self test only
The source code system:
* configure: the autoconf generated configurator script
* Makefile.in: the Makefile source input to configure
* config.h.in: the config.h source input to configure
* Config/config.<platform>.h: sample config.h for platform.
* Config/Makefile.<platform>: sample Makefile for platform.
Copy the appropriate files to ./config.h and ./Makefile if configure fails
* socat.c: the main C source, including option parsing, general control, and
the data shuffler
* xio-*.c, xio-*.h: the source of the different address type implementations
with all their modes and options
* xio*.c, xio*.h: the source of the xio API and xio utilities
* filan.c, filan.h: file descriptor analyzer function
* dalan.c, dalan.h: data language, a most primitive subset of what should
become a language for describing/generating all kinds of binary data.
* error.c, error.h: the logging subsystem
* sycls.c, sycls.h: explicit system call and C library trace functions
* sslcls.c, sslcls.h: explicit openssl call trace functions
* xioconfig.h: ensures some dependencies between configure WITH defines; to be
included immediately after config.h
* sysutils.c, sysutils.h: some more general system (socket, IP) related
functions, e.g. converting socket addresses to human readable form
* utils.c, utils.h: useful additions to C library; currently memdup, binary
search, and setenv.
* mytypes.h: some types and macros I miss in C89
* test.sh: an incomplete attempt to automate tests of socat
* compat.h: ensure some features that might be missing on some platforms