Hello, > > Here's a hypothetical. The 'select' function gives you a 'read' hit. You > > call SSL_read (thinking there's application-level data, but you don't really > > know, do you?). SSL_read reads part of a re-negotiation but has no data to > > return to you, so it calls 'read' again (how does it know it's not supposed > > to block until it has data?). It is very simple - if SSL_read() has to do other work than reading application data records (encrypted user data) like renegotiation it should return WANT_READ. Than upper layer may retry SSL_read() after select(). For me this is SSL_read() problem and may be simply corrected.
> >That 'read' blocks forever because there was > > never any application-level data to read. Sorry, you're screwed. I do not agree. SSL_read() should be corrected. Best regards, -- Marek Marcola <[EMAIL PROTECTED]> ______________________________________________________________________ OpenSSL Project http://www.openssl.org User Support Mailing List openssl-users@openssl.org Automated List Manager [EMAIL PROTECTED]