Hi, On Sun, Jun 19, 2022 at 11:38:17AM +0200, Arne Schwabe wrote: > > #if EXTENDED_SOCKET_ERROR_CAPABILITY > > /* if the OS supports it, enable extended error passing on the socket > > */ > > - set_sock_extended_error_passing(sock->sd); > > + set_sock_extended_error_passing(sock->sd, sock->info.af); > > #endif > > } > > > > I have to NACK this patch. sock->info.af is not the actual address > familiy but the family we want to use and it might be 0 if there is no > udp4/udp6 in the config file. > > For a client you can look at sock->info.lsa->actual.dest if that is > defined. For a server we seem to actually override/set that info.af > value according to my debugger but with a client I get 0 in that value. > It looks that set_mtu_discover_type in the same function has the same > problem, so it is easy to this mistake.
So how do we know if this is a v4 or v6 socket, in a client? Phrased differently - I could do a v2 which will just ignore this particular errno value. Maybe not "as clean" as not calling the "wrong" setsockopt() in the first place, but will keep the log free of non-useful error messages just fine... gert -- "If was one thing all people took for granted, was conviction that if you feed honest figures into a computer, honest figures come out. Never doubted it myself till I met a computer with a sense of humor." Robert A. Heinlein, The Moon is a Harsh Mistress Gert Doering - Munich, Germany g...@greenie.muc.de
signature.asc
Description: PGP signature
_______________________________________________ Openvpn-devel mailing list Openvpn-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openvpn-devel