Package: coturn Version: 4.15.0-1 Severity: important Tags: patch X-Debbugs-Cc: [email protected]
Dear Maintainer, (I am a coturn upstream maintainer.) The package's autopkgtests are declared as four tests: setup, udp, tcp, tls. The "setup" test installs the working test environment (debian/tests/turnserver.conf with allow-loopback-peers, the TLS server certificates, and the example user database) and restarts the coturn service; the udp/tcp/tls tests assume that state is still present. However, autopkgtest gives every test a pristine testbed when the backend supports revert, so nothing installed by "setup" survives into the following tests. On current infrastructure (both debci and Ubuntu's autopkgtest cloud) each test's log shows the coturn package being freshly reinstalled before every test, and tcp/tls therefore run against the stock configuration: * tcp fails with "create permission error 403": without allow-loopback-peers the server denies the loopback relayed address that the RFC 6062 client-to-client test uses. * tls fails with "Connection refused": without certificates the TLS listener never starts. udp only passes by accident (its relay address lands on a non-loopback interface address). These failures are visible on debci (marked "not a regression" since they fail for every version) and have real consequences in Ubuntu: coturn versions newer than 4.6.1 were stuck in -proposed for the entire last release cycle because of these test failures, so the current Ubuntu release shipped with coturn 4.6.1 while Debian had 4.12+. The attached patch (against the pkg-voip-team/coturn master branch) makes each test self-contained: * debian/tests/setup becomes a helper, debian/tests/prepare, which every test runs first; it also waits for the 3478/5349 listeners to come up after restarting the service before driving a client. * "setup" is dropped from the Tests list in debian/tests/control. * iproute2 is added to the test dependencies (for ss). Validation: in a Debian sid environment with the coturn 4.15.0-1 binaries from unstable, applying the test configuration per-test makes udp, tcp and tls all pass with 0% packet loss, including the two tests that currently fail. Regards, Pavel Punsky
coturn-autopkgtest-fix.patch
Description: Binary data

