Stared at the code for a bit, and fed this to the Linux DCO server
testbed (excercising multisocket only lightly).

Some of the changes are really straightforward (like not calling
socket_set_listen_persistent() for dco_win, where the socket lives
in kernel space), or just not calling (windows-only) wait_signal()
for servers where win-DCO needs different handling.

The change to multi_tcp_process_outgoing_link() feels wrong, though
- yes, "what we do there" should obviously not been done for a DGRAM
packet, but why is the function then called in the first place?  So
I guess there are a few more acts coming in this multisocket/event
drama...

Anyway, this does not really affect Linux/FreeBSD DCO, and testing
says it's not breaking anything - and it fixes Win/Server DCO, so
one step forward at a time.

Your patch has been applied to the master branch.

commit 831c585e96587e28d1390d165d89b4152ba03bd3
Author: Gianmarco De Gregori
Date:   Thu Apr 10 23:50:29 2025 +0200

     Fix dco_win and multisocket interaction

     Signed-off-by: Gianmarco De Gregori <gianma...@mandelbit.com>
     Acked-by: Lev Stipakov <lstipa...@gmail.com>
     Message-Id: <20250410215037.11878-1-g...@greenie.muc.de>
     URL: 
https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg31419.html
     Signed-off-by: Gert Doering <g...@greenie.muc.de>


--
kind regards,

Gert Doering



_______________________________________________
Openvpn-devel mailing list
Openvpn-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to