From 5dff2d61cc1c27747ee398e04d8e02843aabb1f8 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Tue, 7 May 2024 04:04:06 +0200 Subject: Adding upstream version 2.4.38. Signed-off-by: Daniel Baumann --- docs/manual/mod/mod_slotmem_shm.html.en | 129 ++++++++++++++++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 docs/manual/mod/mod_slotmem_shm.html.en (limited to 'docs/manual/mod/mod_slotmem_shm.html.en') diff --git a/docs/manual/mod/mod_slotmem_shm.html.en b/docs/manual/mod/mod_slotmem_shm.html.en new file mode 100644 index 0000000..7505b57 --- /dev/null +++ b/docs/manual/mod/mod_slotmem_shm.html.en @@ -0,0 +1,129 @@ + + + + + +mod_slotmem_shm - Apache HTTP Server Version 2.4 + + + + + + + + +
<-
+ +
+

Apache Module mod_slotmem_shm

+
+

Available Languages:  en  | + fr 

+
+ + + +
Description:Slot-based shared memory provider.
Status:Extension
Module Identifier:slotmem_shm_module
Source File:mod_slotmem_shm.c
+

Summary

+ +

mod_slotmem_shm is a memory provider which + provides for creation and access to a shared memory segment + in which the datasets are organized in "slots." +

+ +

All shared memory is cleared and cleaned with each + restart, whether graceful or not. The data itself is + stored and restored within a file noted by the name + parameter in the create and attach + calls. If not specified with an absolute path, the file will be + created relative to the path specified by the + DefaultRuntimeDir directive. +

+ +

mod_slotmem_shm provides the following API functions: +

+ +
/* call the callback on all worker slots */
+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. 'name' is used to generate a filename for the persistent
+   store of the shared memory if configured. Values are:
+      "none"                - Anonymous shared memory and no persistent store
+      "file-name"           - [DefaultRuntimeDir]/file-name
+      "/absolute-file-name" - Absolute file name */
+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. See 'create()' for description of 'name' parameter */
+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 direct pointer to the memory associated with this worker slot */
+apr_status_t dptr(ap_slotmem_instance_t *s, unsigned int item_id, void **mem)
+
+/* get/read the memory from this slot to dest */
+apr_status_t get(ap_slotmem_instance_t *s, unsigned int item_id, unsigned char *dest, apr_size_t dest_len)
+
+/* put/write the data from src to this slot */
+apr_status_t put(ap_slotmem_instance_t *slot, unsigned int item_id, unsigned char *src, apr_size_t src_len)
+
+/* return the total number of slots in the segment */
+unsigned int num_slots(ap_slotmem_instance_t *s)
+
+/* return the total data size, in bytes, of a slot in the segment */
+apr_size_t slot_size(ap_slotmem_instance_t *s)
+
+/* grab or allocate the first free slot and mark as in-use (does not do any data copying) */
+apr_status_t grab(ap_slotmem_instance_t *s, unsigned int *item_id)
+
+/* forced grab or allocate the specified slot and mark as in-use (does not do any data copying) */
+apr_status_t fgrab(ap_slotmem_instance_t *s, unsigned int item_id)
+
+/* release or free a slot and mark as not in-use (does not do any data copying) */
+apr_status_t release(ap_slotmem_instance_t *s, unsigned int item_id)
+ + +
+
Support Apache!

Directives

+

This module provides no + directives.

+

Bugfix checklist

See also

+
+ +
+
+

Available Languages:  en  | + fr 

+
top

Comments

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
+
+ \ No newline at end of file -- cgit v1.2.3