]> git.sur5r.net Git - openldap/commitdiff
ITS#8215 Make editing of invalid entries possible
authorOndřej Kuzník <ondra@mistotebe.net>
Tue, 11 Aug 2015 12:28:43 +0000 (14:28 +0200)
committerHoward Chu <hyc@openldap.org>
Sun, 25 Oct 2015 09:02:39 +0000 (09:02 +0000)
If the database does not conform to any known schema, make it possible
to edit such a database using slapmodify when schema-checking is
disabled.

servers/slapd/slapmodify.c

index 96c1c09f977185d1dd3c2d5439896b2fd6813374..5ceec3e210b6facf9d3704eef318a04e6bbb8320 100644 (file)
@@ -38,6 +38,8 @@
 
 #include "slapcommon.h"
 
+extern int slap_DN_strict;     /* dn.c */
+
 static char csnbuf[ LDAP_PVT_CSNSTR_BUFSIZE ];
 
 int
@@ -98,9 +100,12 @@ slapmodify( int argc, char **argv )
        lmax = 0;
        nextline = 0;
 
-       /* enforce schema checking unless not disabled */
+       /* enforce schema checking unless not disabled and allow unknown
+        * attributes otherwise */
        if ( (slapMode & SLAP_TOOL_NO_SCHEMA_CHECK) == 0) {
                SLAP_DBFLAGS(be) &= ~(SLAP_DBFLAG_NO_SCHEMA_CHECK);
+       } else {
+               slap_DN_strict = 0;
        }
 
        if( !dryrun && be->be_entry_open( be, 1 ) != 0 ) {