Bug 748923 - Error handling in src/cache.c:ldap_cache_addrdatalist is broken
Summary: Error handling in src/cache.c:ldap_cache_addrdatalist is broken
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Fedora
Classification: Fedora
Component: bind-dyndb-ldap
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Adam Tkac
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-10-25 15:13 UTC by Adam Tkac
Modified: 2013-04-30 23:50 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-10-31 16:10:50 UTC
Type: ---


Attachments (Terms of Use)

Description Adam Tkac 2011-10-25 15:13:07 UTC
Description of problem:
Error handling in src/cache.c:ldap_cache_addrdatalist is broken.

Version-Release number of selected component (if applicable):
bind-dyndb-ldap-1.0.0-0.2.b1.fc17

Additional info:
The cache->mutex is not unlocked in the following code path due to CHECK() macro.
...
        if (result == ISC_R_EXISTS) {
                /* Replace it */
                CHECK(dns_rbt_deletename(cache->rbt, name, ISC_FALSE));
                goto retry;
        } else if (result != ISC_R_SUCCESS) {
...


Note You need to log in before you can comment on or make changes to this bug.