You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by ji...@apache.org on 2009/05/15 17:04:38 UTC

svn commit: r775176 - in /httpd/httpd/trunk: include/ap_slotmem.h modules/slotmem/mod_slotmem_plain.c modules/slotmem/mod_slotmem_shm.c server/Makefile.in

Author: jim
Date: Fri May 15 15:04:37 2009
New Revision: 775176

URL: http://svn.apache.org/viewvc?rev=775176&view=rev
Log:
Final ( :) ) step to transition which removes the ap_slotmem_foo
API and just does providers direct

Modified:
    httpd/httpd/trunk/include/ap_slotmem.h
    httpd/httpd/trunk/modules/slotmem/mod_slotmem_plain.c
    httpd/httpd/trunk/modules/slotmem/mod_slotmem_shm.c
    httpd/httpd/trunk/server/Makefile.in

Modified: httpd/httpd/trunk/include/ap_slotmem.h
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/include/ap_slotmem.h?rev=775176&r1=775175&r2=775176&view=diff
==============================================================================
--- httpd/httpd/trunk/include/ap_slotmem.h (original)
+++ httpd/httpd/trunk/include/ap_slotmem.h Fri May 15 15:04:37 2009
@@ -48,13 +48,16 @@
 #include <unistd.h>         /* for getpid() */
 #endif
 
-#define AP_SLOTMEM_STORAGE "slotmem"
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define AP_SLOTMEM_PROVIDER_GROUP "slotmem"
+#define AP_SLOTMEM_PROVIDER_VERSION 0
 
-typedef enum {
-    SLOTMEM_PERSIST      /* create a persistent slotmem */
-} apslotmem_type;
+typedef unsigned int ap_slotmem_type_t;
 
-typedef struct ap_slotmem_t ap_slotmem_t;
+typedef struct ap_slotmem_instance_t ap_slotmem_instance_t;
 
 /**
  * callback function used for slotmem.
@@ -65,7 +68,7 @@
  */
 typedef apr_status_t ap_slotmem_callback_fn_t(void* mem, void *data, apr_pool_t *pool);
 
-struct ap_slotmem_storage_method {
+struct ap_slotmem_provider_t {
     /*
      * Name of the provider method
      */
@@ -78,7 +81,7 @@
      * @param pool is pool used
      * @return APR_SUCCESS if all went well
      */
-    apr_status_t (* slotmem_do)(ap_slotmem_t *s, ap_slotmem_callback_fn_t *func, void *data, apr_pool_t *pool);
+    apr_status_t (* doall)(ap_slotmem_instance_t *s, ap_slotmem_callback_fn_t *func, void *data, apr_pool_t *pool);
     /**
      * create a new slotmem with each item size is item_size.
      * This would create shared memory, basically.
@@ -89,7 +92,7 @@
      * @param pool is pool used
      * @return APR_SUCCESS if all went well
      */
-    apr_status_t (* slotmem_create)(ap_slotmem_t **new, const char *name, apr_size_t item_size, unsigned int item_num, apslotmem_type type, apr_pool_t *pool);
+    apr_status_t (* create)(ap_slotmem_instance_t **new, const char *name, apr_size_t item_size, unsigned int item_num, ap_slotmem_type_t type, apr_pool_t *pool);
     /**
      * attach to an existing slotmem.
      * This would attach to  shared memory, basically.
@@ -99,7 +102,7 @@
      * @param pool is pool to memory allocate.
      * @return APR_SUCCESS if all went well
      */
-    apr_status_t (* slotmem_attach)(ap_slotmem_t **new, const char *name, apr_size_t *item_size, unsigned int *item_num, apr_pool_t *pool);
+    apr_status_t (* attach)(ap_slotmem_instance_t **new, const char *name, apr_size_t *item_size, unsigned int *item_num, apr_pool_t *pool);
     /**
      * get the memory ptr associated with this worker slot.
      * @param s ap_slotmem_t to use.
@@ -107,7 +110,7 @@
      * @param mem address to store the pointer to the slot
      * @return APR_SUCCESS if all went well
      */
-    apr_status_t (* slotmem_mem)(ap_slotmem_t *s, unsigned int item_id, void**mem);
+    apr_status_t (* dptr)(ap_slotmem_instance_t *s, unsigned int item_id, void**mem);
     /**
      * retrieve the memory associated with this worker slot.
      * @param s ap_slotmem_t to use.
@@ -116,7 +119,7 @@
      * @param dest_len length of dataset to retrieve
      * @return APR_SUCCESS if all went well
      */
-    apr_status_t (* slotmem_get)(ap_slotmem_t *s, unsigned int item_id, unsigned char *dest, apr_size_t dest_len);
+    apr_status_t (* get)(ap_slotmem_instance_t *s, unsigned int item_id, unsigned char *dest, apr_size_t dest_len);
     /**
      * store the memory associated with this worker slot.
      * @param s ap_slotmem_t to use.
@@ -125,120 +128,24 @@
      * @param src_len length of dataset to store in the slot
      * @return APR_SUCCESS if all went well
      */
-    apr_status_t (* slotmem_put)(ap_slotmem_t *slot, unsigned int item_id, unsigned char *src, apr_size_t src_len);
+    apr_status_t (* put)(ap_slotmem_instance_t *slot, unsigned int item_id, unsigned char *src, apr_size_t src_len);
     /**
      * return number of slots allocated for this entry.
      * @param s ap_slotmem_t to use.
      * @return number of slots
      */
-    unsigned int (* slotmem_num_slots)(ap_slotmem_t *s);
+    unsigned int (* num_slots)(ap_slotmem_instance_t *s);
     /**
      * return slot size allocated for this entry.
      * @param s ap_slotmem_t to use.
      * @return size of slot
      */
-    apr_size_t (* slotmem_slot_size)(ap_slotmem_t *s);
+    apr_size_t (* slot_size)(ap_slotmem_instance_t *s);
 };
 
-typedef struct ap_slotmem_storage_method ap_slotmem_storage_method;
-
-/*
- * mod_slotmem externals exposed to the outside world.
- *  Thus the provider nature of mod_slotmem is somewhat insulated
- *  from the end user but can still be used directed if need
- *  be. The rationale is to make it easier for additional
- *  memory providers to be provided and having a single
- *  simple interface for all
- */
-/**
- * obtain the array of provider methods desired
- * @param pool is the pool to use
- * @return pointer to array of provider names available
- */
-AP_DECLARE(apr_array_header_t *) ap_slotmem_methods(apr_pool_t *pool);
-/**
- * obtain the provider method desired
- * @param provider is name of the provider to use
- * @return pointer to provider or NULL
- */
-AP_DECLARE(ap_slotmem_storage_method *) ap_slotmem_method(const char *provider);
-/**
- * call the callback on all worker slots
- * @param sm ap_slotmem_storage_method provider obtained
- * @param s ap_slotmem_t to use.
- * @param funct callback function to call for each element.
- * @param data parameter for the callback function.
- * @param pool is pool used
- * @return APR_SUCCESS if all went well
- */
-AP_DECLARE(apr_status_t) ap_slotmem_do(ap_slotmem_storage_method *sm, ap_slotmem_t *s, ap_slotmem_callback_fn_t *func, void *data, apr_pool_t *pool);
-
-/**
- * create a new slotmem with each item size is item_size.
- * This would create shared memory, basically.
- * @param sm ap_slotmem_storage_method provider obtained
- * @param name is a key used for debugging and in mod_status output or allow another process to share this space.
- * @param item_size size of each item
- * @param item_num number of item to create.
- * @param type (persistent/allocatable/etc)
- * @param pool is pool used
- * @return APR_SUCCESS if all went well
- */
-AP_DECLARE(apr_status_t) ap_slotmem_create(ap_slotmem_storage_method *sm, ap_slotmem_t **new, const char *name, apr_size_t item_size, unsigned int item_num, apslotmem_type type, apr_pool_t *pool);
-
-/**
- * attach to an existing slotmem.
- * This would attach to  shared memory, basically.
- * @param sm ap_slotmem_storage_method provider obtained
- * @param name is a key used for debugging and in mod_status output or allow another process to share this space.
- * @param item_size size of each item
- * @param item_num max number of item.
- * @param pool is pool to memory allocate.
- * @return APR_SUCCESS if all went well
- */
-AP_DECLARE(apr_status_t) ap_slotmem_attach(ap_slotmem_storage_method *sm, ap_slotmem_t **new, const char *name, apr_size_t *item_size, unsigned int *item_num, apr_pool_t *pool);
-/**
- * get the memory associated with this worker slot.
- * @param sm ap_slotmem_storage_method provider obtained
- * @param s ap_slotmem_t to use.
- * @param item_id item to return for 0 to item_num
- * @param mem address to store the pointer to the slot
- * @return APR_SUCCESS if all went well
- */
-AP_DECLARE(apr_status_t) ap_slotmem_mem(ap_slotmem_storage_method *sm, ap_slotmem_t *s, unsigned int item_id, void**mem);
-/**
- * retrieve the memory associated with this worker slot.
- * @param sm ap_slotmem_storage_method provider obtained
- * @param s ap_slotmem_t to use.
- * @param item_id item to return for 0 to item_num
- * @param dest address to store the data
- * @param dest_len length of dataset to retrieve
- * @return APR_SUCCESS if all went well
- */
-AP_DECLARE(apr_status_t) ap_slotmem_get(ap_slotmem_storage_method *sm, ap_slotmem_t *s, unsigned int item_id, unsigned char *dest, apr_size_t dest_len);
-/**
- * store the memory associated with this worker slot.
- * @param sm ap_slotmem_storage_method provider obtained
- * @param s ap_slotmem_t to use.
- * @param item_id item to return for 0 to item_num
- * @param src address of the data to store in the slot
- * @param src_len length of dataset to store in the slot
- * @return APR_SUCCESS if all went well
- */
-AP_DECLARE(apr_status_t) ap_slotmem_put(ap_slotmem_storage_method *sm, ap_slotmem_t *s, unsigned int item_id, unsigned char *src, apr_size_t src_len);
-/**
- * return number of slots allocated for this entry.
- * @param sm ap_slotmem_storage_method provider obtained
- * @param s ap_slotmem_t to use.
- * @return number of slots
- */
-AP_DECLARE(unsigned int) ap_slotmem_num_slots(ap_slotmem_storage_method *sm, ap_slotmem_t *s);
-/**
- * return slot size allocated for this entry.
- * @param sm ap_slotmem_storage_method provider obtained
- * @param s ap_slotmem_t to use.
- * @return size of slot
- */
-AP_DECLARE(apr_size_t) ap_slotmem_slot_size(ap_slotmem_storage_method *sm, ap_slotmem_t *s);
+#ifdef __cplusplus
+}
+#endif
 
-#endif /*SLOTMEM_H*/
+#endif
+/** @} */

Modified: httpd/httpd/trunk/modules/slotmem/mod_slotmem_plain.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/slotmem/mod_slotmem_plain.c?rev=775176&r1=775175&r2=775176&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/slotmem/mod_slotmem_plain.c (original)
+++ httpd/httpd/trunk/modules/slotmem/mod_slotmem_plain.c Fri May 15 15:04:37 2009
@@ -20,21 +20,21 @@
 
 #include  "ap_slotmem.h"
 
-struct ap_slotmem_t {
+struct ap_slotmem_instance_t {
     char                 *name;       /* per segment name */
     void                 *base;       /* data set start */
     apr_size_t           size;        /* size of each memory slot */
     unsigned int         num;         /* number of mem slots */
     apr_pool_t           *gpool;      /* per segment global pool */
-    struct ap_slotmem_t  *next;       /* location of next allocated segment */
+    struct ap_slotmem_instance_t  *next;       /* location of next allocated segment */
 };
 
 
 /* global pool and list of slotmem we are handling */
-static struct ap_slotmem_t *globallistmem = NULL;
+static struct ap_slotmem_instance_t *globallistmem = NULL;
 static apr_pool_t *gpool = NULL;
 
-static apr_status_t slotmem_do(ap_slotmem_t *mem, ap_slotmem_callback_fn_t *func, void *data, apr_pool_t *pool)
+static apr_status_t slotmem_do(ap_slotmem_instance_t *mem, ap_slotmem_callback_fn_t *func, void *data, apr_pool_t *pool)
 {
     unsigned int i;
     void *ptr;
@@ -50,10 +50,10 @@
     return APR_SUCCESS;
 }
 
-static apr_status_t slotmem_create(ap_slotmem_t **new, const char *name, apr_size_t item_size, unsigned int item_num, apslotmem_type type, apr_pool_t *pool)
+static apr_status_t slotmem_create(ap_slotmem_instance_t **new, const char *name, apr_size_t item_size, unsigned int item_num, ap_slotmem_type_t type, apr_pool_t *pool)
 {
-    ap_slotmem_t *res;
-    ap_slotmem_t *next = globallistmem;
+    ap_slotmem_instance_t *res;
+    ap_slotmem_instance_t *next = globallistmem;
     const char *fname;
 
     if (name) {
@@ -76,7 +76,7 @@
         fname = "anonymous";
 
     /* create the memory using the gpool */
-    res = (ap_slotmem_t *) apr_pcalloc(gpool, sizeof(ap_slotmem_t));
+    res = (ap_slotmem_instance_t *) apr_pcalloc(gpool, sizeof(ap_slotmem_instance_t));
     res->base = apr_pcalloc(gpool, item_size * item_num);
     if (!res->base)
         return APR_ENOSHMAVAIL;
@@ -95,9 +95,9 @@
     return APR_SUCCESS;
 }
 
-static apr_status_t slotmem_attach(ap_slotmem_t **new, const char *name, apr_size_t *item_size, unsigned int *item_num, apr_pool_t *pool)
+static apr_status_t slotmem_attach(ap_slotmem_instance_t **new, const char *name, apr_size_t *item_size, unsigned int *item_num, apr_pool_t *pool)
 {
-    ap_slotmem_t *next = globallistmem;
+    ap_slotmem_instance_t *next = globallistmem;
     const char *fname;
 
     if (name) {
@@ -124,7 +124,7 @@
     return APR_ENOSHMAVAIL;
 }
 
-static apr_status_t slotmem_mem(ap_slotmem_t *score, unsigned int id, void **mem)
+static apr_status_t slotmem_mem(ap_slotmem_instance_t *score, unsigned int id, void **mem)
 {
 
     void *ptr;
@@ -141,7 +141,7 @@
     return APR_SUCCESS;
 }
 
-static apr_status_t slotmem_get(ap_slotmem_t *slot, unsigned int id, unsigned char *dest, apr_size_t dest_len)
+static apr_status_t slotmem_get(ap_slotmem_instance_t *slot, unsigned int id, unsigned char *dest, apr_size_t dest_len)
 {
 
     void *ptr;
@@ -155,7 +155,7 @@
     return APR_SUCCESS;
 }
 
-static apr_status_t slotmem_put(ap_slotmem_t *slot, unsigned int id, unsigned char *src, apr_size_t src_len)
+static apr_status_t slotmem_put(ap_slotmem_instance_t *slot, unsigned int id, unsigned char *src, apr_size_t src_len)
 {
 
     void *ptr;
@@ -169,17 +169,17 @@
     return APR_SUCCESS;
 }
 
-static unsigned int slotmem_num_slots(ap_slotmem_t *slot)
+static unsigned int slotmem_num_slots(ap_slotmem_instance_t *slot)
 {
     return slot->num;
 }
 
-static apr_size_t slotmem_slot_size(ap_slotmem_t *slot)
+static apr_size_t slotmem_slot_size(ap_slotmem_instance_t *slot)
 {
     return slot->size;
 }
 
-static const ap_slotmem_storage_method storage = {
+static const ap_slotmem_provider_t storage = {
     "plainmem",
     &slotmem_do,
     &slotmem_create,

Modified: httpd/httpd/trunk/modules/slotmem/mod_slotmem_shm.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/slotmem/mod_slotmem_shm.c?rev=775176&r1=775175&r2=775176&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/slotmem/mod_slotmem_shm.c (original)
+++ httpd/httpd/trunk/modules/slotmem/mod_slotmem_shm.c Fri May 15 15:04:37 2009
@@ -39,7 +39,7 @@
 #endif
 #endif
 
-struct ap_slotmem_t {
+struct ap_slotmem_instance_t {
     char                 *name;       /* per segment name */
     void                 *shm;        /* ptr to memory segment (apr_shm_t *) */
     void                 *base;       /* data set start */
@@ -47,7 +47,7 @@
     unsigned int         num;         /* number of mem slots */
     apr_pool_t           *gpool;      /* per segment global pool */
     apr_global_mutex_t   *smutex;     /* mutex */
-    struct ap_slotmem_t  *next;       /* location of next allocated segment */
+    struct ap_slotmem_instance_t  *next;       /* location of next allocated segment */
     char                 *inuse;      /* in-use flag table*/
 };
 
@@ -64,7 +64,7 @@
  */
 
 /* global pool and list of slotmem we are handling */
-static struct ap_slotmem_t *globallistmem = NULL;
+static struct ap_slotmem_instance_t *globallistmem = NULL;
 static apr_pool_t *gpool = NULL;
 static apr_global_mutex_t *smutex = NULL;
 static const char *mutex_fname = NULL;
@@ -141,7 +141,7 @@
     return storename;
 }
 
-static void store_slotmem(ap_slotmem_t *slotmem)
+static void store_slotmem(ap_slotmem_instance_t *slotmem)
 {
     apr_file_t *fp;
     apr_status_t rv;
@@ -190,12 +190,12 @@
 
 static apr_status_t cleanup_slotmem(void *param)
 {
-    ap_slotmem_t **mem = param;
+    ap_slotmem_instance_t **mem = param;
     apr_status_t rv;
     apr_pool_t *pool = NULL;
 
     if (*mem) {
-        ap_slotmem_t *next = *mem;
+        ap_slotmem_instance_t *next = *mem;
         pool = next->gpool;
         while (next) {
             store_slotmem(next);
@@ -207,7 +207,7 @@
     return APR_SUCCESS;
 }
 
-static apr_status_t slotmem_do(ap_slotmem_t *mem, ap_slotmem_callback_fn_t *func, void *data, apr_pool_t *pool)
+static apr_status_t slotmem_do(ap_slotmem_instance_t *mem, ap_slotmem_callback_fn_t *func, void *data, apr_pool_t *pool)
 {
     unsigned int i;
     void *ptr;
@@ -230,13 +230,13 @@
     return APR_SUCCESS;
 }
 
-static apr_status_t slotmem_create(ap_slotmem_t **new, const char *name, apr_size_t item_size, unsigned int item_num, apslotmem_type type, apr_pool_t *pool)
+static apr_status_t slotmem_create(ap_slotmem_instance_t **new, const char *name, apr_size_t item_size, unsigned int item_num, ap_slotmem_type_t type, apr_pool_t *pool)
 {
 /*    void *slotmem = NULL; */
     void *ptr;
     struct sharedslotdesc desc;
-    ap_slotmem_t *res;
-    ap_slotmem_t *next = globallistmem;
+    ap_slotmem_instance_t *res;
+    ap_slotmem_instance_t *next = globallistmem;
     const char *fname;
     apr_shm_t *shm;
     apr_size_t basesize = (item_size * item_num);
@@ -322,7 +322,7 @@
     }
 
     /* For the chained slotmem stuff */
-    res = (ap_slotmem_t *) apr_pcalloc(gpool, sizeof(ap_slotmem_t));
+    res = (ap_slotmem_instance_t *) apr_pcalloc(gpool, sizeof(ap_slotmem_instance_t));
     res->name = apr_pstrdup(gpool, fname);
     res->shm = shm;
     res->base = ptr;
@@ -343,12 +343,12 @@
     return APR_SUCCESS;
 }
 
-static apr_status_t slotmem_attach(ap_slotmem_t **new, const char *name, apr_size_t *item_size, unsigned int *item_num, apr_pool_t *pool)
+static apr_status_t slotmem_attach(ap_slotmem_instance_t **new, const char *name, apr_size_t *item_size, unsigned int *item_num, apr_pool_t *pool)
 {
 /*    void *slotmem = NULL; */
     void *ptr;
-    ap_slotmem_t *res;
-    ap_slotmem_t *next = globallistmem;
+    ap_slotmem_instance_t *res;
+    ap_slotmem_instance_t *next = globallistmem;
     struct sharedslotdesc desc;
     const char *fname;
     apr_shm_t *shm;
@@ -393,7 +393,7 @@
     ptr = ptr + sizeof(desc);
 
     /* For the chained slotmem stuff */
-    res = (ap_slotmem_t *) apr_pcalloc(gpool, sizeof(ap_slotmem_t));
+    res = (ap_slotmem_instance_t *) apr_pcalloc(gpool, sizeof(ap_slotmem_instance_t));
     res->name = apr_pstrdup(gpool, fname);
     res->shm = shm;
     res->base = ptr;
@@ -416,7 +416,7 @@
     return APR_SUCCESS;
 }
 
-static apr_status_t slotmem_mem(ap_slotmem_t *slot, unsigned int id, void **mem)
+static apr_status_t slotmem_mem(ap_slotmem_instance_t *slot, unsigned int id, void **mem)
 {
 
     void *ptr;
@@ -436,7 +436,7 @@
     return APR_SUCCESS;
 }
 
-static apr_status_t slotmem_get(ap_slotmem_t *slot, unsigned int id, unsigned char *dest, apr_size_t dest_len)
+static apr_status_t slotmem_get(ap_slotmem_instance_t *slot, unsigned int id, unsigned char *dest, apr_size_t dest_len)
 {
 
     void *ptr;
@@ -459,7 +459,7 @@
     return APR_SUCCESS;
 }
 
-static apr_status_t slotmem_put(ap_slotmem_t *slot, unsigned int id, unsigned char *src, apr_size_t src_len)
+static apr_status_t slotmem_put(ap_slotmem_instance_t *slot, unsigned int id, unsigned char *src, apr_size_t src_len)
 {
 
     void *ptr;
@@ -482,17 +482,17 @@
     return APR_SUCCESS;
 }
 
-static unsigned int slotmem_num_slots(ap_slotmem_t *slot)
+static unsigned int slotmem_num_slots(ap_slotmem_instance_t *slot)
 {
     return slot->num;
 }
 
-static apr_size_t slotmem_slot_size(ap_slotmem_t *slot)
+static apr_size_t slotmem_slot_size(ap_slotmem_instance_t *slot)
 {
     return slot->size;
 }
 
-static apr_status_t slotmem_grab(ap_slotmem_t *slot, unsigned int *id)
+static apr_status_t slotmem_grab(ap_slotmem_instance_t *slot, unsigned int *id)
 {
 
     unsigned int i;
@@ -520,7 +520,7 @@
     return APR_SUCCESS;
 }
 
-static apr_status_t slotmem_return(ap_slotmem_t *slot, unsigned int id)
+static apr_status_t slotmem_return(ap_slotmem_instance_t *slot, unsigned int id)
 {
 
     char *inuse;
@@ -541,7 +541,7 @@
     return APR_SUCCESS;
 }
 
-static const ap_slotmem_storage_method storage = {
+static const ap_slotmem_provider_t storage = {
     "sharedmem",
     &slotmem_do,
     &slotmem_create,
@@ -554,7 +554,7 @@
 };
 
 /* make the storage usuable from outside */
-static const ap_slotmem_storage_method *sharedmem_getstorage(void)
+static const ap_slotmem_provider_t *sharedmem_getstorage(void)
 {
     return (&storage);
 }
@@ -674,7 +674,7 @@
 
 static void ap_sharedmem_register_hook(apr_pool_t *p)
 {
-    const ap_slotmem_storage_method *storage = sharedmem_getstorage();
+    const ap_slotmem_provider_t *storage = sharedmem_getstorage();
     ap_register_provider(p, AP_SLOTMEM_STORAGE, "shared", "0", storage);
     ap_hook_post_config(post_config, NULL, NULL, APR_HOOK_LAST);
     ap_hook_pre_config(pre_config, NULL, NULL, APR_HOOK_MIDDLE);

Modified: httpd/httpd/trunk/server/Makefile.in
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/server/Makefile.in?rev=775176&r1=775175&r2=775176&view=diff
==============================================================================
--- httpd/httpd/trunk/server/Makefile.in (original)
+++ httpd/httpd/trunk/server/Makefile.in Fri May 15 15:04:37 2009
@@ -13,7 +13,7 @@
 	util_charset.c util_cookies.c util_debug.c util_xml.c \
 	util_expr.c util_filter.c util_pcre.c exports.c \
 	scoreboard.c error_bucket.c protocol.c core.c request.c provider.c \
-	eoc_bucket.c eor_bucket.c core_filters.c slotmem.c
+	eoc_bucket.c eor_bucket.c core_filters.c
 
 TARGETS = delete-exports $(LTLIBRARY_NAME) $(CORE_IMPLIB_FILE) export_vars.h httpd.exp