[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (ITS#4341) Old style configuration of dynlist segfaults



> Use of the old style of dynlist configuration:
> 
> overlay dynlist
> dynlist-oc blah
> dynlist-ad yada
> 
> ... will cause slapd and slaptest to segfault during attr_merge_normalize.

The root problem is that (you can see it if you enable some logging) the
old-style configuration is not recognized any more; as a consequence,
HEAD bails out, while re23 just ignores it.

It follows that when back-config causes the overlay's data to be
emitted, there's nothing to emit; this is acceptable, because it just
means that the overlay was instantiated but no pairs have been
configured yet, so the emit function returns success.  back-config
assumes that in case of success there is some value to add to the entry,
and calls attr_merge*().  I'd prefer to fix back-config so that in case
of success it tolerates that no value is present and just skips it,
although returning error from dynlist emitting would make no harm;
however, this would sort of indicate that there is an error in a case
that is perfectly legal and fine.

> 
> Sidenote, http://www.openldap.org/faq/data/cache/1209.html should be cleaned up
> to remove olders configuration notes for dynlist.

Right.  Note that the syntax changed during the lifetime of OpenLDAP
2.3, and the change also applies to OpenLDAP 2.2 (dynlist is not
distributed with 2.2, but AFAIK it compiles and works just fine).

This would not normally occur, but dynlist has always been considered
experimental.

p.




Ing. Pierangelo Masarati
Responsabile Open Solution
OpenLDAP Core Team

SysNet s.n.c.
Via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
------------------------------------------
Office:   +39.02.23998309          
Mobile:   +39.333.4963172
Email:    pierangelo.masarati@sys-net.it
------------------------------------------