Re: PROBLEM: select() says closed socket readable

From: Mike Jagdis (jaggy@purplet.demon.co.uk)
Date: Tue Aug 21 2001 - 04:02:32 EST


David S. Miller wrote:
> From: Jay Rogers <jay@rgrs.com>
> Date: Mon, 20 Aug 2001 10:34:09 -0400
>
> > Right. It does not block on read, hence it is readable.
>
> No, a socket that's never been connected isn't readable, hence
> select() shouldn't be returning a value of 1 on it.
>
> You may read without blocking, select() returns 1.

By this logic a socket that is set non-blocking should always be
treated as readable. I think we can all agree that argument is
flawed :-).

The prevailing view from other systems appears to be that reading
from an unconnected (or unconnectING) socket is meaningless so
the socket is not readable.

Presumably there is a damn good reason, or a standards reference,
why that is the wrong behaviour and should be changed?

                                Mike

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Aug 23 2001 - 21:00:40 EST