Nemo UCSPI-TCP - Changes

Changes of the second generation of Daniel Bernstein's (DJB) UCSPI-TCP package.

This software is not compatible with…

  • CDBs created by Nemo CBD prior to version 3.0 or any version of DJB CDBs.

v2.1.7 - UNRELEASED

This release contains code optimisations and minor changes. Particular emphasis is on cross platform compatibility.

Version Notes
• New tcpclient(1) and tcpclient6(1) - new section EXIT STATUS.
• Changed tcpclient and tcpclient6 - return system errors as exit status instead of 111.
• Changed Renamed conf-home to conf-prefix.
• Changed Minor changes to build system.
• Changed Manual pages - collapsed long sequences of optional flags into one group.
• Changed Manual pages - renamed substitution strings.
• Changed Refactored code to use die_*() routines.
• Changed Incorporate changes in base libaries.
• Fixed Manual pages - corrected various typos.
• Requires Nemo DJB Library v3.0 or later.
• Requires Nemo DJBIO Library v3.0 or later.
• Requires Nemo DJBDNS v4.2 or later.

v2.1.6 - December 28, 2017

This release contains optimisations and fixes.

Version Notes
• Changed tcp-env - use pathexec() from Nemo DJB Library instead of direct call to execvp().
• Changed tcp-environ(7) - include references to tcpclient6(1) and tcpserver6(1) in opening paragraph of description.
• Changed Replaced all comparison instances of '== -1' to '< 0'.
• Changed Implement #include <nemo/macro_noreturn.h> from Nemo DJB Library.
• Changed Implement #include <nemo/macro_unused.h> from Nemo DJB Library.
• Changed Minor changes to build system.
• Fixed chkshsgr.c - fix #include declaration.
• Fixed tcpclient(1).
• Fixed tcpclient6(1).
• Removed chkshsgr.c - unused.
• Removed SYSDEPS - unused.
• Requires Nemo DJB Library v2.10 or later.
• Requires Nemo DJBIO Library v2.2.3 or later.

v2.1.5 - August 18, 2017

This release contains optimisations and fixes. Particular emphasis has been on cross platform compatibility.

Tested on Linux raspberrypi 4.9.35-v7+ #1014 SMP, armv7l GNU/Linux - Raspbian with Desktop, 32 bit platform.

Version Notes
• Changed tcpclient.c, tcpclient6.c - reorganised includes.
• Changed tcpserver.c, tcpserver6.c - reorganised includes.
• Changed conf-cc - expand examples.
• Changed Incorporate changes in base libaries.
• Requires Nemo DJB Library v2.8.3 or later.
• Requires Nemo DJBIO Library v2.2.2 or later.
• Requires Nemo DJBDNS v3.0.2 or later.

v2.1.4 - February 12, 2017

Version Notes
• Changed Incorporate changes in base libaries.
• Changed Accommodate changes in Nemo DJBIO Library v2.2.1.
• Fixed All programs that use DNS - prior to the call to DNS routine, the FQDN parameter is set to lower case.
• Fixed tcpserver, tcpserver6 - use wait_exitcode() on return value from wait_pid().
• Removed FILES - unused and high maintenance.
• Requires Nemo DJB Library v2.8.1 or later.
• Requires Nemo DJBIO Library v2.2.1 or later.
• Requires Nemo DJBDNS v2.2 or later.

v2.1.3 - June 20, 2016

Version Notes
• Changed conf-cc - add comment about building on gcc+glibc platform.
• Changed hier.c - implemented unsigned int install_manuid from Nemo DJB Library v2.5.1.
• Requires Nemo DJB Library v2.5.2 or later.
• Requires Nemo DJBIO Library v2.1.5 or later.
• Requires Nemo CDB Library v3.0.3 or later.
• Requires Nemo DJBDNS v2.1.4 or later.

v2.1.2 - March 30, 2016

Version Notes
• Changed tcpclient6.c - renamed variable net_if to scope_id.
• Changed tcpclient6.c - removed IPv6 scope id parameter from call to remoteinfo6() - API change in Nemo DJBIO Library v2.1.4.
• Changed tcpserver6.c - renamed variable net_if to scope_id.
• Changed tcpserver6.c - removed IPv6 scope id parameter from call to remoteinfo6() - API change in Nemo DJBIO Library v2.1.4.
• Changed hier.c - implemented unsigned int install_manuid from Nemo DJB Library v2.5.1.
• Requires Nemo DJB Library v2.5.1 or later.
• Requires Nemo DJBIO Library v2.1.4 or later.

v2.1.1 - December 2, 2015

Version Notes
• Changed Accommodate changes in Nemo DJB Library v2.5.
• Requires Nemo DJB Library v2.5 or later.

v2.1 - September 18, 2015

Version Notes
• Changed Accommodate changes in Nemo DJB Library v2.4.
• Changed Accommodate changes in Nemo CDB v2.2.
• Requires Nemo DJB Library v2.4 or later.
• Requires Nemo CDB v3.0 or later.

v2.0.2 - August 7, 2015

Version Notes
• Changed tcprules(1) - expansion of IPv6 examples.
• Fixed tcpserver6 - rules6.c: doit() correctly process IPv6 addresses for TCP rules data file.

v2.0.1 - July 31, 2015

Version Notes
• Changed Accommodate changes in Nemo DJB Library v2.2.4.
• Changed Manual pages - incorporate first line of file 'VERSION' into footer.
• Fixed conf-unused - now has correct contents.
• Requires Nemo DJB Library v2.2.4 or later.

v2.0 - July 8, 2015 - Major Changes from Original Distribution

General:

Version Notes
• New IPv6 support.
• New Makefile target: "clean".
• New Imported manual pages from third party sources.
• Changed Changed many signed return values into unsigned return values.
• Changed Changed many prototypes to use data types in Nemo DJB Library.
• Changed Many routines replaced by those found in Nemo DJB Library.
• Changed Routines that used the 1st generation of buffered I/O are now using Nemo DJBIO Library based buffered I/O.
• Changed Many routines replaced by those found in Nemo CDB.
• Changed Build/installation framework provided by Nemo DJB Library.
• Changed Converted K&R prototypes to ANSI.
• Changed All manual pages have been converted to mdoc(7) format.
• Changed Additional annotations/comments - source code files.
• Changed Using some of the standard integer types in the POSIX standard.
• Changed Changed many signed integers into unsigned integers.
• Changed Source code formatting is now "Compact Control Readability Style" - variant of K&R, similar to the Stroustrup variant.
One exception: single line conditional returns are on same line as the conditional.
Long lines are rarely wrapped.
Indent size is two spaces.
• Fixed Patched source code to use #include <errno.h>.
• Fixed Resolved all compile errors and warnings from the GNU C compiler (-W -Wall -Werror).
• Fixed In scripts and the Makefile, all references to "head -1" have been changed to "head -n 1".
• Removed "systype" processing.

Programs:

Version Notes
• New tcpclient6 - IPv6 connectivity, equivalent to tcpclient.
• New tcpserver6 - IPv6 connectivity, equivalent to tcpserver.