Someone reported being unable to connect with the error "Address family not
supported", which is probably being returned by socket(). It is likely a
system where getaddrinfo() is returning AF_INET6 addresses, but socket()
won't create AF_INET6 sockets.
To handle this case, we loop over all the addresses returned by getaddrinfo()
until we find one that socket() will accept.
This means that we shouldn't try to connect using IPv6 if the local machine
doesn't have an IPv6 address itself.
This also simplifies the IPv6 code in BX_connect_by_number() a bit.
git-svn-id: svn://svn.code.sf.net/p/bitchx/code/trunk@203 13b04d17-f746-0410-82c6-800466cd88b0
that parses AF_UNIX addresses in getaddrinfo() or something.
git-svn-id: svn://svn.code.sf.net/p/bitchx/code/trunk@189 13b04d17-f746-0410-82c6-800466cd88b0
and res happened to be NULL).
Also add missing freeaddrinfo() call.
git-svn-id: svn://svn.code.sf.net/p/bitchx/code/trunk@188 13b04d17-f746-0410-82c6-800466cd88b0
IPv6 enabled. This fixes an issue reported by packet, where IPv4 conections
don't work on FreeBSD when the client is built with IPv6 support and you
have a local hostname set (with /hostname, -H or IRCHOST).
Also ensure we clear the full size of the 'server' address structure - doesn't
fix a known problem but is a defensive measure.
git-svn-id: svn://svn.code.sf.net/p/bitchx/code/trunk@181 13b04d17-f746-0410-82c6-800466cd88b0
This fixes making IPv4 connections on BSD when the client is compiled with
IPv6 enabled.
Thanks to brabes on sourceforge and snadge@freenode for originally tracking
this down.
git-svn-id: svn://svn.code.sf.net/p/bitchx/code/trunk@176 13b04d17-f746-0410-82c6-800466cd88b0
IPv4 even on an IPv6-enabled client. This fixes /detach and wserv when
compiling with --enable-ipv6.
This does also mean that the internal identd, if used, won't listen on IPv6
either. This isn't a problem yet, since the internal identd is used only on
WINNT and we don't support IPv6 there yet.
This will also need tweaking to support initiating DCC-over-IPv6.
Thanks to snadge and packet for working on this bug.
git-svn-id: svn://svn.code.sf.net/p/bitchx/code/trunk@162 13b04d17-f746-0410-82c6-800466cd88b0