* Add a simple test framework
* Add a code coverage report example oneliner
* Move the coverage report into a separate directory
* Add a github action to run tests and publish a branch with the coverage report
* Fix: Missing job separator
* Fix: remember to actually run configure
* Fix: Gotta autogen before I configure
* Dont try to upload coverage report unless this is a push
* Clearly show the git ref tested in the coverage report
* Add a test for the various transforms
* Add tests for the elliptic curve and pearson hash
* Ensure we ignore new generated output
* Remove unneeded boilerplate from the compression tests
* Add an example of a test of the encoded wire packets
* Ensure that correctly testable data is output even when zstd is not compiled
* Factor test runner out into its own script and attempt to add it to the cmake file
* Tell cmake about a new object file
* Stop trying to make Cmake work...
* Stop trying to make cmake work, round 2
* In the middle of a thousand lines of cmake output was one important one - windows could not find assert() - try again
* Try again to plumb the tests into cmake
* Add missing library to our superset install line
* Fix build error when libcap-dev is installed
* Switch to using artifact uploads instead of pages to store/show the coverage report
* Fix artifact upload yaml
* Upload coverage report to codecov
* Fix codecov - clearly it doesnt do a recursive search for coverage files
* Fix codecov - my hopeful use of a list of directories didnt work
* Fix codecov - unfortunately, it doesnt just consume the coverage data and needs us to generate the gcov output
* Fix codecov - nope, it still doesnt recursively search
* Fix codecov - it really helps if I run the gcov data generator
* Add a simple matrix build
* Fix older ubuntu versions of gcovr that do not support the '--html-title' option
* Ensure we use gcover options that are identical on older ubuntu
* Improve coverage generation and required build packages
* Fix the mismatched char, uint8_t warnings
* Ensure we leave room for zero termination and then ensure the string is terminated
* GCC has a warning if it thinks your could overflow your snprintf buffer, but dont check for said overflow
* Revert "Fix compilation on MacOS"
in order to another solution
* src: use IPPROTO_TCP in place of SOL_TCP
* use the more specific IPPROTO_TCP type for setsockopt
* fixes build on MacOS
src/edge_utils.c:891:31: error: use of undeclared identifier 'SOL_TCP'; did you mean 'FPP_TCP'?
setsockopt(eee->sock, SOL_TCP, TCP_NODELAY, &value, sizeof(value));
src/edge_utils.c:894:31: error: use of undeclared identifier 'SOL_TCP'
setsockopt(eee->sock, SOL_TCP, TCP_CORK, &value, sizeof(value));
^
src/edge_utils.c:894:40: error: use of undeclared identifier 'TCP_CORK'
setsockopt(eee->sock, SOL_TCP, TCP_CORK, &value, sizeof(value));
* include/n2n.h: drop redefiniton of SOL_TCP for WIN32, as we don't use it anywhere now
* src: only use TCP_CORK on LINUX
* it's LINUX only and fails on Win32 and MacOS (man 7 tcp)