]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-bdb/cache.c
Never let ldif_parse_line() return a NULL value with success.
[openldap] / servers / slapd / back-bdb / cache.c
index dcfa51c68e5dd63db08d195fe32799dd55594913..ab0cec701cae25978bcb42362e81f40579b4940f 100644 (file)
@@ -45,6 +45,7 @@ static int    bdb_cache_delete_entry_internal(Cache *cache, Entry *e);
 static void    bdb_lru_print(Cache *cache);
 #endif
 
+#if 0  /* unused */
 static int
 bdb_cache_entry_rdwr_lock(Entry *e, int rw)
 {
@@ -98,6 +99,7 @@ bdb_cache_entry_rdwr_unlock(Entry *e, int rw)
        else
                return ldap_pvt_thread_rdwr_runlock(&BEI(e)->bei_rdwr);
 }
+#endif /* unused */
 
 static int
 bdb_cache_entry_rdwr_init(Entry *e)
@@ -136,6 +138,9 @@ int
 bdb_cache_entry_db_lock
 ( DB_ENV *env, u_int32_t locker, Entry *e, int rw, u_int32_t flags, DB_LOCK *lock )
 {
+#ifdef NO_THREADS
+       return 0;
+#else
        int       rc;
        DBT       lockobj;
        int       db_rw;
@@ -149,17 +154,33 @@ bdb_cache_entry_db_lock
        lockobj.size = e->e_nname.bv_len;
        rc = LOCK_GET(env, locker, flags | DB_LOCK_NOWAIT,
                                        &lockobj, db_rw, lock);
+       if (rc) {
+#ifdef NEW_LOGGING
+               LDAP_LOG( CACHE, DETAIL1, 
+                       "bdb_cache_entry_db_lock: entry %s, rw %d, rc %d\n",
+                       e->e_nname.bv_val, rw, rc );
+#else
+               Debug( LDAP_DEBUG_TRACE,
+                       "bdb_cache_entry_db_lock: entry %s, rw %d, rc %d\n",
+                       e->e_nname.bv_val, rw, rc );
+#endif
+       }
        return rc;
+#endif /* NO_THREADS */
 }
 
 int
 bdb_cache_entry_db_unlock
 ( DB_ENV *env, DB_LOCK *lock )
 {
+#ifdef NO_THREADS
+       return 0;
+#else
        int rc;
 
        rc = LOCK_PUT ( env, lock );
        return rc;
+#endif
 }
 
 /*