X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fback-ldbm%2Fid2children.c;h=69a5d7c58978bda4b3a2f67763c40546ac12a2e7;hb=ab620c46541dd9b8306008a170cc5a5be0f12eb2;hp=23e64f755946199124e05b0b2cccc2f84152502e;hpb=35bd609e16fc372ab91a45263a1f54685326bc5d;p=openldap diff --git a/servers/slapd/back-ldbm/id2children.c b/servers/slapd/back-ldbm/id2children.c index 23e64f7559..69a5d7c589 100644 --- a/servers/slapd/back-ldbm/id2children.c +++ b/servers/slapd/back-ldbm/id2children.c @@ -20,14 +20,10 @@ id2children_add( struct dbcache *db; Datum key; int len, rc; - IDList *idl; + ID_BLOCK *idl; char buf[20]; -#ifdef HAVE_BERKELEY_DB2 - Datum data; - memset( &key, 0, sizeof( key ) ); - memset( &data, 0, sizeof( data ) ); -#endif + ldbm_datum_init( key ); Debug( LDAP_DEBUG_TRACE, "=> id2children_add( %lu, %lu )\n", p ? p->e_id : 0, e->e_id, 0 ); @@ -68,7 +64,7 @@ id2children_remove( struct dbcache *db; Datum key; int len, rc; - IDList *idl; + ID_BLOCK *idl; char buf[20]; Debug( LDAP_DEBUG_TRACE, "=> id2children_remove( %lu, %lu )\n", p ? p->e_id @@ -82,13 +78,13 @@ id2children_remove( return( -1 ); } - memset( &key, 0, sizeof(key) ); + ldbm_datum_init( key ); sprintf( buf, "%c%ld", EQ_PREFIX, p ? p->e_id : 0 ); key.dptr = buf; key.dsize = strlen( buf ) + 1; if ( idl_delete_key( be, db, key, e->e_id ) != 0 ) { - Debug( LDAP_DEBUG_TRACE, "<= id2children_remove -1 (idl_insert)\n", + Debug( LDAP_DEBUG_TRACE, "<= id2children_remove -1 (idl_delete)\n", 0, 0, 0 ); ldbm_cache_close( be, db ); return( -1 ); @@ -108,13 +104,11 @@ has_children( { struct dbcache *db; Datum key; - int rc; - IDList *idl; + int rc = 0; + ID_BLOCK *idl; char buf[20]; -#ifdef HAVE_BERKELEY_DB2 - memset( &key, 0, sizeof( key ) ); -#endif + ldbm_datum_init( key ); Debug( LDAP_DEBUG_TRACE, "=> has_children( %lu )\n", p->e_id , 0, 0 ); @@ -133,9 +127,13 @@ has_children( idl = idl_fetch( be, db, key ); ldbm_cache_close( be, db ); - rc = idl ? 1 : 0; - idl_free( idl ); - Debug( LDAP_DEBUG_TRACE, "<= has_children %d\n", rc, 0, 0 ); + if( idl != NULL ) { + idl_free( idl ); + rc = 1; + } + + Debug( LDAP_DEBUG_TRACE, "<= has_children( %lu ): %s\n", + p->e_id, rc ? "yes" : "no", 0 ); return( rc ); }