In our case the pointer/allocated string ownership is preferable moved to the LDAPAVA object for both the value and attribute as the char* does not have the same lifetime as the LDAPAVA object.
Regards Erik On 2018-11-30 14:51, Howard Chu wrote: > [email protected] wrote: >> Full_Name: Erik Lax >> Version: 2.4.46 >> OS: Linux >> URL: >> Submission from: (NULL) (212.85.68.184) >> >> >> Hi, >> >> It's possible to set the flag LDAP_AVA_FREE_VALUE to clear ber values on the >> LDAPAVA structure in ldapava_free() but it's not possible to set the >> LDAP_AVA_FREE_ATTR to clear attributes. I suspect OpenLDAP internals does not >> need to free attributes in this way (hence the missing code). > Attribute Types are usually constant strings, so right, there should be no > need to free them. > >> I'm building a custom LDAPAVA (LDAPDN) object and it would be useful to be >> able >> to set this flags to have it properly clean up both values and attributes in >> ldap_dnfree(). > It would be better to simply avoid the need to free them. >
