On Thu, Nov 20, 2014 at 03:01:11PM +0100, Dimitry Sibiryakov wrote:
> 19.11.2014 15:08, Michal Kubecek wrote:
> > The reason for AF_INET6 is that a PF_INET6 socket bound to
> > :: can accept both IPv6 and IPv4 connections (as long as IPV6_V6ONLY is
> > 0 and the system supports this setting) while a PF_INET socket can only
> > accept IPv4 connections. Therefore PF_INET6 should be preferred if we
> > want to listen on "any address" (as long as we can only use one socket).
> 
> At first, as you can see from link in previous message, it doesn't
> work for Windows XP.

Yes, I'm aware of this deficiency of Windows XP.

> At second, it is a good idea to use separate sockets on other systems
> as well to let users bind "any interface" for IPv6 and "localhost
> only" for IPv4.

Right now, something like that is not possible. But the reason is not in
the way IPv6 support is implemented (after all, I added a config setting
for the IPV6_V6ONLY socket option). The reason is that RemoteBindAddress
only accepts one listening address and server can create and manage only
one listening socket (for main connections, there can be more for aux
connections (events)).

I have a patch allowing the server to create and handle multiple
listening sockets and specify a list of addresses. With this patch, your
example could be configured with

  IPv6V6Only = true
  RemoteBindAddress = 127.0.0.1 ; ::

However, this patch is less tested and more intrusive than the rest of
the IPv6 series. As we are already in beta phase, I didn't feel
confident enought to commit it with the others. And I don't intend to do
so unless someone with sufficient "weight" says it's OK (someone having
it tested on Windows would be also helpful).

So I suppose the question is: do we want to introduce a potentially
risky feature at this stage or would we rather accept the server not
being able to listen on both IPv4 and IPv6 on two platforms, one of them
already unsupported now, the other either unsupported when 3.0 is
released or shortly after that?

                                                          Michal Kubecek


------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to