This is a multi-part message in MIME format.
--------------020700010705000602080304
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Full_Name: Buchan Milne
Version: 2.3.41
OS: Linux 2.6
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (196.207.32.38)
I have not run this same test case on 2.4.x yet, but I remember having problems
trying to change passwords on 2.4.10 with a very similar configuration, so I
think it exists in 2.4.10 as well.
Please try this patch...
--
-- Howard Chu
CTO, Symas Corp.
http://www.symas.com
Director, Highland Sun
http://highlandsun.com/hyc/
Chief Architect, OpenLDAP
http://www.openldap.org/project/
--------------020700010705000602080304
Content-Type: text/plain;
name="dif.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="dif.txt"
Index: ppolicy.c
===================================================================
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/overlays/ppolicy.c,v
retrieving revision 1.115
diff -u -r1.115 ppolicy.c
--- ppolicy.c 12 Jun 2008 19:12:35 -0000 1.115
+++ ppolicy.c 8 Jul 2008 09:55:17 -0000
@@ -1401,7 +1401,7 @@
Attribute *pa, *ha, at;
const char *txt;
pw_hist *tl = NULL, *p;
- int zapReset, send_ctrl = 0;
+ int zapReset, send_ctrl = 0, pwexop = 0;
Entry *e;
struct berval newpw = BER_BVNULL, oldpw = BER_BVNULL,
*bv, cr[2];
@@ -1526,6 +1526,7 @@
req_pwdexop_s *qpw = sc->sc_private;
newpw = qpw->rs_new;
oldpw = qpw->rs_old;
+ pwexop = 1;
break;
}
}
@@ -1581,7 +1582,7 @@
}
}
- } else if ( !is_at_operational( ml->sml_desc->ad_type ) ) {
+ } else if ( !pwexop && !is_at_operational( ml->sml_desc->ad_type ) ) {
mod_pw_only = 0;
/* modifying something other than password */
}
--------------020700010705000602080304--