Not sure if this is the expected behavior, but I note that writing stuff
like
dn: olcDatabase={X}bdb,dc=config
changetype: modify
add: olcAccess
olcAccess: to attrs=userPassword by self =xw by * =x
olcAccess: to * by * read
fails because the {0}, {1} were omitted from the values of the olcAccess
attributes. I'd expect that the values get appended, in that order, to
any existing value of olcAccess.
Also, an operation like
dn: olcDatabase={X}bdb,dc=config
changetype: modify
delete: olcAccess
olcAccess: {0}
fails because the validation routine, after stripping the {0}, passes an
empty berval to the directoryString validation routine, which fails.
I'd expect that value {0} be deleted, if existing, whatever its value.
p.