} else {
int rc;
- const char *text = NULL;
- char textbuf[ SLAP_TEXT_BUFLEN ] = { '\0' };
-
rc = modify_check_duplicates( mods->sml_desc, mr,
NULL, mods->sml_bvalues, 0,
- &text, textbuf, sizeof( textbuf ) );
-
+ text, textbuf, textlen );
if ( rc != LDAP_SUCCESS ) {
return rc;
}
/* BDB backend specific entry info -- visible only to the cache */
typedef struct bdb_entry_info {
+#if 0
ldap_pvt_thread_rdwr_t bei_rdwr; /* reader/writer lock */
+#endif
/*
* remaining fields require backend cache lock to access
}
#endif /* unused */
+#if 0
static int
bdb_cache_entry_rdwr_init(Entry *e)
{
{
return ldap_pvt_thread_rdwr_destroy( &BEI(e)->bei_rdwr );
}
+#endif
static int
bdb_cache_entry_private_init( Entry *e )
e->e_private = ch_calloc(1, sizeof(struct bdb_entry_info));
+#if 0
if( bdb_cache_entry_rdwr_init( e ) != 0 ) {
free( BEI(e) );
e->e_private = NULL;
return 1;
}
+#endif
return 0;
}
{
assert( e->e_private );
+#if 0
bdb_cache_entry_rdwr_destroy( e );
+#endif
free( e->e_private );
e->e_private = NULL;
static slap_mask_t index_mask(
Backend *be,
AttributeDescription *desc,
- char **dbname,
struct berval *atname )
{
AttributeType *at;
if( mask ) {
*atname = desc->ad_cname;
- *dbname = desc->ad_cname.bv_val;
return mask;
}
if ( mask && ( mask ^ SLAP_INDEX_NOTAGS ) ) {
*atname = desc->ad_type->sat_cname;
- *dbname = desc->ad_type->sat_cname.bv_val;
return mask;
}
}
if ( mask && ( mask ^ SLAP_INDEX_NOSUBTYPES ) ) {
*atname = at->sat_cname;
- *dbname = at->sat_cname.bv_val;
return mask;
}
}
AttributeDescription *desc )
{
slap_mask_t mask;
- char *dbname;
struct berval prefix;
- mask = index_mask( be, desc, &dbname, &prefix );
+ mask = index_mask( be, desc, &prefix );
if( mask == 0 ) {
return LDAP_INAPPROPRIATE_MATCHING;
int rc;
slap_mask_t mask;
DB *db;
- char *dbname;
- mask = index_mask( be, desc, &dbname, prefixp );
+ mask = index_mask( be, desc, prefixp );
if( mask == 0 ) {
return LDAP_INAPPROPRIATE_MATCHING;
}
- rc = bdb_db_cache( be, NULL, dbname, &db );
+ rc = bdb_db_cache( be, NULL, prefixp->bv_val, &db );
if( rc != LDAP_SUCCESS ) {
return rc;
static int indexer(
Backend *be,
DB_TXN *txn,
- char *dbname,
struct berval *atname,
BerVarray vals,
ID id,
assert( mask );
- rc = bdb_db_cache( be, txn, dbname, &db );
+ rc = bdb_db_cache( be, txn, atname->bv_val, &db );
if ( rc != LDAP_SUCCESS ) {
#ifdef NEW_LOGGING
LDAP_LOG( INDEX, ERR,
- "bdb_index_read: Could not open DB %s\n", dbname, 0, 0 );
+ "bdb_index_read: Could not open DB %s\n",
+ atname->bv_val, 0, 0 );
#else
Debug( LDAP_DEBUG_ANY,
- "<= bdb_index_read NULL (could not open %s)\n",
- dbname, 0, 0 );
+ "bdb_index_read: Could not open DB %s\n",
+ atname->bv_val, 0, 0 );
#endif
return LDAP_OTHER;
}
}
if( mask ) {
- rc = indexer( be, txn, type->sat_cname.bv_val,
- &type->sat_cname,
+ rc = indexer( be, txn, &type->sat_cname,
vals, id, op,
mask );
}
if( mask ) {
- rc = indexer( be, txn, desc->ad_cname.bv_val,
- &desc->ad_cname,
+ rc = indexer( be, txn, &desc->ad_cname,
vals, id, op,
mask );