Hi,

Here is a little patch, fixing the ldap cache using shared memory.
After the fix for plateform using SHM or not, it was a problem with cache init, unable to get it's rmm address to alloc memory.


I modified the cache alloc for the two cases, with and without SHM, now not using more util_ald_alloc but normal alloc function.
Tested on Linux with SHM, it's working well.


Matthieu

Index: util_ldap_cache_mgr.c
===================================================================
RCS file: /home/cvs/httpd-2.0/modules/experimental/util_ldap_cache_mgr.c,v
retrieving revision 1.9
diff -u -r1.9 util_ldap_cache_mgr.c
--- util_ldap_cache_mgr.c       16 Nov 2003 02:22:25 -0000      1.9
+++ util_ldap_cache_mgr.c       10 Dec 2003 10:54:06 -0000
@@ -301,9 +301,9 @@
         return NULL;
 
 #if APR_HAS_SHARED_MEMORY
-    cache = (util_ald_cache_t *)util_ald_alloc(st->cache_rmm, 
sizeof(util_ald_cache_t));
+    cache = (util_ald_cache_t *)apr_rmm_addr_get(st->cache_rmm, 
apr_rmm_calloc(st->cache_rmm, sizeof(util_ald_cache_t)));
 #else
-    cache = (util_ald_cache_t *)util_ald_alloc(NULL, sizeof(util_ald_cache_t));
+    cache = (util_ald_cache_t *)calloc(sizeof(util_ald_cache_t), 1);
 #endif
     if (!cache)
         return NULL;

Reply via email to