~ubuntu-branches/ubuntu/wily/openldap/wily-proposed

« back to all changes in this revision

Viewing changes to servers/slapd/back-meta/modify.c

  • Committer: Bazaar Package Importer
  • Author(s): Steve Langasek
  • Date: 2009-02-24 14:27:35 UTC
  • mfrom: (1.1.3 upstream)
  • mto: (0.3.1 squeeze)
  • mto: This revision was merged to the branch mainline in revision 16.
  • Revision ID: james.westby@ubuntu.com-20090224142735-e73y1g4r2pj6wdbf
Tags: 2.4.15-1
* New upstream version
  - Fixes a bug with the pcache overlay not returning cached entries
    (closes: #497697)
  - Update evolution-ntlm patch to apply to current Makefiles.
  - (tentatively) drop gnutls-ciphers, since this bug was reported to be
    fixed upstream in 2.4.8.  The fix applied in 2.4.8 didn't match the
    patch from the bug report, so this should be watched for regressions.
* Build against db4.7 instead of db4.2 at last!  Closes: #421946.
* Build with --disable-ndb, to avoid a misbuild when libmysqlclient is
  installed in the build environment.
* Add -D_GNU_SOURCE to CFLAGS, apparently required for building with
  current headers in unstable

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* $OpenLDAP: pkg/ldap/servers/slapd/back-meta/modify.c,v 1.52.2.7 2008/02/12 00:25:47 quanah Exp $ */
 
1
/* $OpenLDAP: pkg/ldap/servers/slapd/back-meta/modify.c,v 1.52.2.9 2009/01/22 00:01:07 kurt Exp $ */
2
2
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
3
3
 *
4
 
 * Copyright 1999-2008 The OpenLDAP Foundation.
 
4
 * Copyright 1999-2009 The OpenLDAP Foundation.
5
5
 * Portions Copyright 2001-2003 Pierangelo Masarati.
6
6
 * Portions Copyright 1999-2003 Howard Chu.
7
7
 * All rights reserved.
47
47
        struct berval   mapped;
48
48
        dncookie        dc;
49
49
        int             msgid;
50
 
        int             do_retry = 1;
 
50
        ldap_back_send_t        retrying = LDAP_BACK_RETRYING;
51
51
        LDAPControl     **ctrls = NULL;
52
52
 
53
53
        mc = meta_back_getconn( op, rs, &candidate, LDAP_BACK_SENDERR );
187
187
        rs->sr_err = ldap_modify_ext( mc->mc_conns[ candidate ].msc_ld, mdn.bv_val,
188
188
                        modv, ctrls, NULL, &msgid );
189
189
        rs->sr_err = meta_back_op_result( mc, op, rs, candidate, msgid,
190
 
                mt->mt_timeout[ SLAP_OP_MODIFY ], LDAP_BACK_SENDRESULT );
191
 
        if ( rs->sr_err == LDAP_UNAVAILABLE && do_retry ) {
192
 
                do_retry = 0;
 
190
                mt->mt_timeout[ SLAP_OP_MODIFY ], ( LDAP_BACK_SENDRESULT | retrying ) );
 
191
        if ( rs->sr_err == LDAP_UNAVAILABLE && retrying ) {
 
192
                retrying &= ~LDAP_BACK_RETRYING;
193
193
                if ( meta_back_retry( op, rs, &mc, candidate, LDAP_BACK_SENDERR ) ) {
194
194
                        /* if the identity changed, there might be need to re-authz */
195
195
                        (void)mi->mi_ldap_extra->controls_free( op, rs, &ctrls );