OpenVPN / openvpn

OpenVPN is an open source VPN daemon
http://openvpn.net
Other
10.25k stars 2.92k forks source link

tests: add --dev null test suite #541

Open mattock opened 2 months ago

mattock commented 2 months ago

This PR adds a --dev null test suite. The implementation has been described in doc/t_server_null.rst. In addition the scripts themselves include plenty of documentation on what is happening.

This particular incarnation of --dev null has been stress-tested for ~2000 rounds with zero failure rate. Currently tested platforms are Fedora Linux 38 and FreeBSD 14. Any changes to the test suite, in particular its logic, will need to be exposed to a fairly comprehensive tests to avoid subtle issues; for example, in one case a small bug caused ~1% test failure rate - a rate which is impossible to notice without hundreds or so rounds of stress-testing.

mattock commented 2 months ago

Made changes based on openvpn-devel IRC discussions:

flichtenheld commented 2 months ago

Misses changes to github config to actually run the new tests.

mattock commented 1 month ago

@flichtenheld I applied your suggestions and ran in-tree and out-of-tree builds and did some stress testing just in case. Everything seemed to work fine. Perhaps we're close to the point where these changes could be wrapped into a patch (series) and sent to openvpn-devel?

mattock commented 1 month ago

@flichtenheld I believe the parallel make issue is now gone, see latest commit.

mattock commented 1 month ago

@flichtenheld I believe the parallel make issue is now gone, see latest commit.

Note that t_client.sh seems to fail if the host "make check" runs on does not have IPv6. That caught me by surprise yesterday.

mattock commented 1 month ago

@flichtenheld I believe this PR is now ready. Care to check?