Closed Bug 557299 Opened 11 years ago Closed 7 years ago
Remove declaration of bogus and nonexistent CERT
_Destroy RDN function from public NSS header files
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:18.104.22.168) Gecko/20100330 Fedora/3.5.9-1.fc12 Firefox/3.5.9 Build Identifier: 3.12.6 The function CERT_DestroyRDN is defined as an exported function in cert.h. However it is not implemented and hence not exported in the library. Reproducible: Always Steps to Reproduce: 1. call CERT_DestroyRDN() Actual Results: undefined symbol: CERT_DestroyRDN The work around appears to be calling PORT_FreeArena() passing the arena used to create the RDN.
Related to/duplicate of bug 294538?
This bug would be a candidate to duplicate against bug 294538 if the function cited existed and was legitimate, but in this case, it doesn't exist, and should not exist. RDNs are meant to always be created in PLArenaPools. The only ways to deallocate memory allocated from PLArenaPools are to destroy the PLArenaPool or to "mark" and "release" a portion of the PLArenaPool. There is no "free" for a single allocation that has been allocated from a PLArenaPool. So, the "work around" described in comment 0 is in fact the solution for someone wanting to free an RDN, and we should eliminate the bogus function declaration to eliminate further confusion.
Status: UNCONFIRMED → NEW
Ever confirmed: true
OS: Linux → All
Priority: -- → P3
Hardware: x86 → All
Summary: CERT_DestroyRDN defined in cert.h but not implemented → Remove declaration of bogus and nonexistent CERT_DestroyRDN function from public NSS header files
Version: unspecified → 3.0
Assignee: nobody → cykesiopka.bmo
Kai, maybe you can assist with this checkin? :)
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → 3.16.1
You need to log in before you can comment on or make changes to this bug.