UCSPI for IPv6

What is ucspi-tcp6?

Dan Bernstein's UNIX Client-Server Program Interface, UCSPI is a cornerstone of reliable network communication under Unix.

IPv6 capabilities have been included by Felix von Leitner's IPv6 patch.
Based on some additional research at the University of Applied Sciences in Frankfurt/Main (Germany), now a full-featured version is available supporting in addition compactified IPv6 addresses and the well-known classless prefix-notation for IPv4 and IPv6 networks.

ucspi-tcp6 has been build to confirm with Dan Bernstein's slashpackage scheme and uses a binary-compatible CDB for communication control.

Sources

History

ucspi-tcp6 is a fork of Dan Bernsteins's ucspi-tcp 0.88 version, including:

How to install ucspi-tcp6

ucspi-tcp6 uses D.J. Bernstein's /package conventions for installation. Typically, un-tar the archive under /package, change to host/ucspi-tcp6-<version> and call package/install.
ucspi-tcp6 is pre-packaged to suite the AMD64 environment and comes with additional man-pages.

Description of the main programs

Servers:

Clients:

Creating the rules cdb:

Internals

Main modification in ucspi-tcp6 is the enhanced format for tcpserver's rules.cdb. It supports now:

Note for MacOS X User

ucspi-tcp6 will compile with clang in case xcode is installed.
You need (perhaps) to adjust src/conf-cc and src/conf-ld.

MacOS X relocated the standard now to be part of the xcode SDK. The following include solved the situation unter MacOS X 'El Capitan' in my case for conf-cc:

clang -O2 -g -Wall -I /Developer/SDKs/MacOSX10.6.sdk/usr/include