Description of problem: This is from Ade Lee: "If we add a brand new user on RHDS, making sure to set his NT attributes and to set the attributes to create a new user on the AD side, then everything works correctly. The AD user is created correctly and is not created in a disabled state, when an incremental update is made. If we take an existing RHDS user and simply add the NT attributes (ntDomainName) and the attributes to create a new user in AD, then the user is not created on the AD side on an incremental update. Also, on a full update, the user is created but is created in a disabled state." Version-Release number of selected component (if applicable): All current DS 7.1x with WinSync How reproducible: Consistently Steps to Reproduce: 1. Set up WinSync with AD 2. Test to see a brand new user with proper NT attributes gets sync'd to AD and is enabled. 3. Create a user in RHDS without NT attributes. The entry won't sync to AD. 4. Then add NT attributes to that user entry. Actual results: User doesn't sync to AD. If a full sync is issued, the entry will be sync'd to AD, but will be disabled. Expected results: When NT attributes are added, and entry should sync to AD, or at least a full sync should not result in a disabled user entry in AD.
Created attachment 328796 [details] diffs
Created attachment 328818 [details] better diffs
Created attachment 328899 [details] cvs commit log Reviewed by: nkinder (Thanks!) Fix Description: If we are replaying a modify operation, we need to check if the ntUser objectclass is being added along with the other attributes that tell the sync service to sync this entry. If the objectclass is being added or replaced, we check the existing entry to see if it is still a sync-able entry. If it is, we call process_replay_add to add the entry. I changed this function to accept a Slapi_Entry to add rather than the operation structure. Finally, I had to change the way we send the Account Control flags to take into account an entry that may have been added as a result of a modify operation. I fixed a memory leak when setting the Slapi_Attr attribute type, and cleaned up a compiler warning. NOTE: There will be no clear text password to send (unless the userPassword was modified in the same modify operation). This means the account will be added to Windows, and will be enabled, but will be essentially unusable - the user cannot login - until either the user modifies the password on the directory server side, or the administrator resets the password. Platforms tested: RHEL5 Flag Day: no Doc impact: yes - we will have to document the new winsync behavior
fix verified DS 8.1 RHEL 5 - Windows Synchronization 1.1.0 User added without nt attributes. User then modified and nt attributes added. Send and received updates. User correctly added to ADS and enabled. I do not see the new behavior documented in http://elladeon.fedorapeople.org/DirServer/8.1/admin/Windows_Sync.html Will open documentation bug and reference this bug.
sorry - didn't mean to change component
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHEA-2009-0455.html