Full_Name: Ryan Tandy Version: master, RE24 OS: Debian URL: Submission from: (NULL) (24.68.121.206)
Hi,
Debian bug report: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=603544
Steps to reproduce:
ln -s /usr/local/etc/openldap/schema/core.schema core+test.schema echo 'include ./core+test.schema' > slapd.confA0Amkdir slapd.d slaptest -f slapd.conf -F slapd.d
Before commit d1b38bd ("ITS#6967 normalize schema RDN"), this fails with:
config_build_entry: build "cn={0}core+test" failed: "(null)" backend_startup_one (type=config, suffix="cn=config"): bi_db_open failed! (-1)
but slapd still works if running with slapd.conf only (-F omitted).
After that commit, slaptest and slapd both crash shortly after rdnNormalize at bconfig.c:6841. rdnNormalize() fails because the constructed DN is not valid, but its return value is not checked.
It would be really nice if it would automatically escape or replace inappropriate characters in the filename, but I'll understand if that's asking too much. :)
(Alternatively, if there are restrictions on what is considered a valid schema filename, please document them.)