This is a multi-part message in MIME format. --------------000007040307000306010401 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit
[email protected] wrote: > Jan Vcelak wrote: >> ----- Original Message ----- >>> By the way, the patch in question was due to ITS#7035; you should >>> read that >>> ITS for the motivation behind this change. >> >> Yes, I have read that ITS. I'm just not sure, if I understand it >> correctly. My server runs on the same machine as the SSSD client. >> The connection should not be closed unexpectedly. Therefore >> I think that POLL_HANGUP is not relevant. > > To clarify - are all of the failures occuring when TLS is in use on the LDAP > session? It's common for the socket layer to have data, but for the TLS layer > to report that nothing is available yet since it hasn't read a complete record > yet. If that's what is happening here, then yes, we need to fix this patch. > Please test the attached patch and see if the problem is resolved, thanks. -- -- Howard Chu CTO, Symas Corp. http://www.symas.com Director, Highland Sun http://highlandsun.com/hyc/ Chief Architect, OpenLDAP http://www.openldap.org/project/ --------------000007040307000306010401 Content-Type: text/plain; charset=UTF-8; name="diff.txt" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="diff.txt" diff --git a/libraries/libldap/result.c b/libraries/libldap/result.c index b6e8e75..7241df9 100644 --- a/libraries/libldap/result.c +++ b/libraries/libldap/result.c @@ -302,7 +302,7 @@ wait4msg( if ( ber_sockbuf_ctrl( lc->lconn_sb, LBER_SB_OPT_DATA_READY, NULL ) ) { - lc_ready = 1; + lc_ready = 2; /* ready at ber level, not socket level */ break; } } @@ -373,8 +373,8 @@ wait4msg( } } LDAP_MUTEX_UNLOCK( &ld->ld_req_mutex ); - /* Quit looping if no one handled any events */ - if (!serviced) + /* Quit looping if no one handled any socket events */ + if (!serviced && lc_ready == 1) rc = -1; } LDAP_MUTEX_UNLOCK( &ld->ld_conn_mutex ); --------------000007040307000306010401--
