003 File Manager
Current Path:
/usr/src/contrib/apr-util/include
usr
/
src
/
contrib
/
apr-util
/
include
/
📁
..
📄
apr_anylock.h
(4.93 KB)
📄
apr_base64.h
(3.75 KB)
📄
apr_buckets.h
(63.04 KB)
📄
apr_crypto.h
(19.68 KB)
📄
apr_date.h
(3.47 KB)
📄
apr_dbd.h
(23.35 KB)
📄
apr_dbm.h
(8.4 KB)
📄
apr_hooks.h
(12.36 KB)
📄
apr_ldap.h.in
(5.94 KB)
📄
apr_ldap.hnw
(4.29 KB)
📄
apr_ldap.hw
(5.57 KB)
📄
apr_ldap.hwc
(5.59 KB)
📄
apr_ldap_init.h
(5.64 KB)
📄
apr_ldap_option.h
(8.4 KB)
📄
apr_ldap_rebind.h
(3.09 KB)
📄
apr_ldap_url.h
(3.71 KB)
📄
apr_md4.h
(4.42 KB)
📄
apr_md5.h
(6.2 KB)
📄
apr_memcache.h
(16.82 KB)
📄
apr_optional.h
(2.71 KB)
📄
apr_optional_hooks.h
(3.78 KB)
📄
apr_queue.h
(3.98 KB)
📄
apr_redis.h
(15.62 KB)
📄
apr_reslist.h
(7.01 KB)
📄
apr_rmm.h
(4.67 KB)
📄
apr_sdbm.h
(5.97 KB)
📄
apr_sha1.h
(3.79 KB)
📄
apr_siphash.h
(6.01 KB)
📄
apr_strmatch.h
(2.61 KB)
📄
apr_thread_pool.h
(10.84 KB)
📄
apr_uri.h
(6.43 KB)
📄
apr_uuid.h
(2.05 KB)
📄
apr_xlate.h
(6.26 KB)
📄
apr_xml.h
(12.19 KB)
📄
apu.h.in
(4.47 KB)
📄
apu.hnw
(3.73 KB)
📄
apu.hw
(4.62 KB)
📄
apu.hwc
(4.63 KB)
📄
apu_errno.h
(5.32 KB)
📄
apu_version.h
(4.2 KB)
📄
apu_want.h.in
(1.47 KB)
📄
apu_want.hnw
(1.51 KB)
📄
apu_want.hw
(1.5 KB)
📁
private
Editing: apr_rmm.h
/* Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef APR_RMM_H #define APR_RMM_H /** * @file apr_rmm.h * @brief APR-UTIL Relocatable Memory Management Routines */ /** * @defgroup APR_Util_RMM Relocatable Memory Management Routines * @ingroup APR_Util * @{ */ #include "apr.h" #include "apr_pools.h" #include "apr_errno.h" #include "apu.h" #include "apr_anylock.h" #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ /** Structure to access Relocatable, Managed Memory */ typedef struct apr_rmm_t apr_rmm_t; /** Fundamental allocation unit, within a specific apr_rmm_t */ typedef apr_size_t apr_rmm_off_t; /** * Initialize a relocatable memory block to be managed by the apr_rmm API. * @param rmm The relocatable memory block * @param lock An apr_anylock_t of the appropriate type of lock, or NULL * if no locking is required. * @param membuf The block of relocatable memory to be managed * @param memsize The size of relocatable memory block to be managed * @param cont The pool to use for local storage and management * @remark Both @param membuf and @param memsize must be aligned * (for instance using APR_ALIGN_DEFAULT). */ APU_DECLARE(apr_status_t) apr_rmm_init(apr_rmm_t **rmm, apr_anylock_t *lock, void *membuf, apr_size_t memsize, apr_pool_t *cont); /** * Destroy a managed memory block. * @param rmm The relocatable memory block to destroy */ APU_DECLARE(apr_status_t) apr_rmm_destroy(apr_rmm_t *rmm); /** * Attach to a relocatable memory block already managed by the apr_rmm API. * @param rmm The relocatable memory block * @param lock An apr_anylock_t of the appropriate type of lock * @param membuf The block of relocatable memory already under management * @param cont The pool to use for local storage and management */ APU_DECLARE(apr_status_t) apr_rmm_attach(apr_rmm_t **rmm, apr_anylock_t *lock, void *membuf, apr_pool_t *cont); /** * Detach from the managed block of memory. * @param rmm The relocatable memory block to detach from */ APU_DECLARE(apr_status_t) apr_rmm_detach(apr_rmm_t *rmm); /** * Allocate memory from the block of relocatable memory. * @param rmm The relocatable memory block * @param reqsize How much memory to allocate */ APU_DECLARE(apr_rmm_off_t) apr_rmm_malloc(apr_rmm_t *rmm, apr_size_t reqsize); /** * Realloc memory from the block of relocatable memory. * @param rmm The relocatable memory block * @param entity The memory allocation to realloc * @param reqsize The new size */ APU_DECLARE(apr_rmm_off_t) apr_rmm_realloc(apr_rmm_t *rmm, void *entity, apr_size_t reqsize); /** * Allocate memory from the block of relocatable memory and initialize it to zero. * @param rmm The relocatable memory block * @param reqsize How much memory to allocate */ APU_DECLARE(apr_rmm_off_t) apr_rmm_calloc(apr_rmm_t *rmm, apr_size_t reqsize); /** * Free allocation returned by apr_rmm_malloc or apr_rmm_calloc. * @param rmm The relocatable memory block * @param entity The memory allocation to free */ APU_DECLARE(apr_status_t) apr_rmm_free(apr_rmm_t *rmm, apr_rmm_off_t entity); /** * Retrieve the physical address of a relocatable allocation of memory * @param rmm The relocatable memory block * @param entity The memory allocation to free * @return address The address, aligned with APR_ALIGN_DEFAULT. */ APU_DECLARE(void *) apr_rmm_addr_get(apr_rmm_t *rmm, apr_rmm_off_t entity); /** * Compute the offset of a relocatable allocation of memory * @param rmm The relocatable memory block * @param entity The physical address to convert to an offset */ APU_DECLARE(apr_rmm_off_t) apr_rmm_offset_get(apr_rmm_t *rmm, void *entity); /** * Compute the required overallocation of memory needed to fit n allocs * @param n The number of alloc/calloc regions desired */ APU_DECLARE(apr_size_t) apr_rmm_overhead_get(int n); #ifdef __cplusplus } #endif /** @} */ #endif /* ! APR_RMM_H */
Upload File
Create Folder