This is a multi-part message in MIME format.
--------------020700010705000602080304
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

[EMAIL PROTECTED] wrote:
> 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--


Reply via email to