> Actually, this page says: > "A descriptor shall be considered ready for reading when a > call to an input function with O_NONBLOCK clear would not > block, whether or not the function would transfer data > successfully."
Right, that is a hypothetical concurrent read. > Is that not to say that if select() says it's ready to read, > I'm guaranteed my next read() won't block? Nope. To say that, it would have to say "will not block". Instead it says "would not block". This refers to a hypothetical concurrent call not blocking at some instant in-between when you called 'select' and when it returned. For example, if you call 'stat' and get the size of a file, that size is the size at some instant in-between when you called 'stat' and when it returned. This is the same for all status-reporting functions. > I notice the 'would not block' instead of 'will not block'. > That makes me uneasy. Exactly. It is not referring to any actual call. DS ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED]