openssl(a)mkarcher.dialup.fu-berlin.de wrote:
> slapd gets terminated by libc with an "invalid free" error message when using
> the baseObject configuration option (whether with or without file) at the time
> of the first query.
>
> This is caused by freeing an entry using "free" that has been allocated using
> "entry_dup". This does not match (any more?). Essentially what the code was
> trying to to is to duplicate the sql_baseObject to bsi_e. The fix I suggest adds
> a function "entry_dup_to" to slapd so that backends can do this operation
> cleanly without having to create a temporary dynamic object there is no obvious
> clean way to get rid of.
I'd rather have a function that returns the entry struct to the pool
without calling entry_clean(), to avoid as much as possible code
duplication. In any case, good catch.
Thanks, p.