Subject: Re: JDK1.1.1 (L*NUX port), was Re: applix
To: Nathaniel D. Daw <daw@panix.com>
From: Todd Vierling <tv@pobox.com>
List: port-i386
Date: 06/27/1997 13:42:15
On Fri, 27 Jun 1997, Nathaniel D. Daw wrote:
: It had something to do with attempting a nonblocking connect(), which
: either works differently under Linux or is improperly implemented in the
: JDK. From a ktrace, I think I found the JDK connect()s to the socket,
: select()s for completion, and then, when the select returns that the
: connection is complete, calls connect() a second time, getting the EISCONN
Funny; Pine relies on this behavior of a nonblocking connect (the EISCONN
return of the second call to connect()) to verify that a socket is connected
on most OSes. It's therefore very likely that the nb connect() procedure is
indeed different in Linux. If this can be verified, I suggest the fix below
be committed to the tree for completeness's sake.
: It's ugly, but you can patch the linux connect() wrapper code to silently
: return, supressing the EISCONN, and it works fine. With no access to the
: jdk source, nor to a real linux system, I was never able to confirm
: exactly what was wrong.
=====
== Todd Vierling (Personal tv@pobox.com; Business tv@iag.net) Foo-bar-baz! ==
== System administrator/technician, Internet Access Group, Orlando Florida ==
== Dialups in Orange, Volusia, Lake, Osceola counties - http://www.iag.net ==