[Date Prev][Date Next]
Re: ber_memfree debugging
"Kurt D. Zeilenga" wrote:
> At 09:39 PM 6/6/99 +0200, Bert Vermeulen wrote:
> >It's bombing out on me because
> >ldap_str2attributetype() in libldap frees pointers regardless if they've
> >been used or not.
> Before the recent memory allocation changes, this code called
> free(NULL). This is a bug. OpenLDAP should not assume
> STDC semantics. I've added asserts specifically to detect
> such bugs.
IIRC, it called ldap_memfree, that was NULL-safe. If the free routines
are now NULL-unsafe, the code should be fixed. Should I do this?
On a related topic, Bert has asked me to externalize free_syn, free_at
and free_oc (whose names would have to be prefixed by ldap_ or something)
so that they can be used from clients. I see no problem with this, except
that current code in slapd presumes that once such an entity has been
passed to at_add, oc_add, etc. it will not be freed since it just copies
pointers around except for temporary copies made at places outside of
schemaparse.c and friends. We may do it with this restriction.