]> git.sur5r.net Git - openldap/commitdiff
handle SLAP_MOD_SOFTDEL (ITS#7487) and other internal modification specifiers
authorPierangelo Masarati <ando@OpenLDAP.org>
Tue, 8 Jan 2013 16:39:00 +0000 (17:39 +0100)
committerPierangelo Masarati <ando@OpenLDAP.org>
Tue, 8 Jan 2013 16:40:39 +0000 (17:40 +0100)
servers/slapd/overlays/memberof.c

index 502cb46fc1bd4f8037fe32dd158d21b4437bf918..84c145769954dbc0e140e3899d2314e1c07c0e26 100644 (file)
@@ -1420,6 +1420,7 @@ memberof_res_modify( Operation *op, SlapReply *rs )
 
                        switch ( ml->sml_op ) {
                        case LDAP_MOD_DELETE:
+                       case SLAP_MOD_SOFTDEL: /* ITS#7487: can be used by syncrepl (in mirror mode?) */
                                vals = ml->sml_nvalues;
                                if ( vals != NULL ) {
                                        for ( i = 0; !BER_BVISNULL( &vals[ i ] ); i++ ) {
@@ -1451,6 +1452,8 @@ memberof_res_modify( Operation *op, SlapReply *rs )
                                /* fall thru */
        
                        case LDAP_MOD_ADD:
+                       case SLAP_MOD_SOFTADD: /* ITS#7487 */
+                       case SLAP_MOD_ADD_IF_NOT_PRESENT : /* ITS#7487 */
                                assert( ml->sml_nvalues != NULL );
                                vals = ml->sml_nvalues;
                                for ( i = 0; !BER_BVISNULL( &vals[ i ] ); i++ ) {