Look on connection_read() if it returns positive so it has a chance

to exhaust all protocol units received from the transport layer.
I think this is the necessary fix for the TLS-data-ready/
socket-not-ready issue, but I have not experimented that problem
yet, so I am unsure about its effectiveness.
Now, do we need something like that for connection_write?  How would
we go about implementing it?
This commit is contained in:
Julio Sánchez Fernández 1999-07-16 18:53:30 +00:00
parent ea8669c37d
commit 0053b27ce0

View File

@ -689,6 +689,7 @@ slapd_daemon_task(
{
ber_socket_t rd;
int is_listener = 0;
int rc;
#ifdef HAVE_WINSOCK
rd = readfds.fd_array[i];
@ -719,7 +720,9 @@ slapd_daemon_task(
* active.
*/
if ( connection_read( rd ) < 0 ) {
while ( ( rc = connection_read( rd ) ) > 0 )
;
if ( rc < 0 ) {
slapd_close( rd );
}
}