[Date Prev][Date Next]
Re: (ITS#6798) Mutex starvation on two-level referral for SASL connection
- To: openldap-its@OpenLDAP.org
- Subject: Re: (ITS#6798) Mutex starvation on two-level referral for SASL connection
- From: email@example.com
- Date: Thu, 20 Jan 2011 10:24:32 GMT
- Auto-submitted: auto-generated (OpenLDAP-ITS)
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> On 01/19/2011 11:39 AM, firstname.lastname@example.org wrote:
>>> Full_Name: Stephen Gallagher
>>> Version: 2.4.21-0ubuntu5.2
>> I think this issue report is obsoleted by ITS#6510 (released with OL
>> 2.4.22), which prevents binds from returning referrals. Please upgrade
>> and re-check.
> Upgraded to 2.4.23 and the same behavior occurs. I note in issue 6510
> that it was suggested that nested mutexes could be used to resolve this.
> Perhaps we should revisit that.
No. Nested mutexes are non-portable, and as already discussed in #6510, it is
incorrect to process referrals returned in response to Bind requests.
> As you can see from our backtrace, this is actually occurring during the
> processing of ldap_result(). We're handling a rebind as ldap_result
> travels through a series of referrals.
Most likely your server is not using an actual Bind Response tag in its
response message. It would be good if you could run this using a debug build
(no optimization, full debug symbols present) and examine the tag that was
parsed from the referral result.
Looks like libldap needs to be changed to actually record the tag of the
outgoing requests. (It ought to do so anyway, and probably should return a
ProtocolError result if it receives a response message whose tag doesn't match
its request type.)
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/