86ceedb Ticket #529 - dn normalization must handle multiple space characters in attributes

Authored and Committed by Noriko Hosoi 11 years ago
    Ticket #529 - dn normalization must handle multiple space characters in attributes
    
    Bug description: If dn has a leaf rdn which contains space(s)
    in the value (e.g., dn: cn=ABC DEF,...), it was allowed to add
    entries which dn is identical but the number of the spaces
    is different.  (e.g., dn: cn=ABC   DEF,...).
    
    Fix description: Applying this patch, dn normalization changes
    the behaviour so that multiple consecutive spaces are replaced
    with one.  But in case the attribute value pair in the rdn is
    not found in the entry and being added, the original spaces are
    kept in the attribute value.  For instance, if an entry
      dn: cn=ABC  DEF,dc=example,dc=com
    is added and the entry does not have
      cn: ABC  DEF
    in it, then in the added entry, the dn would be normalized to
      dn: cn=ABC DEF,dc=example,dc=com
    with the original cn value
      cn: ABC  DEF
    
    In addition:
    1) In entryrdn_rename_subtree, an error message was suppressed,
    which is issued when replacing an rdn with the one which is
    identical except the number of spaces (e.g., cn=ABC DEF -->
    cn=ABC   DEF).
    2) Fixed slapi_sdn_copy which used to trash the original dn
    value.  Now it copies the original correctly.
    3) Fixed a compiler warning in str2entry_fast.
    
    Reviewed by Ludwig (Thank you!!)
    
        
file modified
+30 -2
file modified
+11 -5
file modified
+9 -21