This is the mail archive of the mauve-discuss@sourceware.org mailing list for the Mauve project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: New SocketChannel test that requires testing


Jeroen Frijters wrote:
> Casey Marshall wrote:
>> Maybe we are wrong for returning true for `isConnected' that 
>> early after trying to establish the connection; the test we're using
>> is whether or not the socket has a remote address or not, which may
>> not be the criteria we're interested in.
> 
> Yes, I believe that's incorrect. I think you can only transition into
> the connected state by calling finishConnect (if connect was called in
> non-blocking mode).
> 

That's not necessarily true; on some systems, even a non-blocking call
to connect() can succeed immediately, if you are connecting to the local
machine. It doesn't sound right that you get this condition even when
the server process hasn't pulled the connection off the queue, but that
may be how it works.

I wonder, now, if this is an artifact of our (new) RI: we call a
nonblocking connect() every time, then select() on the server's FD to
handle the blocking case, with timeout. This may be doing the wrong
thing with nonblocking sockets.

Thanks.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]