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

Escaping the special meaning of + in attribute value


We are using LDAP to store subscriber information such as vpimAddress,
mailRecipient etc. Our vpimAddress and mailRecipient values start with +. To
escape the special meaning of + in the dn, while adding the entries I am
enclosing the mailRecipient value in quotes. For example to add a node with
mailRecipient value +1231234345@ssb.com I give the dn as 
	dn: mailRecipient="+1231234345@ssb.com",o=myorganization,c=US.  
According to the LDAP standard given in rfc1779 the server has to parse the
dn string and put the value for dn in the database as
mailrecipient=+1231234345@ssb.com,o=myorganization,c=US. But Openldap
doesn't seem to do that, it puts the dn in the database with quotes around
it. I tried using \ also it puts the \ it doesn't parse the string and
remove the \. Is there a flag that I have to set in Openldap for it to parse
the string and ignore the quotes or \. It doesn't even complain if I try to
add it with out the quotes. The problem I am having with this is some
entries were added using quotes and some entries were added using \ so for
doing my search I have to give the exact way I added the entry either using
quotes or \ in order for me to get back the result otherwise it says
nosuchobject. If the standards were followed I won't have a problem using
either of them because it doesn't put the quotes or \ in the dn in the

Does somebody have a solution for this. Is there a flag to set to enable the
string parsing, or is it a bug.

Thanks for the help,

Suneetha R. Nalla