From cd6c1abb69b1df38c70d132e67676eb8d34caa1d Mon Sep 17 00:00:00 2001
From: david_page <david_page@localhost>
Date: Thu, 03 May 2007 21:42:57 +0000
Subject: [PATCH] Issue [1347] PwP: Administrative reset sets pwdReset:TRUE when ds-cfg-force-change-on-reset:FALSE if ds-cfg-force-change-on-add:TRUE

---
 opends/src/server/org/opends/server/core/ModifyOperation.java |   17 +++++++++++------
 1 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/opends/src/server/org/opends/server/core/ModifyOperation.java b/opends/src/server/org/opends/server/core/ModifyOperation.java
index 87b7190..3eb12a8 100644
--- a/opends/src/server/org/opends/server/core/ModifyOperation.java
+++ b/opends/src/server/org/opends/server/core/ModifyOperation.java
@@ -2370,13 +2370,18 @@
           pwPolicyState.clearGraceLoginTimes();
           pwPolicyState.clearWarnedTime();
 
-          if (selfChange && pwPolicyState.getPolicy().forceChangeOnAdd())
+          if(pwPolicyState.getPolicy().forceChangeOnAdd()
+             || pwPolicyState.getPolicy().forceChangeOnReset())
           {
-            pwPolicyState.setMustChangePassword(false);
-          }
-          else if( pwPolicyState.getPolicy().forceChangeOnReset())
-          {
-            pwPolicyState.setMustChangePassword(! selfChange);
+            if (selfChange)
+            {
+              pwPolicyState.setMustChangePassword(false);
+            }
+            else
+            {
+              pwPolicyState.setMustChangePassword(
+                   pwPolicyState.getPolicy().forceChangeOnReset());
+            }
           }
 
           if (pwPolicyState.getPolicy().getRequireChangeByTime() > 0)

--
Gitblit v1.10.0