ldap: "additional info: objectClass: value #0 invalid per syntax"
slapd のセットアップで、ドキュメントに基づいて
# cat ~/admin.ldif dn: dc=example,dc=com objectClass: organization objectClass: dcObject dc: example o: example dn: cn=admin,dc=example,dc=com objectClass: organizationalRole cn: admin
を ldapadd
しようとしたら
# ldapadd -Y EXTERNAL -H ldapi:// -f ~/admin.ldif SASL/EXTERNAL authentication started SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth SASL SSF: 0 adding new entry "dc=example,dc=com" ldap_add: Invalid syntax (21) additional info: objectClass: value #0 invalid per syntax
というエラーが。
どうやらこれは objectClass
が定義されていない時に出るエラーらしいが、 organization
も dcObject
も core.schema にあるし普通に定義されている。
おかしいな〜と思ってググってると同じような症状の人が。
https://www.openldap.org/lists/openldap-software/200110/msg00255.html
なるほど最後のスペース…と思って自分のものを見なおしてみたら含まれていた!!!!
どうやら openldap のドキュメントからそのままコピーしたらスペースが含まれてしまうらしい。気をつけましょう…。
↑の人はこれで2日潰れたらしい。2日は潰しませんでしたが2時間は潰しました…。