This was +2'ed long ago, but got left rotting due to "I need to find a
meaningful test case"... well, I give up on this, because this is all
very obscure corner cases (setting lport != 0, but not setting a
--local address to bind to, and the OS serving us a v6 ANY, breaking
connection to a v4 host - which would otherwise work just fine on
a v6 dual-stack socket).
Arguably what the patch does is the right behaviour - if no --local
address (or host) was specified, do not override use the address family
from --proto with the one from --local. *Iff* a --local hostname or
explicit v4/v6 address was specified, then it makes no sense to query
"for that other family" (this path is unchanged).
Since Arne and the Android client was bitten most by the "lport -> bind"
change, and gave his +2 in gerrit, this is all we need :-)
Tested on FreeBSD and Linux, t_client with lots of v4/v6 remotes...
Your patch has been applied to the master branch.
commit c319dcf048c56098a6aba142e76166684ff5ab12
Author: Antonio Quartulli
Date: Tue Mar 25 10:01:15 2025 +0100
socket: don't transfer bind family to socket in case of ANY address
Signed-off-by: Antonio Quartulli <[email protected]>
Acked-by: Arne Schwabe <[email protected]>
Message-Id: <[email protected]>
URL:
https://www.mail-archive.com/[email protected]/msg31235.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