]> git.sur5r.net Git - openldap/commitdiff
ITS#3725 fix
authorKurt Zeilenga <kurt@openldap.org>
Sat, 14 May 2005 18:52:15 +0000 (18:52 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Sat, 14 May 2005 18:52:15 +0000 (18:52 +0000)
servers/slapd/add.c
servers/slapd/modify.c

index 77e3dea9dbd1cba13632069bc8f15a18cee0e6b0..39480b5c932bc3e1547531581a98860ab86b7e8e 100644 (file)
@@ -264,7 +264,7 @@ fe_op_add( Operation *op, SlapReply *rs )
                goto done;
        }
 
-       rs->sr_err = slap_mods_no_user_mod_check( op, modlist,
+       rs->sr_err = slap_mods_obsolete_check( op, modlist,
                &rs->sr_text, textbuf, textlen );
 
        if ( rs->sr_err != LDAP_SUCCESS ) {
index 49570835a49deca96c2fe1e4d837cc0abd32028f..77b0d5013a2a630dd7fc6559227788b7b3ae77dd 100644 (file)
@@ -575,15 +575,16 @@ slap_mods_no_user_mod_check(
        for ( ; ml != NULL; ml = ml->sml_next ) {
                if ( !is_at_no_user_mod( ml->sml_desc->ad_type ) ) continue;
 
-               if ( ml->sml_desc->ad_type->sat_flags & SLAP_AT_MANAGEABLE ) {
-                       continue;
-               }
-
                if( get_manageDIT( op )) {
+                       if ( ml->sml_desc->ad_type->sat_flags & SLAP_AT_MANAGEABLE ) {
+                               continue;
+                       }
+
                        /* attribute not manageable */
                        snprintf( textbuf, textlen,
                                "%s: no-user-modification attribute not manageable",
                                ml->sml_type.bv_val );
+
                } else {
                        /* user modification disallowed */
                        snprintf( textbuf, textlen,