Use correct input function for netif_add() in examples.
Invoke coap_io_process() as soon as possibile following TCP input /
error.
Update rcvd window size after receipt of data.
Add in new function coap_add_data_large_request_app() that provides a call-back
to get individual blocks rather than having a large buffer held in
(contrained) memory.
These changes switch the TinyDTLS library build from Autotools to CMake,
as support for CMake has now been added. The use of external libraries
has been optimized. PkgConfig support has been added for library
detection. The libraries' names were also fixed to use CMake-style
naming.
When I was fixing MSVC compilation incompatibility due to a dynamic
array on the stack in the coap_crypto_aead_decrypt() function,
I accidentally noticed an incorrect calculation of the array size in
the previous coap_crypto_aead_encrypt() function.
The current code uses a dynamic array on the stack, a relatively rare
compiler extension. For example, MSVC does not support it.
The proposed changes use a classic dynamic array on the heap, which
greatly improves code compatibility. This will also enable libcoap to be
compiled alongside tinyDTLS using the Microsoft compiler on Windows.
Using the Ninja generator with the MSVC compiler leads to errors due to
incorrect compiler call options. In CMake, the generator and the
compiler are different entities.
This fix replaces the incorrect CMake variable with the correct one that
describes the current MSVC-compatible compiler.
If we correctly determine the presence of the sys/time.h and time.h
files using the HAVE_TIME_H and HAVE_SYS_TIME_H macros, then the LWIP
compilation will result in a duplicate function error. Perhaps previous
versions of LWIP did not have these files, in which case everything
would have worked correctly.
These changes add the necessary ifdefs and keep the optimal timer
function for LWIP.
Adds missed #include <time.h> lines to examples and documentation.
Adds the detection of the sys/select.h header to the CMake and autoconf.
These changes add a basic implementation of the coap_resolve_address_info()
function when compiling LWIP with NO_SYS = 1. This implementation is
similar to those in CONTIKI and RIOT.
The function gai_strerror() was removed because it is not very important,
yet it is missing from many implementations.
A CONTIKI compilation bug has also been fixed.
In Windows, calling the connect function for a socket requires a valid
address. This causes the t_session6 test in the coap_new_client_session()
function in test_session.c to fail.
The fix replaces in6addr_any with in6addr_loopback, as in the adjacent
function call. This does not affect the functionality of the test.
As a result, the tests under Windows are completely successful.
Added a rules file for automatic detection of the CUnit library,
as well as support for running tests directly from CMake.
Updated distribution bundle rule.
It adds FindCUnit.cmake to the EXTRA_DIST rule in the Makefile.am file.
The CUnit tests run perfectly on both Windows and Debian.