Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Feb 2006 17:44:05 +0100 (CET)
From:      "Arne H. Juul" <arnej@pvv.ntnu.no>
To:        Kurt Miller <kurt@intricatesoftware.com>
Cc:        Nate Williams <nate@yogotech.com>, freebsd-java@freebsd.org
Subject:   Re: SO_REUSEADDR should not also mean SO_REUSEPORT
Message-ID:  <Pine.LNX.4.62.0602231735500.8287@decibel.pvv.ntnu.no>
In-Reply-To: <200602211011.39387.kurt@intricatesoftware.com>
References:  <43F4F22F.1060402@europe.yahoo-inc.com> <17399.20883.741021.688682@caddis.yogotech.com> <Pine.LNX.4.62.0602182107440.31913@decibel.pvv.ntnu.no> <200602211011.39387.kurt@intricatesoftware.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 21 Feb 2006, Kurt Miller wrote:
> Thanks for the explanation and also to Nate for the Multicast
> history. I've looked into this a bit more over the weekend and
> found that the network stack promotes SO_REUSEADDR to include
> SO_REUSEPORT for multicast addresses, so I believe that case is
> covered already. I ran the network jck's on the 1.5 jvm with your
> patch and found that SO_REUSEPORT is still needed to pass the jck's
> but for datagram sockets only.

I guess we have to emulate Solaris to pass these, even if I think
the Solaris behaviour is a bit bad.

> Could you try this patch and test it with the program you referred
> to above?

I'll see if I can try this tomorrow; it *should* work for the applications
I'm worried about since those are all using TCP sockets only.  Please
update the comment to say why the "bug-compatibility" is there.

Something like:

  /*
   * On Solaris, SO_REUSEADDR will allow multiple datagram
   * sockets to bind to the same port.  The network jck tests
   * for this "feature", so we need to emulate it by turning on
   * SO_REUSEPORT as well for that combination.
   */

  -  Arne H. J.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.LNX.4.62.0602231735500.8287>