On Fri, May 27, 2005 at 09:10:50AM +0800, Eugene Konev wrote: > >> +# Find out slapd db directories > >> +SLAPD_DBDIRS=`sed -ne 's/^directory[[:space:]]\+"*\([^"]\+\).*/\1/p' \ > >> + "$SLAPD_CONF" ` > >> + > > TL> I'd rather gather this list at the time when it is needed. Apart from > TL> that I don't really grok that sed expression :) > > It has only possible failure if path contains double quotes in it, which > is very unlikely situation. And this:
Yes, I was able to parse it finally :)
> TL> +# Find bdb environment dirs
> TL> +find_bdb_envs() {
> TL> + local d
> TL> + for d in `awk '/directory/ {print $2}' < "$SLAPD_CONF"`; do
> TL> + if [ -d "$d" -a -f "$d/objectClass.bdb" ]; then
> TL> + echo $d
> TL> + fi
> TL> + done
> TL> +}
>
> will happily skip entries like:
> directory "/var/lib/ldap"
> (note the quotes), which are by default in sarge install.
Yep. I was using eval to strip them and removed that before sending the
email as it can have really serious results depending on your
slapd.conf.
Greetings
Torsten
signature.asc
Description: Digital signature

