private static void ChangePasswordDelAdd()

in src/Zyborg.PassCore.PasswordProvider.LDAP/LdapPasswordChangeProvider.cs [157:168]


        private static void ChangePasswordDelAdd(string currentPassword, string newPassword, ILdapConnection ldap, string userDN)
        {
            var oldPassBytes = Encoding.Unicode.GetBytes($@"""{currentPassword}""");
            var newPassBytes = Encoding.Unicode.GetBytes($@"""{newPassword}""");

            var oldAttr = new LdapAttribute("unicodePwd", oldPassBytes);
            var newAttr = new LdapAttribute("unicodePwd", newPassBytes);

            var ldapDel = new LdapModification(LdapModification.Delete, oldAttr);
            var ldapAdd = new LdapModification(LdapModification.Add, newAttr);
            ldap.Modify(userDN, new[] { ldapDel, ldapAdd }); // Change with Delete/Add
        }