Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
None
-
None
Description
Modifying an entry and removing an attribute creates a LDIF enry like :
dn: cn=test,ou=users,ou=system
changetype: modify
delete: userPassword
-
which is transformed to a ModifyRequest with a Modification containing the attribute and a 'null' value, which is wrong.
The AttributeUtils.toApiAttributes() method uses :
...
for ( NamingEnumeration<?> values = jndiAttribute.getAll(); values.hasMoreElements(); )
{
Object value = values.nextElement();
if ( value instanceof String )
{ attribute.add( ( String ) value ); }else if ( value instanceof byte[] )
{ attribute.add( ( byte[] ) value ); }else
{ attribute.add( ( String ) null ); <-------------- Wrong ! }}