]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-bdb/group.c
Add calls to module_init/module_kill to support dynamically loaded backends.
[openldap] / servers / slapd / back-bdb / group.c
index 59a33e94b387b6d93699bc98394b1fd4206fc281..20b768bbdb8c366af44cc8b773bcb89c4d071b1b 100644 (file)
@@ -40,7 +40,6 @@ bdb_group(
        int     rc = 1;
        Attribute *attr;
 
-       AttributeDescription *ad_objectClass = slap_schema.si_ad_objectClass;
        const char *group_oc_name = NULL;
        const char *group_at_name = group_at->ad_cname.bv_val;
 
@@ -79,10 +78,17 @@ bdb_group(
                txn = boi->boi_txn;
        }
 
-       if ( txn )
+       if ( txn ) {
                locker = TXN_ID( txn );
-       else
-               LOCK_ID ( bdb->bi_dbenv, &locker );
+       } else {
+               rc = LOCK_ID ( bdb->bi_dbenv, &locker );
+               switch(rc) {
+               case 0:
+                       break;
+               default:
+                       return 1;
+               }
+       }
 
        if (dn_match(&target->e_name, gr_ndn)) {
                /* we already have a LOCKED copy of the entry */