From 760f527af2d97f3aa744222e10905d356ef4fe06 Mon Sep 17 00:00:00 2001 From: Quanah Gibson-Mount Date: Tue, 12 Feb 2008 01:58:15 +0000 Subject: [PATCH] ITS#5328 - cosmetic cleanup --- servers/slapd/back-bdb/referral.c | 14 ++++++-------- servers/slapd/back-ldap/distproc.c | 2 +- servers/slapd/back-ldif/ldif.c | 19 +++++++++++-------- servers/slapd/back-monitor/operational.c | 2 +- servers/slapd/back-null/null.c | 9 ++++++--- servers/slapd/back-relay/op.c | 2 +- servers/slapd/backend.c | 2 +- servers/slapd/bconfig.c | 11 ++++++++--- 8 files changed, 35 insertions(+), 26 deletions(-) diff --git a/servers/slapd/back-bdb/referral.c b/servers/slapd/back-bdb/referral.c index 97d7e1176a..b2b2c68f5b 100644 --- a/servers/slapd/back-bdb/referral.c +++ b/servers/slapd/back-bdb/referral.c @@ -65,8 +65,8 @@ dn2entry_retry: case 0: break; case LDAP_BUSY: - send_ldap_error( op, rs, LDAP_BUSY, "ldap server busy" ); LOCK_ID_FREE ( bdb->bi_dbenv, locker ); + rs->sr_text = "ldap server busy"; return LDAP_BUSY; case DB_LOCK_DEADLOCK: case DB_LOCK_NOTGRANTED: @@ -76,13 +76,13 @@ dn2entry_retry: LDAP_XSTRING(bdb_referrals) ": dn2entry failed: %s (%d)\n", db_strerror(rc), rc, 0 ); - send_ldap_error( op, rs, LDAP_OTHER, "internal error" ); LOCK_ID_FREE ( bdb->bi_dbenv, locker ); - return rs->sr_err; + rs->sr_text = "internal error"; + return LDAP_OTHER; } if ( rc == DB_NOTFOUND ) { - rc = 0; + rc = LDAP_SUCCESS; rs->sr_matched = NULL; if ( e != NULL ) { Debug( LDAP_DEBUG_TRACE, @@ -117,9 +117,7 @@ dn2entry_retry: ber_bvarray_free( rs->sr_ref ); rs->sr_ref = NULL; } else if ( rc != LDAP_SUCCESS ) { - rs->sr_err = rc; rs->sr_text = rs->sr_matched ? "bad referral object" : NULL; - send_ldap_result( op, rs ); } LOCK_ID_FREE ( bdb->bi_dbenv, locker ); @@ -148,8 +146,8 @@ dn2entry_retry: ber_bvarray_free( rs->sr_ref ); rs->sr_ref = NULL; } else { - send_ldap_error( op, rs, LDAP_OTHER, "bad referral object" ); - rc = rs->sr_err; + rc = LDAP_OTHER; + rs->sr_text = "bad referral object"; } rs->sr_matched = NULL; diff --git a/servers/slapd/back-ldap/distproc.c b/servers/slapd/back-ldap/distproc.c index 77b31d3d1b..9341168243 100644 --- a/servers/slapd/back-ldap/distproc.c +++ b/servers/slapd/back-ldap/distproc.c @@ -298,7 +298,7 @@ ldap_distproc_operational( Operation *op, SlapReply *rs ) * database. This fix is likely to intercept also entries * generated by back-perl and so. */ if ( rs->sr_entry->e_private == NULL ) { - return 0; + return LDAP_SUCCESS; } return SLAP_CB_CONTINUE; diff --git a/servers/slapd/back-ldif/ldif.c b/servers/slapd/back-ldif/ldif.c index b90310b1a5..be9678e4af 100644 --- a/servers/slapd/back-ldif/ldif.c +++ b/servers/slapd/back-ldif/ldif.c @@ -777,9 +777,7 @@ ldif_back_referrals( Operation *op, SlapReply *rs ) rs->sr_ref = NULL; } else if ( rc != LDAP_SUCCESS ) { - rs->sr_err = rc; rs->sr_text = rs->sr_matched ? "bad referral object" : NULL; - send_ldap_result( op, rs ); } if ( rs->sr_matched ) { @@ -810,8 +808,8 @@ ldif_back_referrals( Operation *op, SlapReply *rs ) rs->sr_ref = NULL; } else { - send_ldap_error( op, rs, LDAP_OTHER, "bad referral object" ); - rc = rs->sr_err; + rc = LDAP_OTHER; + rs->sr_text = "bad referral object"; } rs->sr_matched = NULL; @@ -1212,6 +1210,7 @@ int ldif_back_entry_get( { struct ldif_info *li = (struct ldif_info *) op->o_bd->be_private; struct berval op_dn = op->o_req_dn, op_ndn = op->o_req_ndn; + int rc = LDAP_NO_SUCH_OBJECT; assert( ndn != NULL ); assert( !BER_BVISNULL( ndn ) ); @@ -1224,12 +1223,16 @@ int ldif_back_entry_get( op->o_req_ndn = op_ndn; ldap_pvt_thread_rdwr_runlock( &li->li_rdwr ); - if ( *ent && oc && !is_entry_objectclass_or_sub( *ent, oc ) ) { - entry_free( *ent ); - *ent = NULL; + if ( *ent ) { + rc = LDAP_SUCCESS; + if ( oc && !is_entry_objectclass_or_sub( *ent, oc ) ) { + rc = LDAP_NO_SUCH_ATTRIBUTE; + entry_free( *ent ); + *ent = NULL; + } } - return ( *ent == NULL ? 1 : 0 ); + return rc; } static int ldif_tool_entry_open(BackendDB *be, int mode) { diff --git a/servers/slapd/back-monitor/operational.c b/servers/slapd/back-monitor/operational.c index c801f82bf9..0b5542ea05 100644 --- a/servers/slapd/back-monitor/operational.c +++ b/servers/slapd/back-monitor/operational.c @@ -62,6 +62,6 @@ monitor_back_operational( ap = &(*ap)->a_next; } - return 0; + return LDAP_SUCCESS; } diff --git a/servers/slapd/back-null/null.c b/servers/slapd/back-null/null.c index d80b3d5e43..bc80698716 100644 --- a/servers/slapd/back-null/null.c +++ b/servers/slapd/back-null/null.c @@ -70,7 +70,8 @@ null_back_false( Operation *op, SlapReply *rs ) /* for overlays */ -int null_back_entry_get( +static int +null_back_entry_get( Operation *op, struct berval *ndn, ObjectClass *oc, @@ -78,8 +79,10 @@ int null_back_entry_get( int rw, Entry **ent ) { - *ent = NULL; - return 1; + assert( *ent == NULL ); + + /* don't admit the object isn't there */ + return oc || at ? LDAP_NO_SUCH_ATTRIBUTE : LDAP_BUSY; } diff --git a/servers/slapd/back-relay/op.c b/servers/slapd/back-relay/op.c index 7c453af925..dd0189b18b 100644 --- a/servers/slapd/back-relay/op.c +++ b/servers/slapd/back-relay/op.c @@ -431,7 +431,7 @@ relay_back_chk_referrals( Operation *op, SlapReply *rs ) } } - return relay_back_op( op, rs, bd, bd->be_chk_referrals, 0 ); + return relay_back_op( op, rs, bd, bd->be_chk_referrals, LDAP_SUCCESS ); } int diff --git a/servers/slapd/backend.c b/servers/slapd/backend.c index 7d6884a848..b36b65c3d1 100644 --- a/servers/slapd/backend.c +++ b/servers/slapd/backend.c @@ -1830,7 +1830,7 @@ fe_aux_operational( SlapReply *rs ) { Attribute **ap; - int rc = 0; + int rc = LDAP_SUCCESS; for ( ap = &rs->sr_operational_attrs; *ap; ap = &(*ap)->a_next ) /* just count them */ ; diff --git a/servers/slapd/bconfig.c b/servers/slapd/bconfig.c index 0be46d6b60..b65928e9a8 100644 --- a/servers/slapd/bconfig.c +++ b/servers/slapd/bconfig.c @@ -5298,18 +5298,23 @@ int config_back_entry_get( { CfBackInfo *cfb; CfEntryInfo *ce, *last; + int rc = LDAP_NO_SUCH_OBJECT; cfb = (CfBackInfo *)op->o_bd->be_private; ce = config_find_base( cfb->cb_root, ndn, &last ); if ( ce ) { *ent = ce->ce_entry; - if ( *ent && oc && !is_entry_objectclass_or_sub( *ent, oc ) ) { - *ent = NULL; + if ( *ent ) { + rc = LDAP_SUCCESS; + if ( oc && !is_entry_objectclass_or_sub( *ent, oc ) ) { + rc = LDAP_NO_SUCH_ATTRIBUTE; + *ent = NULL; + } } } - return ( *ent == NULL ? 1 : 0 ); + return rc; } static void -- 2.39.5