Global Namespace
Overview
// typedefs typedef unsigned char apr_byte_t; typedef short apr_int16_t; typedef unsigned short apr_uint16_t; typedef int apr_int32_t; typedef unsigned int apr_uint32_t; typedef long apr_int64_t; typedef unsigned long apr_uint64_t; typedef size_t apr_size_t; typedef ssize_t apr_ssize_t; typedef off_t apr_off_t; typedef socklen_t apr_socklen_t; typedef ino_t apr_ino_t; typedef apr_uint64_t apr_uintptr_t; typedef struct apr_allocator_t apr_allocator_t; typedef struct apr_memnode_t apr_memnode_t; typedef struct apr_dso_handle_t apr_dso_handle_t; typedef void* apr_dso_handle_sym_t; typedef int apr_status_t; typedef struct apr_dir_t apr_dir_t; typedef apr_int32_t apr_fileperms_t; typedef dev_t apr_dev_t; typedef struct apr_finfo_t apr_finfo_t; typedef apr_uint32_t apr_fileattrs_t; typedef int apr_seek_where_t; typedef struct apr_file_t apr_file_t; typedef int apr_signum_t; typedef void() apr_getopt_err_fn_t( void *arg, const char *err, ... ); typedef struct apr_getopt_t apr_getopt_t; typedef struct apr_getopt_option_t apr_getopt_option_t; typedef struct apr_global_mutex_t apr_global_mutex_t; typedef struct apr_hash_t apr_hash_t; typedef struct apr_hash_index_t apr_hash_index_t; typedef unsigned int (*apr_hashfunc_t)( const char *key, apr_ssize_t *klen ); typedef int() apr_hash_do_callback_fn_t( void *rec, const void *key, apr_ssize_t klen, const void *value ); typedef struct apr_vformatter_buff_t apr_vformatter_buff_t; typedef struct apr_mmap_t apr_mmap_t; typedef struct apr_socket_t apr_socket_t; typedef struct apr_hdtr_t apr_hdtr_t; typedef struct in_addr apr_in_addr_t; typedef struct apr_ipsubnet_t apr_ipsubnet_t; typedef apr_uint16_t apr_port_t; typedef struct apr_sockaddr_t apr_sockaddr_t; typedef struct apr_pollfd_t apr_pollfd_t; typedef struct apr_pollset_t apr_pollset_t; typedef struct apr_pollcb_t apr_pollcb_t; typedef apr_status_t (*apr_pollcb_cb_t)( void *baton, apr_pollfd_t *descriptor ); typedef struct apr_pool_t apr_pool_t; typedef int (*apr_abortfunc_t)(int retcode); typedef int apr_os_file_t; typedef DIR apr_os_dir_t; typedef int apr_os_sock_t; typedef struct apr_os_proc_mutex_t apr_os_proc_mutex_t; typedef pthread_t apr_os_thread_t; typedef pthread_key_t apr_os_threadkey_t; typedef pid_t apr_os_proc_t; typedef struct timeval apr_os_imp_time_t; typedef struct tm apr_os_exp_time_t; typedef void* apr_os_dso_handle_t; typedef void* apr_os_shm_t; typedef struct apr_os_sock_info_t apr_os_sock_info_t; typedef struct apr_proc_mutex_t apr_proc_mutex_t; typedef struct apr_crypto_hash_t apr_crypto_hash_t; typedef void apr_crypto_hash_init_t(apr_crypto_hash_t *hash); typedef void apr_crypto_hash_add_t( apr_crypto_hash_t *hash, const void *data, apr_size_t bytes ); typedef void apr_crypto_hash_finish_t( apr_crypto_hash_t *hash, unsigned char *result ); typedef struct apr_random_t apr_random_t; typedef struct apr_shm_t apr_shm_t; typedef void apr_sigfunc_t(int); typedef int (*apr_skiplist_compare)( void *, void * ); typedef void (*apr_skiplist_freefunc)(void *); typedef struct apr_skiplist apr_skiplist; typedef struct apr_skiplistnode apr_skiplistnode; typedef struct apr_table_t apr_table_t; typedef struct apr_array_header_t apr_array_header_t; typedef struct apr_table_entry_t apr_table_entry_t; typedef int() apr_table_do_callback_fn_t( void *rec, const char *key, const char *value ); typedef struct apr_thread_cond_t apr_thread_cond_t; typedef struct apr_thread_mutex_t apr_thread_mutex_t; typedef struct apr_proc_t apr_proc_t; typedef void() apr_child_errfn_t( apr_pool_t *proc, apr_status_t err, const char *description ); typedef struct apr_thread_t apr_thread_t; typedef struct apr_threadattr_t apr_threadattr_t; typedef struct apr_procattr_t apr_procattr_t; typedef struct apr_thread_once_t apr_thread_once_t; typedef struct apr_threadkey_t apr_threadkey_t; typedef struct apr_other_child_rec_t apr_other_child_rec_t; typedef void*(APR_THREAD_FUNC* apr_thread_start_t)( apr_thread_t *, void * ); typedef struct apr_thread_rwlock_t apr_thread_rwlock_t; typedef apr_int64_t apr_time_t; typedef apr_int64_t apr_interval_time_t; typedef apr_int32_t apr_short_interval_time_t; typedef struct apr_time_exp_t apr_time_exp_t; typedef uid_t apr_uid_t; typedef gid_t apr_gid_t; typedef struct _SHA256_CTX SHA256_CTX; // enums enum apr_cmdtype_e; enum apr_datatype_e; enum apr_exit_why_e; enum apr_filetype_e; enum apr_interface_e; enum apr_kill_conditions_e; enum apr_lockmech_e; enum apr_pollset_method_e; enum apr_shutdown_how_e; enum apr_wait_how_e; // structs struct _SHA256_CTX; struct apr_array_header_t; struct apr_crypto_hash_t; struct apr_finfo_t; struct apr_getopt_option_t; struct apr_getopt_t; struct apr_hdtr_t; struct apr_memnode_t; struct apr_mmap_t; struct apr_os_proc_mutex_t; struct apr_os_sock_info_t; struct apr_pollfd_t; struct apr_proc_t; struct apr_sockaddr_t; struct apr_table_entry_t; struct apr_time_exp_t; struct apr_version_t; struct apr_vformatter_buff_t; // unions union apr_descriptor; // global variables const char apr_month_snames[12][4]; const char apr_day_snames[7][4]; // global functions apr_status_t apr_allocator_create(apr_allocator_t** allocator); void apr_allocator_destroy(apr_allocator_t* allocator); apr_memnode_t* apr_allocator_alloc( apr_allocator_t* allocator, apr_size_t size ); void apr_allocator_free( apr_allocator_t* allocator, apr_memnode_t* memnode ); void apr_allocator_owner_set( apr_allocator_t* allocator, apr_pool_t* pool ); apr_pool_t* apr_allocator_owner_get(apr_allocator_t* allocator); void apr_allocator_max_free_set( apr_allocator_t* allocator, apr_size_t size ); void apr_allocator_mutex_set( apr_allocator_t* allocator, apr_thread_mutex_t* mutex ); apr_thread_mutex_t* apr_allocator_mutex_get(apr_allocator_t* allocator); apr_status_t apr_atomic_init(apr_pool_t* p); apr_uint32_t apr_atomic_read32(volatile apr_uint32_t* mem); void apr_atomic_set32( volatile apr_uint32_t* mem, apr_uint32_t val ); apr_uint32_t apr_atomic_add32( volatile apr_uint32_t* mem, apr_uint32_t val ); void apr_atomic_sub32( volatile apr_uint32_t* mem, apr_uint32_t val ); apr_uint32_t apr_atomic_inc32(volatile apr_uint32_t* mem); int apr_atomic_dec32(volatile apr_uint32_t* mem); apr_uint32_t apr_atomic_cas32( volatile apr_uint32_t* mem, apr_uint32_t with, apr_uint32_t cmp ); apr_uint32_t apr_atomic_xchg32( volatile apr_uint32_t* mem, apr_uint32_t val ); void* apr_atomic_casptr( volatile void** mem, void* with, const void* cmp ); void* apr_atomic_xchgptr( volatile void** mem, void* with ); apr_status_t apr_dso_load( apr_dso_handle_t** res_handle, const char* path, apr_pool_t* ctx ); apr_status_t apr_dso_unload(apr_dso_handle_t* handle); apr_status_t apr_dso_sym( apr_dso_handle_sym_t* ressym, apr_dso_handle_t* handle, const char* symname ); const char* apr_dso_error( apr_dso_handle_t* dso, char* buf, apr_size_t bufsize ); apr_status_t apr_env_get( char** value, const char* envvar, apr_pool_t* pool ); apr_status_t apr_env_set( const char* envvar, const char* value, apr_pool_t* pool ); apr_status_t apr_env_delete( const char* envvar, apr_pool_t* pool ); char* apr_strerror( apr_status_t statcode, char* buf, apr_size_t bufsize ); apr_status_t apr_escape_shell( char* escaped, const char* str, apr_ssize_t slen, apr_size_t* len ); const char* apr_pescape_shell( apr_pool_t* p, const char* str ); apr_status_t apr_unescape_url( char* escaped, const char* url, apr_ssize_t slen, const char* forbid, const char* reserved, int plus, apr_size_t* len ); const char* apr_punescape_url( apr_pool_t* p, const char* url, const char* forbid, const char* reserved, int plus ); apr_status_t apr_escape_path_segment( char* escaped, const char* str, apr_ssize_t slen, apr_size_t* len ); const char* apr_pescape_path_segment( apr_pool_t* p, const char* str ); apr_status_t apr_escape_path( char* escaped, const char* path, apr_ssize_t slen, int partial, apr_size_t* len ); const char* apr_pescape_path( apr_pool_t* p, const char* str, int partial ); apr_status_t apr_escape_urlencoded( char* escaped, const char* str, apr_ssize_t slen, apr_size_t* len ); const char* apr_pescape_urlencoded( apr_pool_t* p, const char* str ); apr_status_t apr_escape_entity( char* escaped, const char* str, apr_ssize_t slen, int toasc, apr_size_t* len ); const char* apr_pescape_entity( apr_pool_t* p, const char* str, int toasc ); apr_status_t apr_unescape_entity( char* unescaped, const char* str, apr_ssize_t slen, apr_size_t* len ); const char* apr_punescape_entity( apr_pool_t* p, const char* str ); apr_status_t apr_escape_echo( char* escaped, const char* str, apr_ssize_t slen, int quote, apr_size_t* len ); const char* apr_pescape_echo( apr_pool_t* p, const char* str, int quote ); apr_status_t apr_escape_hex( char* dest, const void* src, apr_size_t srclen, int colon, apr_size_t* len ); const char* apr_pescape_hex( apr_pool_t* p, const void* src, apr_size_t slen, int colon ); apr_status_t apr_unescape_hex( void* dest, const char* str, apr_ssize_t slen, int colon, apr_size_t* len ); const void* apr_punescape_hex( apr_pool_t* p, const char* str, int colon, apr_size_t* len ); apr_status_t apr_stat( apr_finfo_t* finfo, const char* fname, apr_int32_t wanted, apr_pool_t* pool ); apr_status_t apr_dir_open( apr_dir_t** new_dir, const char* dirname, apr_pool_t* pool ); apr_status_t apr_dir_close(apr_dir_t* thedir); apr_status_t apr_dir_read( apr_finfo_t* finfo, apr_int32_t wanted, apr_dir_t* thedir ); apr_status_t apr_dir_rewind(apr_dir_t* thedir); apr_status_t apr_filepath_root( const char** rootpath, const char** filepath, apr_int32_t flags, apr_pool_t* p ); apr_status_t apr_filepath_merge( char** newpath, const char* rootpath, const char* addpath, apr_int32_t flags, apr_pool_t* p ); apr_status_t apr_filepath_list_split( apr_array_header_t** pathelts, const char* liststr, apr_pool_t* p ); apr_status_t apr_filepath_list_merge( char** liststr, apr_array_header_t* pathelts, apr_pool_t* p ); apr_status_t apr_filepath_get( char** path, apr_int32_t flags, apr_pool_t* p ); apr_status_t apr_filepath_set( const char* path, apr_pool_t* p ); apr_status_t apr_filepath_encoding( int* style, apr_pool_t* p ); apr_status_t apr_file_open( apr_file_t** newf, const char* fname, apr_int32_t flag, apr_fileperms_t perm, apr_pool_t* pool ); apr_status_t apr_file_close(apr_file_t* file); apr_status_t apr_file_remove( const char* path, apr_pool_t* pool ); apr_status_t apr_file_rename( const char* from_path, const char* to_path, apr_pool_t* pool ); apr_status_t apr_file_link( const char* from_path, const char* to_path ); apr_status_t apr_file_copy( const char* from_path, const char* to_path, apr_fileperms_t perms, apr_pool_t* pool ); apr_status_t apr_file_append( const char* from_path, const char* to_path, apr_fileperms_t perms, apr_pool_t* pool ); apr_status_t apr_file_eof(apr_file_t* fptr); apr_status_t apr_file_open_stderr( apr_file_t** thefile, apr_pool_t* pool ); apr_status_t apr_file_open_stdout( apr_file_t** thefile, apr_pool_t* pool ); apr_status_t apr_file_open_stdin( apr_file_t** thefile, apr_pool_t* pool ); apr_status_t apr_file_open_flags_stderr( apr_file_t** thefile, apr_int32_t flags, apr_pool_t* pool ); apr_status_t apr_file_open_flags_stdout( apr_file_t** thefile, apr_int32_t flags, apr_pool_t* pool ); apr_status_t apr_file_open_flags_stdin( apr_file_t** thefile, apr_int32_t flags, apr_pool_t* pool ); apr_status_t apr_file_read( apr_file_t* thefile, void* buf, apr_size_t* nbytes ); apr_status_t apr_file_write( apr_file_t* thefile, const void* buf, apr_size_t* nbytes ); apr_status_t apr_file_writev( apr_file_t* thefile, const struct iovec* vec, apr_size_t nvec, apr_size_t* nbytes ); apr_status_t apr_file_read_full( apr_file_t* thefile, void* buf, apr_size_t nbytes, apr_size_t* bytes_read ); apr_status_t apr_file_write_full( apr_file_t* thefile, const void* buf, apr_size_t nbytes, apr_size_t* bytes_written ); apr_status_t apr_file_writev_full( apr_file_t* thefile, const struct iovec* vec, apr_size_t nvec, apr_size_t* nbytes ); apr_status_t apr_file_putc( char ch, apr_file_t* thefile ); apr_status_t apr_file_getc( char* ch, apr_file_t* thefile ); apr_status_t apr_file_ungetc( char ch, apr_file_t* thefile ); apr_status_t apr_file_gets( char* str, int len, apr_file_t* thefile ); apr_status_t apr_file_puts( const char* str, apr_file_t* thefile ); apr_status_t apr_file_flush(apr_file_t* thefile); apr_status_t apr_file_sync(apr_file_t* thefile); apr_status_t apr_file_datasync(apr_file_t* thefile); apr_status_t apr_file_dup( apr_file_t** new_file, apr_file_t* old_file, apr_pool_t* p ); apr_status_t apr_file_dup2( apr_file_t* new_file, apr_file_t* old_file, apr_pool_t* p ); apr_status_t apr_file_setaside( apr_file_t** new_file, apr_file_t* old_file, apr_pool_t* p ); apr_status_t apr_file_buffer_set( apr_file_t* thefile, char* buffer, apr_size_t bufsize ); apr_size_t apr_file_buffer_size_get(apr_file_t* thefile); apr_status_t apr_file_seek( apr_file_t* thefile, apr_seek_where_t where, apr_off_t* offset ); apr_status_t apr_file_pipe_create( apr_file_t** in, apr_file_t** out, apr_pool_t* pool ); apr_status_t apr_file_pipe_create_ex( apr_file_t** in, apr_file_t** out, apr_int32_t blocking, apr_pool_t* pool ); apr_status_t apr_file_namedpipe_create( const char* filename, apr_fileperms_t perm, apr_pool_t* pool ); apr_status_t apr_file_pipe_timeout_get( apr_file_t* thepipe, apr_interval_time_t* timeout ); apr_status_t apr_file_pipe_timeout_set( apr_file_t* thepipe, apr_interval_time_t timeout ); apr_status_t apr_file_lock( apr_file_t* thefile, int type ); apr_status_t apr_file_unlock(apr_file_t* thefile); apr_status_t apr_file_name_get( const char** new_path, apr_file_t* thefile ); apr_status_t apr_file_data_get( void** data, const char* key, apr_file_t* file ); apr_status_t apr_file_data_set( apr_file_t* file, void* data, const char* key, apr_status_t(*)(void*) cleanup ); int apr_file_printf( apr_file_t* fptr, const char* format, ... ); apr_status_t apr_file_perms_set( const char* fname, apr_fileperms_t perms ); apr_status_t apr_file_attrs_set( const char* fname, apr_fileattrs_t attributes, apr_fileattrs_t attr_mask, apr_pool_t* pool ); apr_status_t apr_file_mtime_set( const char* fname, apr_time_t mtime, apr_pool_t* pool ); apr_status_t apr_dir_make( const char* path, apr_fileperms_t perm, apr_pool_t* pool ); apr_status_t apr_dir_make_recursive( const char* path, apr_fileperms_t perm, apr_pool_t* pool ); apr_status_t apr_dir_remove( const char* path, apr_pool_t* pool ); apr_status_t apr_file_info_get( apr_finfo_t* finfo, apr_int32_t wanted, apr_file_t* thefile ); apr_status_t apr_file_trunc( apr_file_t* fp, apr_off_t offset ); apr_int32_t apr_file_flags_get(apr_file_t* f); apr_pool_t* apr_file_pool_get(const apr_file_t* thefile); apr_status_t apr_file_inherit_set(apr_file_t* thefile); apr_status_t apr_file_inherit_unset(apr_file_t* thefile); apr_status_t apr_file_mktemp( apr_file_t** fp, char* templ, apr_int32_t flags, apr_pool_t* p ); apr_status_t apr_temp_dir_get( const char** temp_dir, apr_pool_t* p ); apr_status_t apr_fnmatch( const char* pattern, const char* strings, int flags ); int apr_fnmatch_test(const char* pattern); apr_status_t apr_match_glob( const char* dir_pattern, apr_array_header_t** result, apr_pool_t* p ); apr_status_t apr_initialize(void); apr_status_t apr_app_initialize( int* argc, char const*const** argv, char const*const** env ); void apr_terminate(void); void apr_terminate2(void); apr_status_t apr_generate_random_bytes( unsigned char* buf, apr_size_t length ); apr_status_t apr_getopt_init( apr_getopt_t** os, apr_pool_t* cont, int argc, const char*const* argv ); apr_status_t apr_getopt( apr_getopt_t* os, const char* opts, char* option_ch, const char** option_arg ); apr_status_t apr_getopt_long( apr_getopt_t* os, const apr_getopt_option_t* opts, int* option_ch, const char** option_arg ); apr_status_t apr_global_mutex_create( apr_global_mutex_t** mutex, const char* fname, apr_lockmech_e mech, apr_pool_t* pool ); apr_status_t apr_global_mutex_child_init( apr_global_mutex_t** mutex, const char* fname, apr_pool_t* pool ); apr_status_t apr_global_mutex_lock(apr_global_mutex_t* mutex); apr_status_t apr_global_mutex_trylock(apr_global_mutex_t* mutex); apr_status_t apr_global_mutex_unlock(apr_global_mutex_t* mutex); apr_status_t apr_global_mutex_destroy(apr_global_mutex_t* mutex); const char* apr_global_mutex_lockfile(apr_global_mutex_t* mutex); const char* apr_global_mutex_name(apr_global_mutex_t* mutex); apr_pool_t* apr_global_mutex_pool_get(const apr_global_mutex_t* theglobal_mutex); unsigned int apr_hashfunc_default( const char* key, apr_ssize_t* klen ); apr_hash_t* apr_hash_make(apr_pool_t* pool); apr_hash_t* apr_hash_make_custom( apr_pool_t* pool, apr_hashfunc_t hash_func ); apr_hash_t* apr_hash_copy( apr_pool_t* pool, const apr_hash_t* h ); void apr_hash_set( apr_hash_t* ht, const void* key, apr_ssize_t klen, const void* val ); void* apr_hash_get( apr_hash_t* ht, const void* key, apr_ssize_t klen ); apr_hash_index_t* apr_hash_first( apr_pool_t* p, apr_hash_t* ht ); apr_hash_index_t* apr_hash_next(apr_hash_index_t* hi); void apr_hash_this( apr_hash_index_t* hi, const void** key, apr_ssize_t* klen, void** val ); const void* apr_hash_this_key(apr_hash_index_t* hi); apr_ssize_t apr_hash_this_key_len(apr_hash_index_t* hi); void* apr_hash_this_val(apr_hash_index_t* hi); unsigned int apr_hash_count(apr_hash_t* ht); void apr_hash_clear(apr_hash_t* ht); apr_hash_t* apr_hash_overlay( apr_pool_t* p, const apr_hash_t* overlay, const apr_hash_t* base ); apr_hash_t* apr_hash_merge( apr_pool_t* p, const apr_hash_t* h1, const apr_hash_t* h2, void*(*)(apr_pool_t*p, const void*key, apr_ssize_t klen, const void*h1_val, const void*h2_val, const void*data) merger, const void* data ); int apr_hash_do( apr_hash_do_callback_fn_t* comp, void* rec, const apr_hash_t* ht ); apr_pool_t* apr_hash_pool_get(const apr_hash_t* thehash); const char* apr_filepath_name_get(const char* pathname); int apr_vformatter( int(*)(apr_vformatter_buff_t*b) flush_func, apr_vformatter_buff_t* c, const char* fmt, va_list ap ); apr_status_t apr_password_get( const char* prompt, char* pwbuf, apr_size_t* bufsize ); apr_status_t apr_mmap_create( apr_mmap_t** newmmap, apr_file_t* file, apr_off_t offset, apr_size_t size, apr_int32_t flag, apr_pool_t* cntxt ); apr_status_t apr_mmap_dup( apr_mmap_t** new_mmap, apr_mmap_t* old_mmap, apr_pool_t* p ); apr_status_t apr_mmap_delete(apr_mmap_t* mm); apr_status_t apr_mmap_offset( void** addr, apr_mmap_t* mm, apr_off_t offset ); apr_status_t apr_socket_create( apr_socket_t** new_sock, int family, int type, int protocol, apr_pool_t* cont ); apr_status_t apr_socket_shutdown( apr_socket_t* thesocket, apr_shutdown_how_e how ); apr_status_t apr_socket_close(apr_socket_t* thesocket); apr_status_t apr_socket_bind( apr_socket_t* sock, apr_sockaddr_t* sa ); apr_status_t apr_socket_listen( apr_socket_t* sock, apr_int32_t backlog ); apr_status_t apr_socket_accept( apr_socket_t** new_sock, apr_socket_t* sock, apr_pool_t* connection_pool ); apr_status_t apr_socket_connect( apr_socket_t* sock, apr_sockaddr_t* sa ); apr_status_t apr_socket_atreadeof( apr_socket_t* sock, int* atreadeof ); apr_status_t apr_sockaddr_info_get( apr_sockaddr_t** sa, const char* hostname, apr_int32_t family, apr_port_t port, apr_int32_t flags, apr_pool_t* p ); apr_status_t apr_getnameinfo( char** hostname, apr_sockaddr_t* sa, apr_int32_t flags ); apr_status_t apr_parse_addr_port( char** addr, char** scope_id, apr_port_t* port, const char* str, apr_pool_t* p ); apr_status_t apr_gethostname( char* buf, int len, apr_pool_t* cont ); apr_status_t apr_socket_data_get( void** data, const char* key, apr_socket_t* sock ); apr_status_t apr_socket_data_set( apr_socket_t* sock, void* data, const char* key, apr_status_t(*)(void*) cleanup ); apr_status_t apr_socket_send( apr_socket_t* sock, const char* buf, apr_size_t* len ); apr_status_t apr_socket_sendv( apr_socket_t* sock, const struct iovec* vec, apr_int32_t nvec, apr_size_t* len ); apr_status_t apr_socket_sendto( apr_socket_t* sock, apr_sockaddr_t* where, apr_int32_t flags, const char* buf, apr_size_t* len ); apr_status_t apr_socket_recvfrom( apr_sockaddr_t* from, apr_socket_t* sock, apr_int32_t flags, char* buf, apr_size_t* len ); apr_status_t apr_socket_sendfile( apr_socket_t* sock, apr_file_t* file, apr_hdtr_t* hdtr, apr_off_t* offset, apr_size_t* len, apr_int32_t flags ); apr_status_t apr_socket_recv( apr_socket_t* sock, char* buf, apr_size_t* len ); apr_status_t apr_socket_opt_set( apr_socket_t* sock, apr_int32_t opt, apr_int32_t on ); apr_status_t apr_socket_timeout_set( apr_socket_t* sock, apr_interval_time_t t ); apr_status_t apr_socket_opt_get( apr_socket_t* sock, apr_int32_t opt, apr_int32_t* on ); apr_status_t apr_socket_timeout_get( apr_socket_t* sock, apr_interval_time_t* t ); apr_status_t apr_socket_atmark( apr_socket_t* sock, int* atmark ); apr_status_t apr_socket_addr_get( apr_sockaddr_t** sa, apr_interface_e which, apr_socket_t* sock ); apr_status_t apr_sockaddr_ip_get( char** addr, apr_sockaddr_t* sockaddr ); apr_status_t apr_sockaddr_ip_getbuf( char* buf, apr_size_t buflen, apr_sockaddr_t* sockaddr ); int apr_sockaddr_equal( const apr_sockaddr_t* addr1, const apr_sockaddr_t* addr2 ); int apr_sockaddr_is_wildcard(const apr_sockaddr_t* addr); apr_status_t apr_socket_type_get( apr_socket_t* sock, int* type ); apr_status_t apr_getservbyname( apr_sockaddr_t* sockaddr, const char* servname ); apr_status_t apr_ipsubnet_create( apr_ipsubnet_t** ipsub, const char* ipstr, const char* mask_or_numbits, apr_pool_t* p ); int apr_ipsubnet_test( apr_ipsubnet_t* ipsub, apr_sockaddr_t* sa ); apr_status_t apr_socket_accept_filter( apr_socket_t* sock, char* name, char* args ); apr_status_t apr_socket_protocol_get( apr_socket_t* sock, int* protocol ); apr_pool_t* apr_socket_pool_get(const apr_socket_t* thesocket); apr_status_t apr_socket_inherit_set(apr_socket_t* thesocket); apr_status_t apr_socket_inherit_unset(apr_socket_t* thesocket); apr_status_t apr_mcast_join( apr_socket_t* sock, apr_sockaddr_t* join, apr_sockaddr_t* iface, apr_sockaddr_t* source ); apr_status_t apr_mcast_leave( apr_socket_t* sock, apr_sockaddr_t* addr, apr_sockaddr_t* iface, apr_sockaddr_t* source ); apr_status_t apr_mcast_hops( apr_socket_t* sock, apr_byte_t ttl ); apr_status_t apr_mcast_loopback( apr_socket_t* sock, apr_byte_t opt ); apr_status_t apr_mcast_interface( apr_socket_t* sock, apr_sockaddr_t* iface ); apr_status_t apr_pollset_create( apr_pollset_t** pollset, apr_uint32_t size, apr_pool_t* p, apr_uint32_t flags ); apr_status_t apr_pollset_create_ex( apr_pollset_t** pollset, apr_uint32_t size, apr_pool_t* p, apr_uint32_t flags, apr_pollset_method_e method ); apr_status_t apr_pollset_destroy(apr_pollset_t* pollset); apr_status_t apr_pollset_add( apr_pollset_t* pollset, const apr_pollfd_t* descriptor ); apr_status_t apr_pollset_remove( apr_pollset_t* pollset, const apr_pollfd_t* descriptor ); apr_status_t apr_pollset_poll( apr_pollset_t* pollset, apr_interval_time_t timeout, apr_int32_t* num, const apr_pollfd_t** descriptors ); apr_status_t apr_pollset_wakeup(apr_pollset_t* pollset); apr_status_t apr_poll( apr_pollfd_t* aprset, apr_int32_t numsock, apr_int32_t* nsds, apr_interval_time_t timeout ); const char* apr_pollset_method_name(apr_pollset_t* pollset); const char* apr_poll_method_defname(void); apr_status_t apr_pollcb_create( apr_pollcb_t** pollcb, apr_uint32_t size, apr_pool_t* p, apr_uint32_t flags ); apr_status_t apr_pollcb_create_ex( apr_pollcb_t** pollcb, apr_uint32_t size, apr_pool_t* p, apr_uint32_t flags, apr_pollset_method_e method ); apr_status_t apr_pollcb_add( apr_pollcb_t* pollcb, apr_pollfd_t* descriptor ); apr_status_t apr_pollcb_remove( apr_pollcb_t* pollcb, apr_pollfd_t* descriptor ); apr_status_t apr_pollcb_poll( apr_pollcb_t* pollcb, apr_interval_time_t timeout, apr_pollcb_cb_t func, void* baton ); apr_status_t apr_pool_initialize(void); void apr_pool_terminate(void); apr_status_t apr_pool_create_ex( apr_pool_t** newpool, apr_pool_t* parent, apr_abortfunc_t abort_fn, apr_allocator_t* allocator ); apr_status_t apr_pool_create_core_ex( apr_pool_t** newpool, apr_abortfunc_t abort_fn, apr_allocator_t* allocator ); apr_status_t apr_pool_create_unmanaged_ex( apr_pool_t** newpool, apr_abortfunc_t abort_fn, apr_allocator_t* allocator ); apr_status_t apr_pool_create_ex_debug( apr_pool_t** newpool, apr_pool_t* parent, apr_abortfunc_t abort_fn, apr_allocator_t* allocator, const char* file_line ); apr_status_t apr_pool_create_core_ex_debug( apr_pool_t** newpool, apr_abortfunc_t abort_fn, apr_allocator_t* allocator, const char* file_line ); apr_status_t apr_pool_create_unmanaged_ex_debug( apr_pool_t** newpool, apr_abortfunc_t abort_fn, apr_allocator_t* allocator, const char* file_line ); apr_status_t apr_pool_create( apr_pool_t** newpool, apr_pool_t* parent ); apr_status_t apr_pool_create_core(apr_pool_t** newpool); apr_status_t apr_pool_create_unmanaged(apr_pool_t** newpool); apr_allocator_t* apr_pool_allocator_get(apr_pool_t* pool); void apr_pool_clear(apr_pool_t* p); void apr_pool_clear_debug( apr_pool_t* p, const char* file_line ); void apr_pool_destroy(apr_pool_t* p); void apr_pool_destroy_debug( apr_pool_t* p, const char* file_line ); void* apr_palloc( apr_pool_t* p, apr_size_t size ); void* apr_palloc_debug( apr_pool_t* p, apr_size_t size, const char* file_line ); void* apr_pcalloc( apr_pool_t* p, apr_size_t size ); void* apr_pcalloc_debug( apr_pool_t* p, apr_size_t size, const char* file_line ); void apr_pool_abort_set( apr_abortfunc_t abortfunc, apr_pool_t* pool ); apr_abortfunc_t apr_pool_abort_get(apr_pool_t* pool); apr_pool_t* apr_pool_parent_get(apr_pool_t* pool); int apr_pool_is_ancestor( apr_pool_t* a, apr_pool_t* b ); void apr_pool_tag( apr_pool_t* pool, const char* tag ); apr_status_t apr_pool_userdata_set( const void* data, const char* key, apr_status_t(*)(void*) cleanup, apr_pool_t* pool ); apr_status_t apr_pool_userdata_setn( const void* data, const char* key, apr_status_t(*)(void*) cleanup, apr_pool_t* pool ); apr_status_t apr_pool_userdata_get( void** data, const char* key, apr_pool_t* pool ); void apr_pool_cleanup_register( apr_pool_t* p, const void* data, apr_status_t(*)(void*) plain_cleanup, apr_status_t(*)(void*) child_cleanup ); void apr_pool_pre_cleanup_register( apr_pool_t* p, const void* data, apr_status_t(*)(void*) plain_cleanup ); void apr_pool_cleanup_kill( apr_pool_t* p, const void* data, apr_status_t(*)(void*) cleanup ); void apr_pool_child_cleanup_set( apr_pool_t* p, const void* data, apr_status_t(*)(void*) plain_cleanup, apr_status_t(*)(void*) child_cleanup ); apr_status_t apr_pool_cleanup_run( apr_pool_t* p, void* data, apr_status_t(*)(void*) cleanup ); apr_status_t apr_pool_cleanup_null(void* data); void apr_pool_cleanup_for_exec(void); void apr_pool_join( apr_pool_t* p, apr_pool_t* sub ); apr_pool_t* apr_pool_find(const void* mem); apr_size_t apr_pool_num_bytes( apr_pool_t* p, int recurse ); void apr_pool_lock( apr_pool_t* pool, int flag ); apr_status_t apr_os_file_get( apr_os_file_t* thefile, apr_file_t* file ); apr_status_t apr_os_dir_get( apr_os_dir_t** thedir, apr_dir_t* dir ); apr_status_t apr_os_sock_get( apr_os_sock_t* thesock, apr_socket_t* sock ); apr_status_t apr_os_proc_mutex_get( apr_os_proc_mutex_t* ospmutex, apr_proc_mutex_t* pmutex ); apr_status_t apr_os_exp_time_get( apr_os_exp_time_t** ostime, apr_time_exp_t* aprtime ); apr_status_t apr_os_imp_time_get( apr_os_imp_time_t** ostime, apr_time_t* aprtime ); apr_status_t apr_os_shm_get( apr_os_shm_t* osshm, apr_shm_t* shm ); apr_status_t apr_os_thread_get( apr_os_thread_t** thethd, apr_thread_t* thd ); apr_status_t apr_os_threadkey_get( apr_os_threadkey_t* thekey, apr_threadkey_t* key ); apr_status_t apr_os_thread_put( apr_thread_t** thd, apr_os_thread_t* thethd, apr_pool_t* cont ); apr_status_t apr_os_threadkey_put( apr_threadkey_t** key, apr_os_threadkey_t* thekey, apr_pool_t* cont ); apr_os_thread_t apr_os_thread_current(void); int apr_os_thread_equal( apr_os_thread_t tid1, apr_os_thread_t tid2 ); apr_status_t apr_os_file_put( apr_file_t** file, apr_os_file_t* thefile, apr_int32_t flags, apr_pool_t* cont ); apr_status_t apr_os_pipe_put( apr_file_t** file, apr_os_file_t* thefile, apr_pool_t* cont ); apr_status_t apr_os_pipe_put_ex( apr_file_t** file, apr_os_file_t* thefile, int register_cleanup, apr_pool_t* cont ); apr_status_t apr_os_dir_put( apr_dir_t** dir, apr_os_dir_t* thedir, apr_pool_t* cont ); apr_status_t apr_os_sock_put( apr_socket_t** sock, apr_os_sock_t* thesock, apr_pool_t* cont ); apr_status_t apr_os_sock_make( apr_socket_t** apr_sock, apr_os_sock_info_t* os_sock_info, apr_pool_t* cont ); apr_status_t apr_os_proc_mutex_put( apr_proc_mutex_t** pmutex, apr_os_proc_mutex_t* ospmutex, apr_pool_t* cont ); apr_status_t apr_os_imp_time_put( apr_time_t* aprtime, apr_os_imp_time_t** ostime, apr_pool_t* cont ); apr_status_t apr_os_exp_time_put( apr_time_exp_t* aprtime, apr_os_exp_time_t** ostime, apr_pool_t* cont ); apr_status_t apr_os_shm_put( apr_shm_t** shm, apr_os_shm_t* osshm, apr_pool_t* cont ); apr_status_t apr_os_dso_handle_put( apr_dso_handle_t** dso, apr_os_dso_handle_t thedso, apr_pool_t* pool ); apr_status_t apr_os_dso_handle_get( apr_os_dso_handle_t* dso, apr_dso_handle_t* aprdso ); apr_status_t apr_os_uuid_get(unsigned char* uuid_data); const char* apr_os_default_encoding(apr_pool_t* pool); const char* apr_os_locale_encoding(apr_pool_t* pool); apr_status_t apr_proc_mutex_create( apr_proc_mutex_t** mutex, const char* fname, apr_lockmech_e mech, apr_pool_t* pool ); apr_status_t apr_proc_mutex_child_init( apr_proc_mutex_t** mutex, const char* fname, apr_pool_t* pool ); apr_status_t apr_proc_mutex_lock(apr_proc_mutex_t* mutex); apr_status_t apr_proc_mutex_trylock(apr_proc_mutex_t* mutex); apr_status_t apr_proc_mutex_unlock(apr_proc_mutex_t* mutex); apr_status_t apr_proc_mutex_destroy(apr_proc_mutex_t* mutex); apr_status_t apr_proc_mutex_cleanup(void* mutex); const char* apr_proc_mutex_lockfile(apr_proc_mutex_t* mutex); const char* apr_proc_mutex_name(apr_proc_mutex_t* mutex); const char* apr_proc_mutex_defname(void); apr_pool_t* apr_proc_mutex_pool_get(const apr_proc_mutex_t* theproc_mutex); apr_crypto_hash_t* apr_crypto_sha256_new(apr_pool_t* p); void apr_random_init( apr_random_t* g, apr_pool_t* p, apr_crypto_hash_t* pool_hash, apr_crypto_hash_t* key_hash, apr_crypto_hash_t* prng_hash ); apr_random_t* apr_random_standard_new(apr_pool_t* p); void apr_random_add_entropy( apr_random_t* g, const void* entropy_, apr_size_t bytes ); apr_status_t apr_random_insecure_bytes( apr_random_t* g, void* random, apr_size_t bytes ); apr_status_t apr_random_secure_bytes( apr_random_t* g, void* random, apr_size_t bytes ); void apr_random_barrier(apr_random_t* g); apr_status_t apr_random_secure_ready(apr_random_t* r); apr_status_t apr_random_insecure_ready(apr_random_t* r); void apr_random_after_fork(apr_proc_t* proc); apr_status_t apr_shm_create( apr_shm_t** m, apr_size_t reqsize, const char* filename, apr_pool_t* pool ); apr_status_t apr_shm_create_ex( apr_shm_t** m, apr_size_t reqsize, const char* filename, apr_pool_t* pool, apr_int32_t flags ); apr_status_t apr_shm_remove( const char* filename, apr_pool_t* pool ); apr_status_t apr_shm_destroy(apr_shm_t* m); apr_status_t apr_shm_attach( apr_shm_t** m, const char* filename, apr_pool_t* pool ); apr_status_t apr_shm_attach_ex( apr_shm_t** m, const char* filename, apr_pool_t* pool, apr_int32_t flags ); apr_status_t apr_shm_detach(apr_shm_t* m); void* apr_shm_baseaddr_get(const apr_shm_t* m); apr_size_t apr_shm_size_get(const apr_shm_t* m); apr_pool_t* apr_shm_pool_get(const apr_shm_t* theshm); apr_sigfunc_t* apr_signal( int signo, apr_sigfunc_t* func ); const char* apr_signal_description_get(int signum); void apr_signal_init(apr_pool_t* pglobal); apr_status_t apr_signal_block(int signum); apr_status_t apr_signal_unblock(int signum); void* apr_skiplist_alloc( apr_skiplist* sl, size_t size ); void apr_skiplist_free( apr_skiplist* sl, void* mem ); apr_status_t apr_skiplist_init( apr_skiplist** sl, apr_pool_t* p ); void apr_skiplist_set_compare( apr_skiplist* sl, apr_skiplist_compare XXX1, apr_skiplist_compare XXX2 ); void apr_skiplist_add_index( apr_skiplist* sl, apr_skiplist_compare XXX1, apr_skiplist_compare XXX2 ); apr_skiplistnode* apr_skiplist_getlist(apr_skiplist* sl); void* apr_skiplist_find_compare( apr_skiplist* sl, void* data, apr_skiplistnode** iter, apr_skiplist_compare func ); void* apr_skiplist_find( apr_skiplist* sl, void* data, apr_skiplistnode** iter ); void* apr_skiplist_next( apr_skiplist* sl, apr_skiplistnode** iter ); void* apr_skiplist_previous( apr_skiplist* sl, apr_skiplistnode** iter ); apr_skiplistnode* apr_skiplist_insert_compare( apr_skiplist* sl, void* data, apr_skiplist_compare comp ); apr_skiplistnode* apr_skiplist_insert( apr_skiplist* sl, void* data ); int apr_skiplist_remove_compare( apr_skiplist* sl, void* data, apr_skiplist_freefunc myfree, apr_skiplist_compare comp ); int apr_skiplist_remove( apr_skiplist* sl, void* data, apr_skiplist_freefunc myfree ); void apr_skiplist_remove_all( apr_skiplist* sl, apr_skiplist_freefunc myfree ); void apr_skiplist_destroy( apr_skiplist* sl, apr_skiplist_freefunc myfree ); void* apr_skiplist_pop( apr_skiplist* sl, apr_skiplist_freefunc myfree ); void* apr_skiplist_peek(apr_skiplist* sl); apr_skiplist* apr_skiplist_merge( apr_skiplist* sl1, apr_skiplist* sl2 ); int apr_strnatcmp( char const* a, char const* b ); int apr_strnatcasecmp( char const* a, char const* b ); char* apr_pstrdup( apr_pool_t* p, const char* s ); char* apr_pstrmemdup( apr_pool_t* p, const char* s, apr_size_t n ); char* apr_pstrndup( apr_pool_t* p, const char* s, apr_size_t n ); void* apr_pmemdup( apr_pool_t* p, const void* m, apr_size_t n ); char* apr_pstrcat( apr_pool_t* p, ... ); char* apr_pstrcatv( apr_pool_t* p, const struct iovec* vec, apr_size_t nvec, apr_size_t* nbytes ); char* apr_pvsprintf( apr_pool_t* p, const char* fmt, va_list ap ); char* apr_psprintf( apr_pool_t* p, const char* fmt, ... ); char* apr_cpystrn( char* dst, const char* src, apr_size_t dst_size ); char* apr_collapse_spaces( char* dest, const char* src ); apr_status_t apr_tokenize_to_argv( const char* arg_str, char*** argv_out, apr_pool_t* token_context ); char* apr_strtok( char* str, const char* sep, char** last ); int apr_snprintf( char* buf, apr_size_t len, const char* format, ... ); int apr_vsnprintf( char* buf, apr_size_t len, const char* format, va_list ap ); char* apr_itoa( apr_pool_t* p, int n ); char* apr_ltoa( apr_pool_t* p, long n ); char* apr_off_t_toa( apr_pool_t* p, apr_off_t n ); apr_status_t apr_strtoff( apr_off_t* offset, const char* buf, char** end, int base ); apr_int64_t apr_strtoi64( const char* buf, char** end, int base ); apr_int64_t apr_atoi64(const char* buf); char* apr_strfsize( apr_off_t size, char* buf ); apr_status_t apr_wait_for_io_or_timeout( apr_file_t* f, apr_socket_t* s, int for_read ); const apr_array_header_t* apr_table_elts(const apr_table_t* t); int apr_is_empty_table(const apr_table_t* t); int apr_is_empty_array(const apr_array_header_t* a); apr_array_header_t* apr_array_make( apr_pool_t* p, int nelts, int elt_size ); void* apr_array_push(apr_array_header_t* arr); void* apr_array_pop(apr_array_header_t* arr); void apr_array_clear(apr_array_header_t* arr); void apr_array_cat( apr_array_header_t* dst, const apr_array_header_t* src ); apr_array_header_t* apr_array_copy( apr_pool_t* p, const apr_array_header_t* arr ); apr_array_header_t* apr_array_copy_hdr( apr_pool_t* p, const apr_array_header_t* arr ); apr_array_header_t* apr_array_append( apr_pool_t* p, const apr_array_header_t* first, const apr_array_header_t* second ); char* apr_array_pstrcat( apr_pool_t* p, const apr_array_header_t* arr, const char sep ); apr_table_t* apr_table_make( apr_pool_t* p, int nelts ); apr_table_t* apr_table_copy( apr_pool_t* p, const apr_table_t* t ); apr_table_t* apr_table_clone( apr_pool_t* p, const apr_table_t* t ); void apr_table_clear(apr_table_t* t); const char* apr_table_get( const apr_table_t* t, const char* key ); const char* apr_table_getm( apr_pool_t* p, const apr_table_t* t, const char* key ); void apr_table_set( apr_table_t* t, const char* key, const char* val ); void apr_table_setn( apr_table_t* t, const char* key, const char* val ); void apr_table_unset( apr_table_t* t, const char* key ); void apr_table_merge( apr_table_t* t, const char* key, const char* val ); void apr_table_mergen( apr_table_t* t, const char* key, const char* val ); void apr_table_add( apr_table_t* t, const char* key, const char* val ); void apr_table_addn( apr_table_t* t, const char* key, const char* val ); apr_table_t* apr_table_overlay( apr_pool_t* p, const apr_table_t* overlay, const apr_table_t* base ); int apr_table_do( apr_table_do_callback_fn_t* comp, void* rec, const apr_table_t* t, ... ); int apr_table_vdo( apr_table_do_callback_fn_t* comp, void* rec, const apr_table_t* t, va_list vp ); void apr_table_overlap( apr_table_t* a, const apr_table_t* b, unsigned flags ); void apr_table_compress( apr_table_t* t, unsigned flags ); apr_status_t apr_thread_cond_create( apr_thread_cond_t** cond, apr_pool_t* pool ); apr_status_t apr_thread_cond_wait( apr_thread_cond_t* cond, apr_thread_mutex_t* mutex ); apr_status_t apr_thread_cond_timedwait( apr_thread_cond_t* cond, apr_thread_mutex_t* mutex, apr_interval_time_t timeout ); apr_status_t apr_thread_cond_signal(apr_thread_cond_t* cond); apr_status_t apr_thread_cond_broadcast(apr_thread_cond_t* cond); apr_status_t apr_thread_cond_destroy(apr_thread_cond_t* cond); apr_pool_t* apr_thread_cond_pool_get(const apr_thread_cond_t* thethread_cond); apr_status_t apr_thread_mutex_create( apr_thread_mutex_t** mutex, unsigned int flags, apr_pool_t* pool ); apr_status_t apr_thread_mutex_lock(apr_thread_mutex_t* mutex); apr_status_t apr_thread_mutex_trylock(apr_thread_mutex_t* mutex); apr_status_t apr_thread_mutex_unlock(apr_thread_mutex_t* mutex); apr_status_t apr_thread_mutex_destroy(apr_thread_mutex_t* mutex); apr_pool_t* apr_thread_mutex_pool_get(const apr_thread_mutex_t* thethread_mutex); apr_status_t apr_threadattr_create( apr_threadattr_t** new_attr, apr_pool_t* cont ); apr_status_t apr_threadattr_detach_set( apr_threadattr_t* attr, apr_int32_t on ); apr_status_t apr_threadattr_detach_get(apr_threadattr_t* attr); apr_status_t apr_threadattr_stacksize_set( apr_threadattr_t* attr, apr_size_t stacksize ); apr_status_t apr_threadattr_guardsize_set( apr_threadattr_t* attr, apr_size_t guardsize ); apr_status_t apr_thread_create( apr_thread_t** new_thread, apr_threadattr_t* attr, apr_thread_start_t func, void* data, apr_pool_t* cont ); apr_status_t apr_thread_exit( apr_thread_t* thd, apr_status_t retval ); apr_status_t apr_thread_join( apr_status_t* retval, apr_thread_t* thd ); void apr_thread_yield(void); apr_status_t apr_thread_once_init( apr_thread_once_t** control, apr_pool_t* p ); apr_status_t apr_thread_once( apr_thread_once_t* control, void(*)(void) func ); apr_status_t apr_thread_detach(apr_thread_t* thd); apr_status_t apr_thread_data_get( void** data, const char* key, apr_thread_t* thread ); apr_status_t apr_thread_data_set( void* data, const char* key, apr_status_t(*)(void*) cleanup, apr_thread_t* thread ); apr_status_t apr_threadkey_private_create( apr_threadkey_t** key, void(*)(void*) dest, apr_pool_t* cont ); apr_status_t apr_threadkey_private_get( void** new_mem, apr_threadkey_t* key ); apr_status_t apr_threadkey_private_set( void* priv, apr_threadkey_t* key ); apr_status_t apr_threadkey_private_delete(apr_threadkey_t* key); apr_status_t apr_threadkey_data_get( void** data, const char* key, apr_threadkey_t* threadkey ); apr_status_t apr_threadkey_data_set( void* data, const char* key, apr_status_t(*)(void*) cleanup, apr_threadkey_t* threadkey ); apr_status_t apr_procattr_create( apr_procattr_t** new_attr, apr_pool_t* cont ); apr_status_t apr_procattr_io_set( apr_procattr_t* attr, apr_int32_t in, apr_int32_t out, apr_int32_t err ); apr_status_t apr_procattr_child_in_set( struct apr_procattr_t* attr, apr_file_t* child_in, apr_file_t* parent_in ); apr_status_t apr_procattr_child_out_set( struct apr_procattr_t* attr, apr_file_t* child_out, apr_file_t* parent_out ); apr_status_t apr_procattr_child_err_set( struct apr_procattr_t* attr, apr_file_t* child_err, apr_file_t* parent_err ); apr_status_t apr_procattr_dir_set( apr_procattr_t* attr, const char* dir ); apr_status_t apr_procattr_cmdtype_set( apr_procattr_t* attr, apr_cmdtype_e cmd ); apr_status_t apr_procattr_detach_set( apr_procattr_t* attr, apr_int32_t detach ); apr_status_t apr_procattr_limit_set( apr_procattr_t* attr, apr_int32_t what, struct rlimit* limit ); apr_status_t apr_procattr_child_errfn_set( apr_procattr_t* attr, apr_child_errfn_t* errfn ); apr_status_t apr_procattr_error_check_set( apr_procattr_t* attr, apr_int32_t chk ); apr_status_t apr_procattr_addrspace_set( apr_procattr_t* attr, apr_int32_t addrspace ); apr_status_t apr_procattr_user_set( apr_procattr_t* attr, const char* username, const char* password ); apr_status_t apr_procattr_group_set( apr_procattr_t* attr, const char* groupname ); apr_status_t apr_proc_fork( apr_proc_t* proc, apr_pool_t* cont ); apr_status_t apr_proc_create( apr_proc_t* new_proc, const char* progname, const char*const* args, const char*const* env, apr_procattr_t* attr, apr_pool_t* pool ); apr_status_t apr_proc_wait( apr_proc_t* proc, int* exitcode, apr_exit_why_e* exitwhy, apr_wait_how_e waithow ); apr_status_t apr_proc_wait_all_procs( apr_proc_t* proc, int* exitcode, apr_exit_why_e* exitwhy, apr_wait_how_e waithow, apr_pool_t* p ); apr_status_t apr_proc_detach(int daemonize); void apr_proc_other_child_register( apr_proc_t* proc, void(*)(int reason, void*, int status) maintenance, void* data, apr_file_t* write_fd, apr_pool_t* p ); void apr_proc_other_child_unregister(void* data); apr_status_t apr_proc_other_child_alert( apr_proc_t* proc, int reason, int status ); void apr_proc_other_child_refresh( apr_other_child_rec_t* ocr, int reason ); void apr_proc_other_child_refresh_all(int reason); apr_status_t apr_proc_kill( apr_proc_t* proc, int sig ); void apr_pool_note_subprocess( apr_pool_t* a, apr_proc_t* proc, apr_kill_conditions_e how ); apr_status_t apr_setup_signal_thread(void); apr_status_t apr_signal_thread(int(*)(int signum) signal_handler); apr_pool_t* apr_thread_pool_get(const apr_thread_t* thethread); apr_status_t apr_thread_rwlock_create( apr_thread_rwlock_t** rwlock, apr_pool_t* pool ); apr_status_t apr_thread_rwlock_rdlock(apr_thread_rwlock_t* rwlock); apr_status_t apr_thread_rwlock_tryrdlock(apr_thread_rwlock_t* rwlock); apr_status_t apr_thread_rwlock_wrlock(apr_thread_rwlock_t* rwlock); apr_status_t apr_thread_rwlock_trywrlock(apr_thread_rwlock_t* rwlock); apr_status_t apr_thread_rwlock_unlock(apr_thread_rwlock_t* rwlock); apr_status_t apr_thread_rwlock_destroy(apr_thread_rwlock_t* rwlock); apr_pool_t* apr_thread_rwlock_pool_get(const apr_thread_rwlock_t* thethread_rwlock); apr_time_t apr_time_now(void); apr_status_t apr_time_ansi_put( apr_time_t* result, time_t input ); apr_status_t apr_time_exp_tz( apr_time_exp_t* result, apr_time_t input, apr_int32_t offs ); apr_status_t apr_time_exp_gmt( apr_time_exp_t* result, apr_time_t input ); apr_status_t apr_time_exp_lt( apr_time_exp_t* result, apr_time_t input ); apr_status_t apr_time_exp_get( apr_time_t* result, apr_time_exp_t* input ); apr_status_t apr_time_exp_gmt_get( apr_time_t* result, apr_time_exp_t* input ); void apr_sleep(apr_interval_time_t t); apr_status_t apr_rfc822_date( char* date_str, apr_time_t t ); apr_status_t apr_ctime( char* date_str, apr_time_t t ); apr_status_t apr_strftime( char* s, apr_size_t* retsize, apr_size_t max, const char* format, apr_time_exp_t* tm ); void apr_time_clock_hires(apr_pool_t* p); apr_status_t apr_uid_current( apr_uid_t* userid, apr_gid_t* groupid, apr_pool_t* p ); apr_status_t apr_uid_name_get( char** username, apr_uid_t userid, apr_pool_t* p ); apr_status_t apr_uid_get( apr_uid_t* userid, apr_gid_t* groupid, const char* username, apr_pool_t* p ); apr_status_t apr_uid_homepath_get( char** dirname, const char* username, apr_pool_t* p ); apr_status_t apr_gid_name_get( char** groupname, apr_gid_t groupid, apr_pool_t* p ); apr_status_t apr_gid_get( apr_gid_t* groupid, const char* groupname, apr_pool_t* p ); void apr_version(apr_version_t* pvsn); const char* apr_version_string(void); void apr__SHA256_Init(SHA256_CTX*); void apr__SHA256_Update( SHA256_CTX*, const apr_byte_t*, size_t ); void apr__SHA256_Final( apr_byte_t[SHA256_DIGEST_LENGTH], SHA256_CTX* ); char* apr__SHA256_End( SHA256_CTX*, char[SHA256_DIGEST_STRING_LENGTH] ); char* apr__SHA256_Data( const apr_byte_t*, size_t, char[SHA256_DIGEST_STRING_LENGTH] ); // macros #define APRMAXHOSTLEN #define APR_ALIGN( \ size, \ boundary \ ) #define APR_ALIGN_DEFAULT(size) #define APR_ALLOCATOR_MAX_FREE_UNLIMITED #define APR_ANONYMOUS #define APR_ANYADDR #define APR_APPEND #define APR_ARRAY_IDX( \ ary, \ i, \ type \ ) #define APR_ARRAY_PUSH( \ ary, \ type \ ) #define APR_ASCII_BLANK #define APR_ASCII_CR #define APR_ASCII_LF #define APR_ASCII_TAB #define APR_BADARG #define APR_BADCH #define APR_BEGIN_DECLS #define APR_BINARY #define APR_BUFFERED #define APR_CHARSET_EBCDIC #define APR_CHILD_BLOCK #define APR_CHILD_DONE #define APR_CHILD_NOTDONE #define APR_COPYRIGHT #define APR_CREATE #define APR_CTIME_LEN #define APR_CUR #define APR_DECLARE(type) #define APR_DECLARE_DATA #define APR_DECLARE_INHERIT_SET(type) #define APR_DECLARE_INHERIT_UNSET(type) #define APR_DECLARE_NONSTD(type) #define APR_DELONCLOSE #define APR_DETACH #define APR_DSOPATH #define APR_EABOVEROOT #define APR_EABSOLUTE #define APR_EACCES #define APR_EAFNOSUPPORT #define APR_EAGAIN #define APR_EBADDATE #define APR_EBADF #define APR_EBADIP #define APR_EBADMASK #define APR_EBADPATH #define APR_EBUSY #define APR_ECONNABORTED #define APR_ECONNREFUSED #define APR_ECONNRESET #define APR_EDSOOPEN #define APR_EEXIST #define APR_EFTYPE #define APR_EGENERAL #define APR_EHOSTUNREACH #define APR_EINCOMPLETE #define APR_EINIT #define APR_EINPROGRESS #define APR_EINTR #define APR_EINVAL #define APR_EINVALSOCK #define APR_EMFILE #define APR_EMISMATCH #define APR_ENAMETOOLONG #define APR_END #define APR_END_DECLS #define APR_ENETUNREACH #define APR_ENFILE #define APR_ENODIR #define APR_ENOENT #define APR_ENOLOCK #define APR_ENOMEM #define APR_ENOPOLL #define APR_ENOPOOL #define APR_ENOPROC #define APR_ENOSHMAVAIL #define APR_ENOSOCKET #define APR_ENOSPC #define APR_ENOSTAT #define APR_ENOTDIR #define APR_ENOTEMPTY #define APR_ENOTENOUGHENTROPY #define APR_ENOTHDKEY #define APR_ENOTHREAD #define APR_ENOTIME #define APR_ENOTIMPL #define APR_ENOTSOCK #define APR_EOF #define APR_EOL_STR #define APR_EPATHWILD #define APR_EPIPE #define APR_EPROC_UNKNOWN #define APR_ERELATIVE #define APR_ESCAPE_STRING #define APR_ESPIPE #define APR_ESYMNOTFOUND #define APR_ETIMEDOUT #define APR_EXCL #define APR_EXDEV #define APR_FILEBASED #define APR_FILEPATH_ENCODING_LOCALE #define APR_FILEPATH_ENCODING_UNKNOWN #define APR_FILEPATH_ENCODING_UTF8 #define APR_FILEPATH_NATIVE #define APR_FILEPATH_NOTABOVEROOT #define APR_FILEPATH_NOTABSOLUTE #define APR_FILEPATH_NOTRELATIVE #define APR_FILEPATH_SECUREROOT #define APR_FILEPATH_SECUREROOTTEST #define APR_FILEPATH_TRUENAME #define APR_FILES_AS_SOCKETS #define APR_FILE_ATTR_EXECUTABLE #define APR_FILE_ATTR_HIDDEN #define APR_FILE_ATTR_READONLY #define APR_FILE_NOCLEANUP #define APR_FILE_SOURCE_PERMS #define APR_FINFO_ATIME #define APR_FINFO_CSIZE #define APR_FINFO_CTIME #define APR_FINFO_DEV #define APR_FINFO_DIRENT #define APR_FINFO_GPROT #define APR_FINFO_GROUP #define APR_FINFO_ICASE #define APR_FINFO_IDENT #define APR_FINFO_INODE #define APR_FINFO_LINK #define APR_FINFO_MIN #define APR_FINFO_MTIME #define APR_FINFO_NAME #define APR_FINFO_NLINK #define APR_FINFO_NORM #define APR_FINFO_OWNER #define APR_FINFO_PROT #define APR_FINFO_SIZE #define APR_FINFO_TYPE #define APR_FINFO_UPROT #define APR_FINFO_USER #define APR_FINFO_WPROT #define APR_FLOCK_EXCLUSIVE #define APR_FLOCK_NONBLOCK #define APR_FLOCK_SHARED #define APR_FLOCK_TYPEMASK #define APR_FNM_CASE_BLIND #define APR_FNM_NOESCAPE #define APR_FNM_NOMATCH #define APR_FNM_PATHNAME #define APR_FNM_PERIOD #define APR_FOPEN_APPEND #define APR_FOPEN_BINARY #define APR_FOPEN_BUFFERED #define APR_FOPEN_CREATE #define APR_FOPEN_DELONCLOSE #define APR_FOPEN_EXCL #define APR_FOPEN_LARGEFILE #define APR_FOPEN_NOCLEANUP #define APR_FOPEN_NONBLOCK #define APR_FOPEN_READ #define APR_FOPEN_SENDFILE_ENABLED #define APR_FOPEN_SHARELOCK #define APR_FOPEN_SPARSE #define APR_FOPEN_TRUNCATE #define APR_FOPEN_WRITE #define APR_FOPEN_XTHREAD #define APR_FPROT_FILE_SOURCE_PERMS #define APR_FPROT_GEXECUTE #define APR_FPROT_GREAD #define APR_FPROT_GSETID #define APR_FPROT_GWRITE #define APR_FPROT_OS_DEFAULT #define APR_FPROT_UEXECUTE #define APR_FPROT_UREAD #define APR_FPROT_USETID #define APR_FPROT_UWRITE #define APR_FPROT_WEXECUTE #define APR_FPROT_WREAD #define APR_FPROT_WSTICKY #define APR_FPROT_WWRITE #define APR_FROM_OS_ERROR(e) #define APR_FULL_BLOCK #define APR_FULL_NONBLOCK #define APR_GEXECUTE #define APR_GREAD #define APR_GSETID #define APR_GWRITE #define APR_HASH_KEY_STRING #define APR_HAS_DSO #define APR_HAS_FCNTL_SERIALIZE #define APR_HAS_FLOCK_SERIALIZE #define APR_HAS_FORK #define APR_HAS_INLINE #define APR_HAS_LARGE_FILES #define APR_HAS_MMAP #define APR_HAS_OS_UUID #define APR_HAS_OTHER_CHILD #define APR_HAS_POSIXSEM_SERIALIZE #define APR_HAS_PROC_INVOKED #define APR_HAS_PROC_PTHREAD_SERIALIZE #define APR_HAS_RANDOM #define APR_HAS_SENDFILE #define APR_HAS_SHARED_MEMORY #define APR_HAS_SO_ACCEPTFILTER #define APR_HAS_SYSVSEM_SERIALIZE #define APR_HAS_THREADS #define APR_HAS_UNICODE_FS #define APR_HAS_USER #define APR_HAS_XTHREAD_FILES #define APR_HAVE_ARPA_INET_H #define APR_HAVE_CONIO_H #define APR_HAVE_CORKABLE_TCP #define APR_HAVE_CRYPT_H #define APR_HAVE_CTYPE_H #define APR_HAVE_DIRENT_H #define APR_HAVE_ERRNO_H #define APR_HAVE_FCNTL_H #define APR_HAVE_GETRLIMIT #define APR_HAVE_INET_ADDR #define APR_HAVE_INET_NETWORK #define APR_HAVE_IN_ADDR #define APR_HAVE_IOVEC #define APR_HAVE_IO_H #define APR_HAVE_IPV6 #define APR_HAVE_LIMITS_H #define APR_HAVE_MEMCHR #define APR_HAVE_MEMMOVE #define APR_HAVE_NETDB_H #define APR_HAVE_NETINET_IN_H #define APR_HAVE_NETINET_SCTP_H #define APR_HAVE_NETINET_SCTP_UIO_H #define APR_HAVE_NETINET_TCP_H #define APR_HAVE_PROCESS_H #define APR_HAVE_PTHREAD_H #define APR_HAVE_SA_STORAGE #define APR_HAVE_SCTP #define APR_HAVE_SEMAPHORE_H #define APR_HAVE_SETRLIMIT #define APR_HAVE_SHMEM_BEOS #define APR_HAVE_SHMEM_MMAP_ANON #define APR_HAVE_SHMEM_MMAP_SHM #define APR_HAVE_SHMEM_MMAP_TMP #define APR_HAVE_SHMEM_MMAP_ZERO #define APR_HAVE_SHMEM_SHMGET #define APR_HAVE_SHMEM_SHMGET_ANON #define APR_HAVE_SIGACTION #define APR_HAVE_SIGNAL_H #define APR_HAVE_SIGSUSPEND #define APR_HAVE_SIGWAIT #define APR_HAVE_STDARG_H #define APR_HAVE_STDINT_H #define APR_HAVE_STDIO_H #define APR_HAVE_STDLIB_H #define APR_HAVE_STRCASECMP #define APR_HAVE_STRDUP #define APR_HAVE_STRICMP #define APR_HAVE_STRINGS_H #define APR_HAVE_STRING_H #define APR_HAVE_STRNCASECMP #define APR_HAVE_STRNICMP #define APR_HAVE_STRSTR #define APR_HAVE_STRUCT_RLIMIT #define APR_HAVE_SYS_IOCTL_H #define APR_HAVE_SYS_SENDFILE_H #define APR_HAVE_SYS_SIGNAL_H #define APR_HAVE_SYS_SOCKET_H #define APR_HAVE_SYS_SOCKIO_H #define APR_HAVE_SYS_SYSLIMITS_H #define APR_HAVE_SYS_TIME_H #define APR_HAVE_SYS_TYPES_H #define APR_HAVE_SYS_UIO_H #define APR_HAVE_SYS_UN_H #define APR_HAVE_SYS_WAIT_H #define APR_HAVE_TIME_H #define APR_HAVE_UNION_SEMUN #define APR_HAVE_UNISTD_H #define APR_HAVE_WINDOWS_H #define APR_HAVE_WINSOCK2_H #define APR_INADDR_NONE #define APR_INCHILD #define APR_INCOMPLETE #define APR_INCOMPLETE_READ #define APR_INCOMPLETE_WRITE #define APR_INET #define APR_INET6 #define APR_INLINE #define APR_INPARENT #define APR_INT16_MAX #define APR_INT16_MIN #define APR_INT32_MAX #define APR_INT32_MIN #define APR_INT64_C(val) #define APR_INT64_MAX #define APR_INT64_MIN #define APR_INT64_T_FMT #define APR_IPV4_ADDR_OK #define APR_IPV6_ADDR_OK #define APR_IPV6_V6ONLY #define APR_IS_BIGENDIAN #define APR_IS_DEV_STRING #define APR_KEYBASED #define APR_LARGEFILE #define APR_LIMIT_CPU #define APR_LIMIT_MEM #define APR_LIMIT_NOFILE #define APR_LIMIT_NPROC #define APR_MAJOR_VERSION #define APR_MAX_IOVEC_SIZE #define APR_MAX_SECS_TO_LINGER #define APR_MEMNODE_T_SIZE #define APR_MINOR_VERSION #define APR_MMAP_CANDIDATE(filelength) #define APR_MMAP_LIMIT #define APR_MMAP_READ #define APR_MMAP_THRESHOLD #define APR_MMAP_WRITE #define APR_NOTDETACH #define APR_NOTFOUND #define APR_NO_FILE #define APR_NO_PIPE #define APR_OC_REASON_DEATH #define APR_OC_REASON_LOST #define APR_OC_REASON_RESTART #define APR_OC_REASON_RUNNING #define APR_OC_REASON_UNREGISTER #define APR_OC_REASON_UNWRITABLE #define APR_OFFSET( \ p_type, \ field \ ) #define APR_OFFSETOF( \ s_type, \ field \ ) #define APR_OFF_T_FMT #define APR_OS_DEFAULT #define APR_OS_ERRSPACE_SIZE #define APR_OS_START_CANONERR #define APR_OS_START_EAIERR #define APR_OS_START_ERROR #define APR_OS_START_STATUS #define APR_OS_START_SYSERR #define APR_OS_START_USEERR #define APR_OS_START_USERERR #define APR_OVERLAP_TABLES_MERGE #define APR_OVERLAP_TABLES_SET #define APR_O_NONBLOCK_INHERITED #define APR_PARENT_BLOCK #define APR_PATCH_VERSION #define APR_PID_T_FMT #define APR_POLLERR #define APR_POLLHUP #define APR_POLLIN #define APR_POLLNVAL #define APR_POLLOUT #define APR_POLLPRI #define APR_POLLSET_NOCOPY #define APR_POLLSET_NODEFAULT #define APR_POLLSET_THREADSAFE #define APR_POLLSET_WAKEABLE #define APR_POOL_DECLARE_ACCESSOR(type) #define APR_POOL_IMPLEMENT_ACCESSOR(type) #define APR_POOL__FILE_LINE__ #define APR_PROCATTR_USER_SET_REQUIRES_PASSWORD #define APR_PROCESS_LOCK_IS_GLOBAL #define APR_PROC_CHECK_CORE_DUMP(x) #define APR_PROC_CHECK_EXIT(x) #define APR_PROC_CHECK_SIGNALED(x) #define APR_PROC_DETACH_DAEMONIZE #define APR_PROC_DETACH_FOREGROUND #define APR_PROC_MUTEX_IS_GLOBAL #define APR_PROTO_SCTP #define APR_PROTO_TCP #define APR_PROTO_UDP #define APR_READ #define APR_READ_BLOCK #define APR_RESET_NODELAY #define APR_RFC822_DATE_LEN #define APR_RING_CHECK( \ hp, \ elem, \ link, \ msg \ ) #define APR_RING_CHECK_CONSISTENCY( \ hp, \ elem, \ link \ ) #define APR_RING_CHECK_ELEM( \ ep, \ elem, \ link, \ msg \ ) #define APR_RING_CHECK_ELEM_CONSISTENCY( \ ep, \ elem, \ link \ ) #define APR_RING_CHECK_ONE( \ msg, \ ptr \ ) #define APR_RING_CONCAT( \ h1, \ h2, \ elem, \ link \ ) #define APR_RING_ELEM_INIT( \ ep, \ link \ ) #define APR_RING_EMPTY( \ hp, \ elem, \ link \ ) #define APR_RING_ENTRY(elem) #define APR_RING_FIRST(hp) #define APR_RING_FOREACH( \ ep, \ head, \ elem, \ link \ ) #define APR_RING_FOREACH_SAFE( \ ep1, \ ep2, \ head, \ elem, \ link \ ) #define APR_RING_HEAD( \ head, \ elem \ ) #define APR_RING_INIT( \ hp, \ elem, \ link \ ) #define APR_RING_INSERT_AFTER( \ lep, \ nep, \ link \ ) #define APR_RING_INSERT_BEFORE( \ lep, \ nep, \ link \ ) #define APR_RING_INSERT_HEAD( \ hp, \ nep, \ elem, \ link \ ) #define APR_RING_INSERT_TAIL( \ hp, \ nep, \ elem, \ link \ ) #define APR_RING_LAST(hp) #define APR_RING_NEXT( \ ep, \ link \ ) #define APR_RING_PREPEND( \ h1, \ h2, \ elem, \ link \ ) #define APR_RING_PREV( \ ep, \ link \ ) #define APR_RING_REMOVE( \ ep, \ link \ ) #define APR_RING_SENTINEL( \ hp, \ elem, \ link \ ) #define APR_RING_SPLICE_AFTER( \ lep, \ ep1, \ epN, \ link \ ) #define APR_RING_SPLICE_BEFORE( \ lep, \ ep1, \ epN, \ link \ ) #define APR_RING_SPLICE_HEAD( \ hp, \ ep1, \ epN, \ elem, \ link \ ) #define APR_RING_SPLICE_TAIL( \ hp, \ ep1, \ epN, \ elem, \ link \ ) #define APR_RING_UNSPLICE( \ ep1, \ epN, \ link \ ) #define APR_SENDFILE_DISCONNECT_SOCKET #define APR_SENDFILE_ENABLED #define APR_SET #define APR_SHARELOCK #define APR_SHM_NS_GLOBAL #define APR_SHM_NS_LOCAL #define APR_SIZEOF_VOIDP #define APR_SIZE_MAX #define APR_SIZE_T_FMT #define APR_SO_BROADCAST #define APR_SO_DEBUG #define APR_SO_DISCONNECTED #define APR_SO_KEEPALIVE #define APR_SO_LINGER #define APR_SO_NONBLOCK #define APR_SO_RCVBUF #define APR_SO_REUSEADDR #define APR_SO_SNDBUF #define APR_SSIZE_T_FMT #define APR_STATUS_IS_ANONYMOUS(s) #define APR_STATUS_IS_BADARG(s) #define APR_STATUS_IS_BADCH(s) #define APR_STATUS_IS_CHILD_DONE(s) #define APR_STATUS_IS_CHILD_NOTDONE(s) #define APR_STATUS_IS_DETACH(s) #define APR_STATUS_IS_EABOVEROOT(s) #define APR_STATUS_IS_EABSOLUTE(s) #define APR_STATUS_IS_EACCES(s) #define APR_STATUS_IS_EAFNOSUPPORT(s) #define APR_STATUS_IS_EAGAIN(s) #define APR_STATUS_IS_EBADDATE(s) #define APR_STATUS_IS_EBADF(s) #define APR_STATUS_IS_EBADIP(s) #define APR_STATUS_IS_EBADMASK(s) #define APR_STATUS_IS_EBADPATH(s) #define APR_STATUS_IS_EBUSY(s) #define APR_STATUS_IS_ECONNABORTED(s) #define APR_STATUS_IS_ECONNREFUSED(s) #define APR_STATUS_IS_ECONNRESET(s) #define APR_STATUS_IS_EDSOOPEN(s) #define APR_STATUS_IS_EEXIST(s) #define APR_STATUS_IS_EFTYPE(s) #define APR_STATUS_IS_EGENERAL(s) #define APR_STATUS_IS_EHOSTUNREACH(s) #define APR_STATUS_IS_EINCOMPLETE(s) #define APR_STATUS_IS_EINIT(s) #define APR_STATUS_IS_EINPROGRESS(s) #define APR_STATUS_IS_EINTR(s) #define APR_STATUS_IS_EINVAL(s) #define APR_STATUS_IS_EINVALSOCK(s) #define APR_STATUS_IS_EMFILE(s) #define APR_STATUS_IS_EMISMATCH(s) #define APR_STATUS_IS_ENAMETOOLONG(s) #define APR_STATUS_IS_ENETUNREACH(s) #define APR_STATUS_IS_ENFILE(s) #define APR_STATUS_IS_ENODIR(s) #define APR_STATUS_IS_ENOENT(s) #define APR_STATUS_IS_ENOLOCK(s) #define APR_STATUS_IS_ENOMEM(s) #define APR_STATUS_IS_ENOPOLL(s) #define APR_STATUS_IS_ENOPOOL(s) #define APR_STATUS_IS_ENOPROC(s) #define APR_STATUS_IS_ENOSHMAVAIL(s) #define APR_STATUS_IS_ENOSOCKET(s) #define APR_STATUS_IS_ENOSPC(s) #define APR_STATUS_IS_ENOSTAT(s) #define APR_STATUS_IS_ENOTDIR(s) #define APR_STATUS_IS_ENOTEMPTY(s) #define APR_STATUS_IS_ENOTENOUGHENTROPY(s) #define APR_STATUS_IS_ENOTHDKEY(s) #define APR_STATUS_IS_ENOTHREAD(s) #define APR_STATUS_IS_ENOTIME(s) #define APR_STATUS_IS_ENOTIMPL(s) #define APR_STATUS_IS_ENOTSOCK(s) #define APR_STATUS_IS_EOF(s) #define APR_STATUS_IS_EPATHWILD(s) #define APR_STATUS_IS_EPIPE(s) #define APR_STATUS_IS_EPROC_UNKNOWN(s) #define APR_STATUS_IS_ERELATIVE(s) #define APR_STATUS_IS_ESPIPE(s) #define APR_STATUS_IS_ESYMNOTFOUND(s) #define APR_STATUS_IS_ETIMEDOUT(s) #define APR_STATUS_IS_EXDEV(s) #define APR_STATUS_IS_FILEBASED(s) #define APR_STATUS_IS_INCHILD(s) #define APR_STATUS_IS_INCOMPLETE(s) #define APR_STATUS_IS_INPARENT(s) #define APR_STATUS_IS_KEYBASED(s) #define APR_STATUS_IS_NOTDETACH(s) #define APR_STATUS_IS_NOTFOUND(s) #define APR_STATUS_IS_TIMEUP(s) #define APR_STRINGIFY(n) #define APR_STRINGIFY_HELPER(n) #define APR_SUCCESS #define APR_TCP_DEFER_ACCEPT #define APR_TCP_NODELAY #define APR_TCP_NODELAY_INHERITED #define APR_TCP_NOPUSH #define APR_TCP_NOPUSH_FLAG #define APR_THREAD_FUNC #define APR_THREAD_MUTEX_DEFAULT #define APR_THREAD_MUTEX_NESTED #define APR_THREAD_MUTEX_UNNESTED #define APR_TIMEUP #define APR_TIME_C(val) #define APR_TIME_T_FMT #define APR_TO_OS_ERROR(e) #define APR_TRUNCATE #define APR_UEXECUTE #define APR_UINT16_MAX #define APR_UINT32_MAX #define APR_UINT64_C(val) #define APR_UINT64_MAX #define APR_UINT64_T_FMT #define APR_UINT64_T_HEX_FMT #define APR_UNSPEC #define APR_UREAD #define APR_USEC_PER_SEC #define APR_USETID #define APR_USE_FCNTL_SERIALIZE #define APR_USE_FLOCK_SERIALIZE #define APR_USE_POSIXSEM_SERIALIZE #define APR_USE_PROC_PTHREAD_SERIALIZE #define APR_USE_PTHREAD_SERIALIZE #define APR_USE_SHMEM_BEOS #define APR_USE_SHMEM_MMAP_ANON #define APR_USE_SHMEM_MMAP_SHM #define APR_USE_SHMEM_MMAP_TMP #define APR_USE_SHMEM_MMAP_ZERO #define APR_USE_SHMEM_SHMGET #define APR_USE_SHMEM_SHMGET_ANON #define APR_USE_SYSVSEM_SERIALIZE #define APR_UTIL_ERRSPACE_SIZE #define APR_UTIL_START_STATUS #define APR_UWRITE #define APR_VERSION_AT_LEAST( \ major, \ minor, \ patch \ ) #define APR_VERSION_STRING #define APR_VERSION_STRING_CSV #define APR_WANT_IOVEC #define APR_WANT_IOVEC #define APR_WANT_MEMFUNC #define APR_WANT_MEMFUNC #define APR_WANT_STDIO #define APR_WEXECUTE #define APR_WREAD #define APR_WRITE #define APR_WRITE_BLOCK #define APR_WSTICKY #define APR_WWRITE #define APR_XTHREAD #define HUGE_STRING_LEN #define SHA256_BLOCK_LENGTH #define SHA256_DIGEST_LENGTH #define SHA256_DIGEST_STRING_LENGTH #define WEXITSTATUS(status) #define WTERMSIG(status) #define apr_get_netos_error() #define apr_get_os_error() #define apr_gid_compare( \ left, \ right \ ) #define apr_inet_addr #define apr_isalnum(c) #define apr_isalpha(c) #define apr_isascii(c) #define apr_iscntrl(c) #define apr_isdigit(c) #define apr_isgraph(c) #define apr_islower(c) #define apr_isprint(c) #define apr_ispunct(c) #define apr_isspace(c) #define apr_isupper(c) #define apr_isxdigit(c) #define apr_killpg( \ x, \ y \ ) #define apr_os_global_mutex_get #define apr_os_global_mutex_t #define apr_set_netos_error(e) #define apr_set_os_error(e) #define apr_time_as_msec(time) #define apr_time_from_msec(msec) #define apr_time_from_sec(sec) #define apr_time_make( \ sec, \ usec \ ) #define apr_time_msec(time) #define apr_time_sec(time) #define apr_time_usec(time) #define apr_tolower(c) #define apr_toupper(c) #define apr_uid_compare( \ left, \ right \ ) #define apr_wait_t
Detailed Documentation
Global Functions
void apr_version(apr_version_t* pvsn)
Return APR’s version information information in a numeric form.
Parameters:
pvsn |
Pointer to a version structure for returning the version information. |
const char* apr_version_string(void)
Return APR’s version information as a string.
Macros
#define APR_DECLARE_INHERIT_SET(type)
Prototype for type-specific declarations of apr_foo_inherit_set functions. Doxygen unwraps this macro (via doxygen.conf) to provide actual help for each specific occurrence of apr_foo_inherit_set.
the linkage is specified for APR. It would be possible to expand the macros to support other linkages.
#define APR_DECLARE_INHERIT_UNSET(type)
Prototype for type-specific declarations of apr_foo_inherit_unset functions. Doxygen unwraps this macro (via doxygen.conf) to provide actual help for each specific occurrence of apr_foo_inherit_unset.
the linkage is specified for APR. It would be possible to expand the macros to support other linkages.
#define APR_IS_DEV_STRING
Internal: string form of the “is dev” flag
#define APR_MAJOR_VERSION
major version Major API changes that could cause compatibility problems for older programs such as structure size changes. No binary compatibility is possible across a change in the major version.
#define APR_MINOR_VERSION
minor version Minor API changes that do not cause binary compatibility problems. Reset to 0 when upgrading APR_MAJOR_VERSION
#define APR_PATCH_VERSION
patch level The Patch Level never includes API changes, simply bug fixes. Reset to 0 when upgrading APR_MINOR_VERSION
#define APR_STRINGIFY(n)
Properly quote a value as a string in the C preprocessor
#define APR_STRINGIFY_HELPER(n)
Helper macro for APR_STRINGIFY
#define APR_VERSION_AT_LEAST( \ major, \ minor, \ patch \ )
The symbol APR_IS_DEV_VERSION is only defined for internal, “development” copies of APR. It is undefined for released versions of APR. Check at compile time if the APR version is at least a certain level. This macro is available with APR versions starting with 1.3.0.
Parameters:
major |
The major version component of the version checked for (e.g., the “1” of “1.3.0”). |
minor |
The minor version component of the version checked for (e.g., the “3” of “1.3.0”). |
patch |
The patch level component of the version checked for (e.g., the “0” of “1.3.0”). |
#define APR_VERSION_STRING
The formatted string of APR’s version
#define APR_VERSION_STRING_CSV
An alternative formatted string of APR’s version
#define APR_WANT_IOVEC
for apr_file_writev
#define APR_WANT_MEMFUNC
For no good reason?
#define APR_WANT_MEMFUNC
for no good reason?
#define APR_WANT_STDIO
for SEEK_*