ssl-opt.sh: add proxy to all DTLS tests

A lot of DTLS test are timing-sensitive, especially those that contain
assertions about retransmission. Sometimes some DTLS test fails intermittently
on the CI with no clear apparent reason; we need more information in the log
to understand the cause of those failures.

Adding a proxy means we'll get timing information from the proxy logs.

An alternative would be to add timing information to the debug output of
ssl_server2 and ssl_client2. But that's more complex because getting
sub-second timing info is outside the scope of the C standard, and our current
timing module only provides a APi for sub-second intervals, not absolute time.
Using the proxy is easier as it's a single point that sees all messages, so
elapsed time is fine here, and it's already implemented in the proxy output.

Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
This commit is contained in:
Manuel Pégourié-Gonnard 2020-06-08 11:40:06 +02:00
parent 9acf943b98
commit fcf6c16470

View File

@ -631,6 +631,12 @@ run_test() {
# update DTLS variable # update DTLS variable
detect_dtls "$SRV_CMD" detect_dtls "$SRV_CMD"
# if the test uses DTLS but no custom proxy, add a simple proxy
# as it provides timing info that's useful to debug failures
if [ "X$PXY_CMD" = "X" -a "$DTLS" -eq 1 ]; then
PXY_CMD="$P_PXY"
fi
# prepend valgrind to our commands if active # prepend valgrind to our commands if active
if [ "$MEMCHECK" -gt 0 ]; then if [ "$MEMCHECK" -gt 0 ]; then
if is_polar "$SRV_CMD"; then if is_polar "$SRV_CMD"; then