[Date Prev][Date Next]
Re: (ITS#6172) Crash with baseObject in back-sql
> email@example.com wrote:
>> slapd gets terminated by libc with an "invalid free" error message when
>> 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
>> "entry_dup". This does not match (any more?). Essentially what the code
>> 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
>> cleanly without having to create a temporary dynamic object there is no
>> 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.
All in all, I favored using your patch as is. It's now in HEAD, please
test. Thanks, p.