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