RIOT/tests/lwip_sock_tcp
Martine S. Lenders c90654d4cc
tests/lwip_sock_tcp: fix -EADDRINUSE test
When compiled with `LWIP_IPV4=1 LWIP_IPV6=1` this test currently fails
in current master. This "regression" was introduced with 035acc2e5388.
However, after some debugging I think that commit actually revealed a
problem with the test rather than introducing a bug.

The test starts the central server, and then checks if opening a
listening socket on the same port causes an `-EADDRINUSE` error.
The server, on the other hand, starts with `SOCK_FLAGS_REUSE_EP`, so of
course the listening operation may succeed. Instead, let's just call
`sock_tcp_listen` twice with two distinct queue objects. Way easier and
also more correct.
2020-07-31 12:49:36 +02:00
..
2019-11-27 14:12:12 +01:00
2018-06-11 19:12:02 +02:00
2018-06-11 19:12:02 +02:00

Tests for lwIP's sock_tcp port

This tests the sock_tcp port of lwIP. There is no network device needed since a virtual device is provided at the backend.

These tests test both IPv4 and IPv6 capabilities. They can be activated by the LWIP_IPV4 and LWIP_IPV6 environment variables to a non-zero value. IPv6 is activated by default:

make all test
# or
LWIP_IPV6=1 make all test

To just test IPv4 set the LWIP_IPV4 to a non-zero value (IPv6 will be deactivated automatically):

LWIP_IPV4=1 make all test

To test both set the LWIP_IPV4 and LWIP_IPV6 to a non-zero value:

LWIP_IPV4=1 LWIP_IPV6=1 make all test

Since lwIP uses a lot of macro magic to activate/deactivate these capabilities it is advisable to test all three configurations individually (just IPv4, just IPv6, IPv4/IPv6 dual stack mode).