Bug 225352

Summary: CLA: resurrected value uses case of former value
Product: Red Hat Directory Server Reporter: Ulf Weltman <ulf.weltman>
Component: Replication - GeneralAssignee: Nathan Kinder <nkinder>
Status: CLOSED DUPLICATE QA Contact: Chandrasekar Kannan <ckannan>
Severity: medium Docs Contact:
Priority: high    
Version: 7.1CC: benl, nkinder
Target Milestone: DS8.1   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-11-21 17:38:44 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 183294, 249650    
Attachments:
Description Flags
fix proposal, compares Slapi_Value arrays and fix the case none

Description Ulf Weltman 2007-01-30 01:55:36 UTC
(JAGag29851)

If replication is enabled and you add a value to an attribute, like a cn of FOO,
then delete that value, and then add a cn of foo (lower case), it will show up
in the entry as FOO rather than foo.

The code in entry_add_present_values_wsi() eventually calls
slapi_attr_value_cmp() to figure out if the value exists on the deleted list. 
slapi_attr_value_cmp() uses the proper syntax plugin compare deleted values to
the value being added and since cn is case-ignore, it's a match.  Since it's
determined to exist on the deleted list it's simply moved onto the present list,
and the old case is resurrected.

Comment 1 Ulf Weltman 2007-03-01 01:03:45 UTC
Created attachment 148976 [details]
fix proposal, compares Slapi_Value arrays and fix the case

Please review:
Currently when a value is added and it's present on the deleted list (in
entrywsi), it's moved to the present list.  The proposed change will perform a
bitwise comparison on the values from the deleted list with the values that the
client passed for the operation, and if they don't match, it replaces the
resurrected Slapi_Value's berval with the one with the proper case specified by
the client.

Comment 2 Rich Megginson 2007-03-07 18:12:27 UTC
Fix looks good.

Comment 9 Nathan Kinder 2008-11-21 17:38:44 UTC

*** This bug has been marked as a duplicate of bug 428929 ***