This was quite a bit of a journey... after staring at the code and deciding
"yes this looks good" it promptly crashed on me, with most interesting
error messages (connecting 100 clients simultaneously and disconnecting
simultaneously as well, no EEN, so triggering 100 quasi-simultaneous
PEER_DEL notifications from the kernel).  After this was fixed, the Gremlins
crashed it again, in an ASSERT(es)...  but with v13 I can no longer break
it *and* we're reasonably sure we understand what is and was happening.

Tested really really hard on ubuntu 20.04 + backports, and lightly
(t_client and t_server, no gremlins) on FreeBSD 14.  Since the FreeBSD
notification mechanism works differently, we do not expect the same sort
of problems (missing / batched notifications) to materialize there.

Added Github references to #900 (sbaranoff), #918, #919 (mine).  The latter
two are basically things that broke in earlier versions of the patch, 
and #918 is kept open to see if we could make the setenv_stats() <-> DCO
interaction better.

Your patch has been applied to the master branch.

commit 7791f5358a5574d4ef1bd27e2d52300c9d98bd72
Author: Ralf Lici
Date:   Fri Nov 28 12:26:59 2025 +0100

     dco: process messages immediately after read

     Signed-off-by: Ralf Lici <[email protected]>
     Acked-by: Gert Doering <[email protected]>
     Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1403
     Message-Id: <[email protected]>
     URL: 
https://www.mail-archive.com/[email protected]/msg34785.html
     Signed-off-by: Gert Doering <[email protected]>


--
kind regards,

Gert Doering



_______________________________________________
Openvpn-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to