Diff for /servers/slapd/overlays/refint.c between versions 1.19.2.18 and 1.19.2.19

version 1.19.2.18, 2011/01/04 23:50:49 version 1.19.2.19, 2011/01/26 23:23:35
Line 1 Line 1
 /* refint.c - referential integrity module */  /* refint.c - referential integrity module */
 /* $OpenLDAP: pkg/ldap/servers/slapd/overlays/refint.c,v 1.19.2.17 2011/01/03 23:43:17 quanah Exp $ */  /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.  /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *   *
  * Copyright 2004-2011 The OpenLDAP Foundation.   * Copyright 2004-2011 The OpenLDAP Foundation.
Line 521  refint_search_cb( Line 521  refint_search_cb(
 static int  static int
 refint_repair(  refint_repair(
         Operation       *op,          Operation       *op,
         SlapReply       *rs,  
         refint_data     *id,          refint_data     *id,
         refint_q        *rq )          refint_q        *rq )
 {  {
         dependent_data  *dp;          dependent_data  *dp;
           SlapReply               rs = {REP_RESULT};
         int             rc;          int             rc;
   
         op->o_callback->sc_response = refint_search_cb;          op->o_callback->sc_response = refint_search_cb;
Line 535  refint_repair( Line 535  refint_repair(
         op->o_ndn = op->o_bd->be_rootndn;          op->o_ndn = op->o_bd->be_rootndn;
   
         /* search */          /* search */
         rc = op->o_bd->be_search( op, rs );          rc = op->o_bd->be_search( op, &rs );
   
         if ( rc != LDAP_SUCCESS ) {          if ( rc != LDAP_SUCCESS ) {
                 Debug( LDAP_DEBUG_TRACE,                  Debug( LDAP_DEBUG_TRACE,
Line 671  refint_repair( Line 671  refint_repair(
                 op2.o_dn = op2.o_bd->be_rootdn;                  op2.o_dn = op2.o_bd->be_rootdn;
                 op2.o_ndn = op2.o_bd->be_rootndn;                  op2.o_ndn = op2.o_bd->be_rootndn;
                 slap_op_time( &op2.o_time, &op2.o_tincr );                  slap_op_time( &op2.o_time, &op2.o_tincr );
                 if ( ( rc = op2.o_bd->be_modify( &op2, &rs2 ) ) != LDAP_SUCCESS ) {                  rc = op2.o_bd->be_modify( &op2, &rs2 );
                   if ( rc != LDAP_SUCCESS ) {
                         Debug( LDAP_DEBUG_TRACE,                          Debug( LDAP_DEBUG_TRACE,
                                 "refint_repair: dependent modify failed: %d\n",                                  "refint_repair: dependent modify failed: %d\n",
                                 rs2.sr_err, 0, 0 );                                  rs2.sr_err, 0, 0 );
Line 694  refint_qtask( void *ctx, void *arg ) Line 695  refint_qtask( void *ctx, void *arg )
         Connection conn = {0};          Connection conn = {0};
         OperationBuffer opbuf;          OperationBuffer opbuf;
         Operation *op;          Operation *op;
         SlapReply rs = {REP_RESULT};  
         slap_callback cb = { NULL, NULL, NULL, NULL };          slap_callback cb = { NULL, NULL, NULL, NULL };
         Filter ftop, *fptr;          Filter ftop, *fptr;
         refint_q *rq;          refint_q *rq;
Line 771  refint_qtask( void *ctx, void *arg ) Line 771  refint_qtask( void *ctx, void *arg )
   
                 if ( rq->db != NULL ) {                  if ( rq->db != NULL ) {
                         op->o_bd = rq->db;                          op->o_bd = rq->db;
                         refint_repair( op, &rs, id, rq );                          refint_repair( op, id, rq );
   
                 } else {                  } else {
                         BackendDB       *be;                          BackendDB       *be;
Line 784  refint_qtask( void *ctx, void *arg ) Line 784  refint_qtask( void *ctx, void *arg )
   
                                 if ( be->be_search && be->be_modify ) {                                  if ( be->be_search && be->be_modify ) {
                                         op->o_bd = be;                                          op->o_bd = be;
                                         refint_repair( op, &rs, id, rq );                                          refint_repair( op, id, rq );
                                 }                                  }
                         }                          }
                 }                  }

Removed from v.1.19.2.18  
changed lines
  Added in v.1.19.2.19


______________
© Copyright 1998-2020, OpenLDAP Foundation, info@OpenLDAP.org