You've already forked lazarus-ccr
Completed the 2.2 header translation.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@16 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 1999-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -246,3 +246,10 @@
|
|||||||
{$define AP_HAVE_RELIABLE_PIPED_LOGS}
|
{$define AP_HAVE_RELIABLE_PIPED_LOGS}
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
|
{ Presume that the compiler supports C99-style designated
|
||||||
|
* initializers if using GCC (but not G++), or for any other compiler
|
||||||
|
* which claims C99 support. }
|
||||||
|
//#if (defined(__GNUC__) && !defined(__cplusplus)) \
|
||||||
|
// || (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L)
|
||||||
|
//#define AP_HAVE_DESIGNATED_INITIALIZER
|
||||||
|
{.$endif}
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 1999-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -42,10 +42,10 @@
|
|||||||
* 20011127 (2.0.29-dev) bump for postconfig hook change, and removal of socket
|
* 20011127 (2.0.29-dev) bump for postconfig hook change, and removal of socket
|
||||||
* from connection record
|
* from connection record
|
||||||
* 20011212 (2.0.30-dev) bump for new used_path_info member of request_rec
|
* 20011212 (2.0.30-dev) bump for new used_path_info member of request_rec
|
||||||
* 20011218 (2.0.30-dev) bump for new sbh member of conn_rec, different
|
* 20011218 (2.0.30-dev) bump for new sbh member of conn_rec, different
|
||||||
* declarations for scoreboard, new parameter to
|
* declarations for scoreboard, new parameter to
|
||||||
* create_connection hook
|
* create_connection hook
|
||||||
* 20020102 (2.0.30-dev) bump for changed type of limit_req_body in
|
* 20020102 (2.0.30-dev) bump for changed type of limit_req_body in
|
||||||
* core_dir_config
|
* core_dir_config
|
||||||
* 20020109 (2.0.31-dev) bump for changed shm and scoreboard declarations
|
* 20020109 (2.0.31-dev) bump for changed shm and scoreboard declarations
|
||||||
* 20020111 (2.0.31-dev) bump for ETag fields added at end of cor_dir_config
|
* 20020111 (2.0.31-dev) bump for ETag fields added at end of cor_dir_config
|
||||||
@ -70,27 +70,47 @@
|
|||||||
* 20020625 (2.0.40-dev) Changed conn_rec->keepalive to an enumeration
|
* 20020625 (2.0.40-dev) Changed conn_rec->keepalive to an enumeration
|
||||||
* 20020628 (2.0.40-dev) Added filter_init to filter registration functions
|
* 20020628 (2.0.40-dev) Added filter_init to filter registration functions
|
||||||
* 20020903 (2.0.41-dev) APR's error constants changed
|
* 20020903 (2.0.41-dev) APR's error constants changed
|
||||||
|
* 20020903.1 (2.1.0-dev) allow_encoded_slashes added to core_dir_config
|
||||||
* 20020903.2 (2.0.46-dev) add ap_escape_logitem
|
* 20020903.2 (2.0.46-dev) add ap_escape_logitem
|
||||||
* 20020903.3 (2.0.46-dev) allow_encoded_slashes added to core_dir_config
|
* 20030213.1 (2.1.0-dev) changed log_writer optional fn's to return previous
|
||||||
* 20020903.4 (2.0.47-dev) add ap_is_recursion_limit_exceeded()
|
* handler
|
||||||
* 20020903.5 (2.0.49-dev) add ap_escape_errorlog_item()
|
* 20030821 (2.1.0-dev) bumped mod_include's entire API
|
||||||
* 20020903.6 (2.0.49-dev) add insert_error_filter hook
|
* 20030821.1 (2.1.0-dev) added XHTML doctypes
|
||||||
* 20020903.7 (2.0.49-dev) added XHTML Doctypes
|
* 20030821.2 (2.1.0-dev) added ap_escape_errorlog_item
|
||||||
* 20020903.8 (2.0.50-dev) export ap_set_sub_req_protocol and
|
* 20030821.3 (2.1.0-dev) added ap_get_server_revision / ap_version_t
|
||||||
* ap_finalize_sub_req_protocol on Win32 and NetWare
|
* 20040425 (2.1.0-dev) removed ap_add_named_module API
|
||||||
* 20020903.9 (2.0.51-dev) create pcommands and initialize arrays before
|
* changed ap_add_module, ap_add_loaded_module,
|
||||||
* calling ap_setup_prelinked_modules
|
* ap_setup_prelinked_modules, ap_process_resource_config
|
||||||
* 20020903.10 (2.0.55-dev) add ap_log_cerror()
|
* 20040425.1 (2.1.0-dev) Added ap_module_symbol_t and ap_prelinked_module_symbols
|
||||||
* 20020903.11 (2.0.55-dev) added trace_enable to core_server_config
|
* 20050101.0 (2.1.2-dev) Axed misnamed http_method for http_scheme (which it was!)
|
||||||
* 20020903.12 (2.0.56-dev) added ap_get_server_revision / ap_version_t
|
* 20050127.0 (2.1.3-dev) renamed regex_t->ap_regex_t, regmatch_t->ap_regmatch_t,
|
||||||
|
* REG_*->AP_REG_*, removed reg* in place of ap_reg*;
|
||||||
|
* added ap_regex.h
|
||||||
|
* 20050217.0 (2.1.3-dev) Axed find_child_by_pid, mpm_*_completion_context (winnt mpm)
|
||||||
|
* symbols from the public sector, and decorated real_exit_code
|
||||||
|
* with ap_ in the win32 os.h.
|
||||||
|
* 20050305.0 (2.1.4-dev) added pid and generation fields to worker_score
|
||||||
|
* 20050305.1 (2.1.5-dev) added ap_vhost_iterate_given_conn.
|
||||||
|
* 20050305.2 (2.1.5-dev) added AP_INIT_TAKE_ARGV.
|
||||||
|
* 20050305.3 (2.1.5-dev) added Protocol Framework.
|
||||||
|
* 20050701.0 (2.1.7-dev) Bump MODULE_MAGIC_COOKIE to "AP21"!
|
||||||
|
* 20050701.1 (2.1.7-dev) trace_enable member added to core server_config
|
||||||
|
* 20050708.0 (2.1.7-dev) Bump MODULE_MAGIC_COOKIE to "AP22"!
|
||||||
|
* 20050708.1 (2.1.7-dev) add proxy request_status hook (minor)
|
||||||
|
* 20051006.0 (2.1.8-dev) NET_TIME filter eliminated
|
||||||
|
* 20051115.0 (2.1.10-dev/2.2.0) add use_canonical_phys_port to core_dir_config
|
||||||
|
* 20051115.1 (2.2.1) flush_packets and flush_wait members added to
|
||||||
|
* proxy_server (minor)
|
||||||
|
* 20051115.2 (2.2.2) added inreslist member to proxy_conn_rec (minor)
|
||||||
|
* 20051115.3 (2.2.3) Added server_scheme member to server_rec (minor)
|
||||||
}
|
}
|
||||||
const
|
const
|
||||||
|
|
||||||
MODULE_MAGIC_COOKIE = $41503230; { "AP20" }
|
MODULE_MAGIC_COOKIE = $41503232; { "AP22" }
|
||||||
|
|
||||||
MODULE_MAGIC_NUMBER_MAJOR = 20020903; { For 2.0.58 Also works for 2.0.54}
|
MODULE_MAGIC_NUMBER_MAJOR = 20051115; { For 2.2.3 }
|
||||||
|
|
||||||
MODULE_MAGIC_NUMBER_MINOR = 12; // 0...n
|
MODULE_MAGIC_NUMBER_MINOR = 3; // 0...n
|
||||||
|
|
||||||
{
|
{
|
||||||
* Determine if the server's current MODULE_MAGIC_NUMBER is at least a
|
* Determine if the server's current MODULE_MAGIC_NUMBER is at least a
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 1999-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -141,6 +141,7 @@ const
|
|||||||
AP_MPMQ_MAX_REQUESTS_DAEMON = 11; { Max # of requests per daemon }
|
AP_MPMQ_MAX_REQUESTS_DAEMON = 11; { Max # of requests per daemon }
|
||||||
AP_MPMQ_MAX_DAEMONS = 12; { Max # of daemons by config }
|
AP_MPMQ_MAX_DAEMONS = 12; { Max # of daemons by config }
|
||||||
AP_MPMQ_MPM_STATE = 13; { starting, running, stopping }
|
AP_MPMQ_MPM_STATE = 13; { starting, running, stopping }
|
||||||
|
AP_MPMQ_IS_ASYNC = 14; { MPM can process async connections }
|
||||||
|
|
||||||
{
|
{
|
||||||
* Query a property of the current MPM.
|
* Query a property of the current MPM.
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 2002-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -14,12 +14,17 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
}
|
}
|
||||||
|
|
||||||
//#include "ap_config.h"
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* @package Provider API
|
* @package Provider API
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//#include "ap_config.h"
|
||||||
|
|
||||||
|
type
|
||||||
|
ap_list_provider_names_t = record
|
||||||
|
provider_name: PChar;
|
||||||
|
end;
|
||||||
|
|
||||||
{
|
{
|
||||||
* This function is used to register a provider with the global
|
* This function is used to register a provider with the global
|
||||||
* provider pool.
|
* provider pool.
|
||||||
@ -48,3 +53,16 @@ function ap_lookup_provider(provider_group, provider_name, provider_version: PCh
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_lookup_provider' + LibSuff12;
|
external LibHTTPD name LibNamePrefix + 'ap_lookup_provider' + LibSuff12;
|
||||||
|
|
||||||
|
{
|
||||||
|
* This function is used to retrieve a list (array) of provider
|
||||||
|
* names from the specified group with the specified version.
|
||||||
|
* @param pool The pool to create any storage from
|
||||||
|
* @param provider_group The group to look for this provider in
|
||||||
|
* @param provider_version The version for the provider
|
||||||
|
* @return pointer to array of ap_list_provider_names_t of provider names (could be empty)
|
||||||
|
}
|
||||||
|
function ap_list_provider_names(pool: Papr_pool_t;
|
||||||
|
const provider_group, provider_version: PChar): Papr_array_header_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibHTTPD name LibNamePrefix + 'ap_list_provider_names' + LibSuff12;
|
||||||
|
|
||||||
|
@ -1,8 +1,9 @@
|
|||||||
{ Copyright 2001-2005 The Apache Software Foundation or its licensors, as applicable.
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
*
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* this work for additional information regarding copyright ownership.
|
||||||
* you may not use this file except in compliance with the License.
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* You may obtain a copy of the License at
|
* (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
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -17,8 +18,7 @@
|
|||||||
|
|
||||||
const
|
const
|
||||||
AP_SERVER_COPYRIGHT =
|
AP_SERVER_COPYRIGHT =
|
||||||
'Copyright 2001-2006 The Apache Software Foundation' +
|
'Copyright 2006 The Apache Software Foundation.';
|
||||||
' or its licensors, as applicable.';
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* The below defines the base string of the Server: header. Additional
|
* The below defines the base string of the Server: header. Additional
|
||||||
@ -33,12 +33,19 @@ const
|
|||||||
* Example: "Apache/1.1.0 MrWidget/0.1-alpha"
|
* Example: "Apache/1.1.0 MrWidget/0.1-alpha"
|
||||||
}
|
}
|
||||||
AP_SERVER_BASEVENDOR = 'Apache Software Foundation';
|
AP_SERVER_BASEVENDOR = 'Apache Software Foundation';
|
||||||
|
AP_SERVER_BASEPROJECT = 'Apache HTTP Server';
|
||||||
AP_SERVER_BASEPRODUCT = 'Apache';
|
AP_SERVER_BASEPRODUCT = 'Apache';
|
||||||
|
|
||||||
AP_SERVER_MAJORVERSION_NUMBER = 2;
|
AP_SERVER_MAJORVERSION_NUMBER = 2;
|
||||||
AP_SERVER_MINORVERSION_NUMBER = 0;
|
AP_SERVER_MINORVERSION_NUMBER = 2;
|
||||||
AP_SERVER_PATCHLEVEL_NUMBER = 58;
|
AP_SERVER_PATCHLEVEL_NUMBER = 3;
|
||||||
|
AP_SERVER_DEVBUILD_BOOLEAN = 0;
|
||||||
|
|
||||||
|
{$ifdef AP_SERVER_DEVBUILD_BOOLEAN}
|
||||||
|
AP_SERVER_ADD_STRING = '-dev';
|
||||||
|
{$else}
|
||||||
AP_SERVER_ADD_STRING = '';
|
AP_SERVER_ADD_STRING = '';
|
||||||
|
{$endif}
|
||||||
|
|
||||||
{ keep old macros as well }
|
{ keep old macros as well }
|
||||||
{#define AP_SERVER_MAJORVERSION APR_STRINGIFY(AP_SERVER_MAJORVERSION_NUMBER)
|
{#define AP_SERVER_MAJORVERSION APR_STRINGIFY(AP_SERVER_MAJORVERSION_NUMBER)
|
||||||
@ -48,6 +55,12 @@ const
|
|||||||
|
|
||||||
#define AP_SERVER_MINORREVISION AP_SERVER_MAJORVERSION "." AP_SERVER_MINORVERSION
|
#define AP_SERVER_MINORREVISION AP_SERVER_MAJORVERSION "." AP_SERVER_MINORVERSION
|
||||||
#define AP_SERVER_BASEREVISION AP_SERVER_MINORREVISION "." AP_SERVER_PATCHLEVEL
|
#define AP_SERVER_BASEREVISION AP_SERVER_MINORREVISION "." AP_SERVER_PATCHLEVEL
|
||||||
#define AP_SERVER_BASEVERSION AP_SERVER_BASEPRODUCT "/" AP_SERVER_BASEREVISION
|
#define AP_SERVER_BASEVERSION AP_SERVER_BASEPRODUCT "/" AP_SERVER_BASEREVISION
|
||||||
#define AP_SERVER_VERSION AP_SERVER_BASEVERSION}
|
#define AP_SERVER_VERSION AP_SERVER_BASEVERSION
|
||||||
|
|
||||||
|
/* macro for Win32 .rc files using numeric csv representation */
|
||||||
|
#define AP_SERVER_PATCHLEVEL_CSV AP_SERVER_MAJORVERSION_NUMBER ##, \
|
||||||
|
##AP_SERVER_MINORVERSION_NUMBER ##, \
|
||||||
|
##AP_SERVER_PATCHLEVEL_NUMBER
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -92,6 +92,9 @@ type
|
|||||||
apr_int64_t = Int64;
|
apr_int64_t = Int64;
|
||||||
apr_uint64_t = Int64;
|
apr_uint64_t = Int64;
|
||||||
apr_socklen_t = Integer;
|
apr_socklen_t = Integer;
|
||||||
|
apr_byte_t = Byte;
|
||||||
|
|
||||||
|
apr_uint32_tso_handle_t = cuint;
|
||||||
|
|
||||||
type
|
type
|
||||||
{$IFDEF WINDOWS}
|
{$IFDEF WINDOWS}
|
||||||
@ -102,10 +105,11 @@ type
|
|||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
|
|
||||||
apr_int32_t = Integer;
|
apr_int32_t = Integer;
|
||||||
|
Papr_int32_t = ^Integer;
|
||||||
apr_size_t = size_t;
|
apr_size_t = size_t;
|
||||||
Papr_size_t = ^apr_size_t;
|
Papr_size_t = ^apr_size_t;
|
||||||
|
apr_int16_t = SmallInt;
|
||||||
va_list = Pointer;
|
Papr_int16_t = ^SmallInt;
|
||||||
|
|
||||||
// Network structures
|
// Network structures
|
||||||
|
|
||||||
@ -118,6 +122,10 @@ type
|
|||||||
s_addr: culong; // load with inet_aton()
|
s_addr: culong; // load with inet_aton()
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
{$ifndef windows}
|
||||||
|
|
||||||
|
va_list = Pointer;
|
||||||
|
|
||||||
sockaddr_in = record
|
sockaddr_in = record
|
||||||
sin_family: cshort; // e.g. AF_INET
|
sin_family: cshort; // e.g. AF_INET
|
||||||
sin_port: cushort; // e.g. htons(3490)
|
sin_port: cushort; // e.g. htons(3490)
|
||||||
@ -125,6 +133,8 @@ type
|
|||||||
sin_zero: array [1..8] of Char; // zero this if you want to
|
sin_zero: array [1..8] of Char; // zero this if you want to
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
{$endif}
|
||||||
|
|
||||||
in6_addr = record
|
in6_addr = record
|
||||||
Case Integer of
|
Case Integer of
|
||||||
1: (u6_addr8: array [1..16] of Byte);
|
1: (u6_addr8: array [1..16] of Byte);
|
||||||
@ -182,6 +192,7 @@ type
|
|||||||
|
|
||||||
{$include apr_thread_proc.inc}
|
{$include apr_thread_proc.inc}
|
||||||
{$include apr_version.inc}
|
{$include apr_version.inc}
|
||||||
|
{$include apr_poll.inc}
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
|
@ -31,16 +31,25 @@
|
|||||||
|
|
||||||
type
|
type
|
||||||
{ the allocator structure }
|
{ the allocator structure }
|
||||||
|
|
||||||
apr_allocator_t = record end;
|
apr_allocator_t = record end;
|
||||||
Papr_allocator_t = ^apr_allocator_t;
|
Papr_allocator_t = ^apr_allocator_t;
|
||||||
PPapr_allocator_t = ^Papr_allocator_t;
|
PPapr_allocator_t = ^Papr_allocator_t;
|
||||||
|
|
||||||
{ the structure which holds information about the allocation }
|
{ the structure which holds information about the allocation }
|
||||||
|
|
||||||
Papr_memnode_t = ^apr_memnode_t;
|
Papr_memnode_t = ^apr_memnode_t;
|
||||||
PPapr_memnode_t = ^Papr_memnode_t;
|
PPapr_memnode_t = ^Papr_memnode_t;
|
||||||
|
|
||||||
{ basic memory node structure }
|
{ basic memory node structure
|
||||||
|
* @note The next, ref and first_avail fields are available for use by the
|
||||||
|
* caller of apr_allocator_alloc(), the remaining fields are read-only.
|
||||||
|
* The next field has to be used with caution and sensibly set when the
|
||||||
|
* memnode is passed back to apr_allocator_free(). See apr_allocator_free()
|
||||||
|
* for details.
|
||||||
|
* The ref and first_avail fields will be properly restored by
|
||||||
|
* apr_allocator_free().
|
||||||
|
}
|
||||||
|
|
||||||
apr_memnode_t = record
|
apr_memnode_t = record
|
||||||
next: Papr_memnode_t; {< next memnode }
|
next: Papr_memnode_t; {< next memnode }
|
||||||
@ -89,7 +98,9 @@ function apr_allocator_alloc(allocator: Papr_allocator_t;
|
|||||||
external LibAPR name LibNamePrefix + 'apr_allocator_alloc' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_allocator_alloc' + LibSuff8;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Free a block of mem, giving it back to the allocator
|
* Free a list of blocks of mem, giving them back to the allocator.
|
||||||
|
* The list is typically terminated by a memnode with its next field
|
||||||
|
* set to NULL.
|
||||||
* @param allocator The allocator to give the mem back to
|
* @param allocator The allocator to give the mem back to
|
||||||
* @param memnode The memory node to return
|
* @param memnode The memory node to return
|
||||||
}
|
}
|
||||||
@ -114,10 +125,6 @@ procedure apr_allocator_owner_set(allocator: Papr_allocator_t; pool: Papr_pool_t
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_allocator_owner_set' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_allocator_owner_set' + LibSuff8;
|
||||||
|
|
||||||
{ @deprecated @see apr_allocator_owner_set }
|
|
||||||
{APR_DECLARE(void) apr_allocator_set_owner(apr_allocator_t *allocator,
|
|
||||||
apr_pool_t *pool);
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
* Get the current owner of the allocator
|
* Get the current owner of the allocator
|
||||||
* @param allocator The allocator to get the owner from
|
* @param allocator The allocator to get the owner from
|
||||||
@ -126,10 +133,6 @@ function apr_allocator_owner_get(allocator: Papr_allocator_t): Papr_pool_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_allocator_owner_get' + LibSuff4;
|
external LibAPR name LibNamePrefix + 'apr_allocator_owner_get' + LibSuff4;
|
||||||
|
|
||||||
{ @deprecated @see apr_allocator_owner_get }
|
|
||||||
{APR_DECLARE(apr_pool_t *) apr_allocator_get_owner(
|
|
||||||
apr_allocator_t *allocator);
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
* Set the current threshold at which the allocator should start
|
* Set the current threshold at which the allocator should start
|
||||||
* giving blocks back to the system.
|
* giving blocks back to the system.
|
||||||
@ -140,11 +143,7 @@ procedure apr_allocator_max_free_set(allocator: Papr_allocator_t; size: apr_size
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_allocator_max_free_set' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_allocator_max_free_set' + LibSuff8;
|
||||||
|
|
||||||
{ @deprecated @see apr_allocator_max_free_set }
|
{#include "apr_thread_mutex.h"}
|
||||||
{APR_DECLARE(void) apr_allocator_set_max_free(apr_allocator_t *allocator,
|
|
||||||
apr_size_t size);
|
|
||||||
|
|
||||||
#include "apr_thread_mutex.h"}
|
|
||||||
|
|
||||||
{$ifdef APR_HAS_THREADS}
|
{$ifdef APR_HAS_THREADS}
|
||||||
{
|
{
|
||||||
@ -155,10 +154,6 @@ procedure apr_allocator_max_free_set(allocator: Papr_allocator_t; size: apr_size
|
|||||||
APR_DECLARE(void) apr_allocator_mutex_set(apr_allocator_t *allocator,
|
APR_DECLARE(void) apr_allocator_mutex_set(apr_allocator_t *allocator,
|
||||||
apr_thread_mutex_t *mutex);
|
apr_thread_mutex_t *mutex);
|
||||||
|
|
||||||
{ @deprecated @see apr_allocator_mutex_set }
|
|
||||||
APR_DECLARE(void) apr_allocator_set_mutex(apr_allocator_t *allocator,
|
|
||||||
apr_thread_mutex_t *mutex);
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Get the mutex currently set for the allocator
|
* Get the mutex currently set for the allocator
|
||||||
* @param allocator The allocator
|
* @param allocator The allocator
|
||||||
@ -166,9 +161,5 @@ APR_DECLARE(void) apr_allocator_set_mutex(apr_allocator_t *allocator,
|
|||||||
APR_DECLARE(apr_thread_mutex_t *) apr_allocator_mutex_get(
|
APR_DECLARE(apr_thread_mutex_t *) apr_allocator_mutex_get(
|
||||||
apr_allocator_t *allocator);
|
apr_allocator_t *allocator);
|
||||||
|
|
||||||
{ @deprecated @see apr_allocator_mutex_get }
|
|
||||||
APR_DECLARE(apr_thread_mutex_t *) apr_allocator_get_mutex(
|
|
||||||
apr_allocator_t *allocator);
|
|
||||||
|
|
||||||
{$endif} { APR_HAS_THREADS }
|
{$endif} { APR_HAS_THREADS }
|
||||||
|
|
||||||
|
@ -373,50 +373,6 @@ type
|
|||||||
}
|
}
|
||||||
//#define APR_BRIGADE_LAST(b) APR_RING_LAST(&(b)->list)
|
//#define APR_BRIGADE_LAST(b) APR_RING_LAST(&(b)->list)
|
||||||
|
|
||||||
{
|
|
||||||
* Iterate through a bucket brigade
|
|
||||||
* @param e The current bucket
|
|
||||||
* @param b The brigade to iterate over
|
|
||||||
* @remark This is the same as either:
|
|
||||||
* <pre>
|
|
||||||
* e = APR_BRIGADE_FIRST(b);
|
|
||||||
* while (e != APR_BRIGADE_SENTINEL(b)) (
|
|
||||||
* ...
|
|
||||||
* e = APR_BUCKET_NEXT(e);
|
|
||||||
* )
|
|
||||||
* OR
|
|
||||||
* for (e = APR_BRIGADE_FIRST(b);
|
|
||||||
* e != APR_BRIGADE_SENTINEL(b);
|
|
||||||
* e = APR_BUCKET_NEXT(e)) (
|
|
||||||
* ...
|
|
||||||
* )
|
|
||||||
* </pre>
|
|
||||||
* @warning Be aware that you cannot change the value of e within
|
|
||||||
* the foreach loop, nor can you destroy the bucket it points to.
|
|
||||||
* Modifying the prev and next pointers of the bucket is dangerous
|
|
||||||
* but can be done if you're careful. If you change e's value or
|
|
||||||
* destroy the bucket it points to, then APR_BRIGADE_FOREACH
|
|
||||||
* will have no way to find out what bucket to use for its next
|
|
||||||
* iteration. The reason for this can be seen by looking closely
|
|
||||||
* at the equivalent loops given in the tip above. So, for example,
|
|
||||||
* if you are writing a loop that empties out a brigade one bucket
|
|
||||||
* at a time, APR_BRIGADE_FOREACH just won't work for you. Do it
|
|
||||||
* by hand, like so:
|
|
||||||
* <pre>
|
|
||||||
* while (!APR_BRIGADE_EMPTY(b)) (
|
|
||||||
* e = APR_BRIGADE_FIRST(b);
|
|
||||||
* ...
|
|
||||||
* apr_bucket_delete(e);
|
|
||||||
* )
|
|
||||||
* </pre>
|
|
||||||
* @deprecated This macro causes more headaches than it's worth. Use
|
|
||||||
* one of the alternatives documented here instead; the clarity gained
|
|
||||||
* in what's really going on is well worth the extra line or two of code.
|
|
||||||
* This macro will be removed at some point in the future.
|
|
||||||
}
|
|
||||||
//#define APR_BRIGADE_FOREACH(e, b) \
|
|
||||||
// APR_RING_FOREACH((e), &(b)->list, apr_bucket, link)
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Insert a list of buckets at the front of a brigade
|
* Insert a list of buckets at the front of a brigade
|
||||||
* @param b The brigade to add to
|
* @param b The brigade to add to
|
||||||
@ -767,22 +723,15 @@ type
|
|||||||
* @param b The brigade to partition
|
* @param b The brigade to partition
|
||||||
* @param point The offset at which to partition the brigade
|
* @param point The offset at which to partition the brigade
|
||||||
* @param after_point Returns a pointer to the first bucket after the partition
|
* @param after_point Returns a pointer to the first bucket after the partition
|
||||||
|
* @return APR_SUCCESS on success, APR_INCOMPLETE if the contents of the
|
||||||
|
* brigade were shorter than @a point, or an error code.
|
||||||
|
* @remark if APR_INCOMPLETE is returned, @a after_point will be set to
|
||||||
|
* the brigade sentinel.
|
||||||
}
|
}
|
||||||
//APU_DECLARE(apr_status_t) apr_brigade_partition(apr_bucket_brigade *b,
|
//APU_DECLARE(apr_status_t) apr_brigade_partition(apr_bucket_brigade *b,
|
||||||
// apr_off_t point,
|
// apr_off_t point,
|
||||||
// apr_bucket **after_point);
|
// apr_bucket **after_point);
|
||||||
|
|
||||||
//#if APR_NOT_DONE_YET
|
|
||||||
{
|
|
||||||
* consume nbytes from beginning of b -- call apr_bucket_destroy as
|
|
||||||
* appropriate, and/or modify start on last element
|
|
||||||
* @param b The brigade to consume data from
|
|
||||||
* @param nbytes The number of bytes to consume
|
|
||||||
}
|
|
||||||
//APU_DECLARE(void) apr_brigade_consume(apr_bucket_brigade *b,
|
|
||||||
// apr_off_t nbytes);
|
|
||||||
//#endif
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Return the total length of the brigade.
|
* Return the total length of the brigade.
|
||||||
* @param bb The brigade to compute the length of
|
* @param bb The brigade to compute the length of
|
||||||
@ -950,6 +899,25 @@ type
|
|||||||
void *ctx,
|
void *ctx,
|
||||||
const char *fmt, va_list va);
|
const char *fmt, va_list va);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
* Utility function to insert a file (or a segment of a file) onto the
|
||||||
|
* end of the brigade. The file is split into multiple buckets if it
|
||||||
|
* is larger than the maximum size which can be represented by a
|
||||||
|
* single bucket.
|
||||||
|
* @param bb the brigade to insert into
|
||||||
|
* @param f the file to insert
|
||||||
|
* @param start the offset of the start of the segment
|
||||||
|
* @param len the length of the segment of the file to insert
|
||||||
|
* @param p pool from which file buckets are allocated
|
||||||
|
* @return the last bucket inserted
|
||||||
|
}
|
||||||
|
{APU_DECLARE(apr_bucket *) apr_brigade_insert_file(apr_bucket_brigade *bb,
|
||||||
|
apr_file_t *f,
|
||||||
|
apr_off_t start,
|
||||||
|
apr_off_t len,
|
||||||
|
apr_pool_t *p);}
|
||||||
|
|
||||||
{ ***** Bucket freelist functions ***** }
|
{ ***** Bucket freelist functions ***** }
|
||||||
{
|
{
|
||||||
* Create a bucket allocator.
|
* Create a bucket allocator.
|
||||||
|
@ -263,13 +263,15 @@ const
|
|||||||
APR_ESYMNOTFOUND = (APR_OS_START_ERROR + 26);
|
APR_ESYMNOTFOUND = (APR_OS_START_ERROR + 26);
|
||||||
{ @see APR_STATUS_IS_EPROC_UNKNOWN }
|
{ @see APR_STATUS_IS_EPROC_UNKNOWN }
|
||||||
APR_EPROC_UNKNOWN = (APR_OS_START_ERROR + 27);
|
APR_EPROC_UNKNOWN = (APR_OS_START_ERROR + 27);
|
||||||
|
{ @see APR_STATUS_IS_ENOTENOUGHENTROPY }
|
||||||
|
APR_ENOTENOUGHENTROPY = (APR_OS_START_ERROR + 28);
|
||||||
|
|
||||||
{
|
{
|
||||||
* @defgroup APR_STATUS_IS Status Value Tests
|
* @defgroup APR_STATUS_IS Status Value Tests
|
||||||
* @warning For any particular error condition, more than one of these tests
|
* @warning For any particular error condition, more than one of these tests
|
||||||
* may match. This is because platform-specific error codes may not
|
* may match. This is because platform-specific error codes may not
|
||||||
* always match the semantics of the POSIX codes these tests (and the
|
* always match the semantics of the POSIX codes these tests (and the
|
||||||
* correcponding APR error codes) are named after. A notable example
|
* corresponding APR error codes) are named after. A notable example
|
||||||
* are the APR_STATUS_IS_ENOENT and APR_STATUS_IS_ENOTDIR tests on
|
* are the APR_STATUS_IS_ENOENT and APR_STATUS_IS_ENOTDIR tests on
|
||||||
* Win32 platforms. The programmer should always be aware of this and
|
* Win32 platforms. The programmer should always be aware of this and
|
||||||
* adjust the order of the tests accordingly.
|
* adjust the order of the tests accordingly.
|
||||||
@ -349,6 +351,9 @@ const
|
|||||||
{ The given process was not recognized by APR. }
|
{ The given process was not recognized by APR. }
|
||||||
//#define APR_STATUS_IS_EPROC_UNKNOWN(s) ((s) == APR_EPROC_UNKNOWN)
|
//#define APR_STATUS_IS_EPROC_UNKNOWN(s) ((s) == APR_EPROC_UNKNOWN)
|
||||||
|
|
||||||
|
{ APR could not gather enough entropy to continue. }
|
||||||
|
//#define APR_STATUS_IS_ENOTENOUGHENTROPY(s) ((s) == APR_ENOTENOUGHENTROPY)
|
||||||
|
|
||||||
{
|
{
|
||||||
* @addtogroup APR_Error
|
* @addtogroup APR_Error
|
||||||
}
|
}
|
||||||
@ -689,7 +694,8 @@ const
|
|||||||
#define APR_ECONNRESET (APR_OS_START_CANONERR + 19)
|
#define APR_ECONNRESET (APR_OS_START_CANONERR + 19)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
{ @see APR_STATUS_IS_ETIMEDOUT }
|
{* @see APR_STATUS_IS_ETIMEDOUT
|
||||||
|
* @deprecated}
|
||||||
{#ifdef ETIMEDOUT
|
{#ifdef ETIMEDOUT
|
||||||
#define APR_ETIMEDOUT ETIMEDOUT
|
#define APR_ETIMEDOUT ETIMEDOUT
|
||||||
#else
|
#else
|
||||||
@ -764,8 +770,6 @@ const
|
|||||||
}
|
}
|
||||||
{#define APR_OS2_STATUS(e) (APR_FROM_OS_ERROR(e))
|
{#define APR_OS2_STATUS(e) (APR_FROM_OS_ERROR(e))
|
||||||
|
|
||||||
#define APR_STATUS_IS_SUCCESS(s) ((s) == APR_SUCCESS \
|
|
||||||
|| (s) == APR_OS_START_SYSERR + NO_ERROR)
|
|
||||||
}
|
}
|
||||||
{ These can't sit in a private header, so in spite of the extra size,
|
{ These can't sit in a private header, so in spite of the extra size,
|
||||||
* they need to be made available here.
|
* they need to be made available here.
|
||||||
@ -862,8 +866,12 @@ const
|
|||||||
|| (s) == APR_OS_START_SYSERR + SOCECONNABORTED)
|
|| (s) == APR_OS_START_SYSERR + SOCECONNABORTED)
|
||||||
#define APR_STATUS_IS_ECONNRESET(s) ((s) == APR_ECONNRESET \
|
#define APR_STATUS_IS_ECONNRESET(s) ((s) == APR_ECONNRESET \
|
||||||
|| (s) == APR_OS_START_SYSERR + SOCECONNRESET)
|
|| (s) == APR_OS_START_SYSERR + SOCECONNRESET)
|
||||||
#define APR_STATUS_IS_ETIMEDOUT(s) ((s) == APR_ETIMEDOUT \
|
/* XXX deprecated */
|
||||||
|| (s) == APR_OS_START_SYSERR + SOCETIMEDOUT)
|
#define APR_STATUS_IS_ETIMEDOUT(s) ((s) == APR_ETIMEDOUT \
|
||||||
|
|| (s) == APR_OS_START_SYSERR + SOCETIMEDOUT)
|
||||||
|
#undef APR_STATUS_IS_TIMEUP
|
||||||
|
#define APR_STATUS_IS_TIMEUP(s) ((s) == APR_TIMEUP \
|
||||||
|
|| (s) == APR_OS_START_SYSERR + SOCETIMEDOUT)
|
||||||
#define APR_STATUS_IS_EHOSTUNREACH(s) ((s) == APR_EHOSTUNREACH \
|
#define APR_STATUS_IS_EHOSTUNREACH(s) ((s) == APR_EHOSTUNREACH \
|
||||||
|| (s) == APR_OS_START_SYSERR + SOCEHOSTUNREACH)
|
|| (s) == APR_OS_START_SYSERR + SOCEHOSTUNREACH)
|
||||||
#define APR_STATUS_IS_ENETUNREACH(s) ((s) == APR_ENETUNREACH \
|
#define APR_STATUS_IS_ENETUNREACH(s) ((s) == APR_ENETUNREACH \
|
||||||
@ -921,8 +929,6 @@ const
|
|||||||
{#define apr_get_netos_error() (APR_FROM_OS_ERROR(WSAGetLastError()))
|
{#define apr_get_netos_error() (APR_FROM_OS_ERROR(WSAGetLastError()))
|
||||||
#define apr_set_netos_error(e) (WSASetLastError(APR_TO_OS_ERROR(e)))
|
#define apr_set_netos_error(e) (WSASetLastError(APR_TO_OS_ERROR(e)))
|
||||||
|
|
||||||
#define APR_STATUS_IS_SUCCESS(s) ((s) == APR_SUCCESS \
|
|
||||||
|| (s) == APR_OS_START_SYSERR + ERROR_SUCCESS)
|
|
||||||
}
|
}
|
||||||
{ APR CANONICAL ERROR TESTS }
|
{ APR CANONICAL ERROR TESTS }
|
||||||
{#define APR_STATUS_IS_EACCES(s) ((s) == APR_EACCES \
|
{#define APR_STATUS_IS_EACCES(s) ((s) == APR_EACCES \
|
||||||
@ -997,7 +1003,12 @@ const
|
|||||||
#define APR_STATUS_IS_ECONNRESET(s) ((s) == APR_ECONNRESET \
|
#define APR_STATUS_IS_ECONNRESET(s) ((s) == APR_ECONNRESET \
|
||||||
|| (s) == APR_OS_START_SYSERR + ERROR_NETNAME_DELETED \
|
|| (s) == APR_OS_START_SYSERR + ERROR_NETNAME_DELETED \
|
||||||
|| (s) == APR_OS_START_SYSERR + WSAECONNRESET)
|
|| (s) == APR_OS_START_SYSERR + WSAECONNRESET)
|
||||||
#define APR_STATUS_IS_ETIMEDOUT(s) ((s) == APR_ETIMEDOUT \
|
/* XXX deprecated */
|
||||||
|
#define APR_STATUS_IS_ETIMEDOUT(s) ((s) == APR_ETIMEDOUT \
|
||||||
|
|| (s) == APR_OS_START_SYSERR + WSAETIMEDOUT \
|
||||||
|
|| (s) == APR_OS_START_SYSERR + WAIT_TIMEOUT)
|
||||||
|
#undef APR_STATUS_IS_TIMEUP
|
||||||
|
#define APR_STATUS_IS_TIMEUP(s) ((s) == APR_TIMEUP \
|
||||||
|| (s) == APR_OS_START_SYSERR + WSAETIMEDOUT \
|
|| (s) == APR_OS_START_SYSERR + WSAETIMEDOUT \
|
||||||
|| (s) == APR_OS_START_SYSERR + WAIT_TIMEOUT)
|
|| (s) == APR_OS_START_SYSERR + WAIT_TIMEOUT)
|
||||||
#define APR_STATUS_IS_EHOSTUNREACH(s) ((s) == APR_EHOSTUNREACH \
|
#define APR_STATUS_IS_EHOSTUNREACH(s) ((s) == APR_EHOSTUNREACH \
|
||||||
@ -1019,7 +1030,7 @@ const
|
|||||||
#define APR_STATUS_IS_ENOTEMPTY(s) ((s) == APR_ENOTEMPTY \
|
#define APR_STATUS_IS_ENOTEMPTY(s) ((s) == APR_ENOTEMPTY \
|
||||||
|| (s) == APR_OS_START_SYSERR + ERROR_DIR_NOT_EMPTY)
|
|| (s) == APR_OS_START_SYSERR + ERROR_DIR_NOT_EMPTY)
|
||||||
}
|
}
|
||||||
//#elif defined(NETWARE) && !defined(DOXYGEN) { !defined(OS2) && !defined(WIN32) }
|
//#elif defined(NETWARE) && defined(USE_WINSOCK) && !defined(DOXYGEN) { !defined(OS2) && !defined(WIN32) }
|
||||||
{
|
{
|
||||||
#define APR_FROM_OS_ERROR(e) (e == 0 ? APR_SUCCESS : e + APR_OS_START_SYSERR)
|
#define APR_FROM_OS_ERROR(e) (e == 0 ? APR_SUCCESS : e + APR_OS_START_SYSERR)
|
||||||
#define APR_TO_OS_ERROR(e) (e == 0 ? APR_SUCCESS : e - APR_OS_START_SYSERR)
|
#define APR_TO_OS_ERROR(e) (e == 0 ? APR_SUCCESS : e - APR_OS_START_SYSERR)
|
||||||
@ -1031,7 +1042,6 @@ const
|
|||||||
{#define apr_get_netos_error() (APR_FROM_OS_ERROR(WSAGetLastError()))
|
{#define apr_get_netos_error() (APR_FROM_OS_ERROR(WSAGetLastError()))
|
||||||
#define apr_set_netos_error(e) (WSASetLastError(APR_TO_OS_ERROR(e)))
|
#define apr_set_netos_error(e) (WSASetLastError(APR_TO_OS_ERROR(e)))
|
||||||
|
|
||||||
#define APR_STATUS_IS_SUCCESS(s) ((s) == APR_SUCCESS)
|
|
||||||
}
|
}
|
||||||
{ APR CANONICAL ERROR TESTS }
|
{ APR CANONICAL ERROR TESTS }
|
||||||
{#define APR_STATUS_IS_EACCES(s) ((s) == APR_EACCES)
|
{#define APR_STATUS_IS_EACCES(s) ((s) == APR_EACCES)
|
||||||
@ -1062,7 +1072,12 @@ const
|
|||||||
|| (s) == APR_OS_START_SYSERR + WSAECONNABORTED)
|
|| (s) == APR_OS_START_SYSERR + WSAECONNABORTED)
|
||||||
#define APR_STATUS_IS_ECONNRESET(s) ((s) == APR_ECONNRESET \
|
#define APR_STATUS_IS_ECONNRESET(s) ((s) == APR_ECONNRESET \
|
||||||
|| (s) == APR_OS_START_SYSERR + WSAECONNRESET)
|
|| (s) == APR_OS_START_SYSERR + WSAECONNRESET)
|
||||||
#define APR_STATUS_IS_ETIMEDOUT(s) ((s) == APR_ETIMEDOUT \
|
/* XXX deprecated */
|
||||||
|
#define APR_STATUS_IS_ETIMEDOUT(s) ((s) == APR_ETIMEDOUT \
|
||||||
|
|| (s) == APR_OS_START_SYSERR + WSAETIMEDOUT \
|
||||||
|
|| (s) == APR_OS_START_SYSERR + WAIT_TIMEOUT)
|
||||||
|
#undef APR_STATUS_IS_TIMEUP
|
||||||
|
#define APR_STATUS_IS_TIMEUP(s) ((s) == APR_TIMEUP \
|
||||||
|| (s) == APR_OS_START_SYSERR + WSAETIMEDOUT \
|
|| (s) == APR_OS_START_SYSERR + WSAETIMEDOUT \
|
||||||
|| (s) == APR_OS_START_SYSERR + WAIT_TIMEOUT)
|
|| (s) == APR_OS_START_SYSERR + WAIT_TIMEOUT)
|
||||||
#define APR_STATUS_IS_EHOSTUNREACH(s) ((s) == APR_EHOSTUNREACH \
|
#define APR_STATUS_IS_EHOSTUNREACH(s) ((s) == APR_EHOSTUNREACH \
|
||||||
@ -1094,8 +1109,6 @@ const
|
|||||||
{
|
{
|
||||||
* @addtogroup APR_STATUS_IS
|
* @addtogroup APR_STATUS_IS
|
||||||
}
|
}
|
||||||
{ no error }
|
|
||||||
//#define APR_STATUS_IS_SUCCESS(s) ((s) == APR_SUCCESS)
|
|
||||||
|
|
||||||
{ permission denied }
|
{ permission denied }
|
||||||
//#define APR_STATUS_IS_EACCES(s) ((s) == APR_EACCES)
|
//#define APR_STATUS_IS_EACCES(s) ((s) == APR_EACCES)
|
||||||
@ -1171,7 +1184,8 @@ const
|
|||||||
}
|
}
|
||||||
{ Connection Reset by peer }
|
{ Connection Reset by peer }
|
||||||
//#define APR_STATUS_IS_ECONNRESET(s) ((s) == APR_ECONNRESET)
|
//#define APR_STATUS_IS_ECONNRESET(s) ((s) == APR_ECONNRESET)
|
||||||
{ Operation timed out }
|
{* Operation timed out
|
||||||
|
* @deprecated}
|
||||||
//#define APR_STATUS_IS_ETIMEDOUT(s) ((s) == APR_ETIMEDOUT)
|
//#define APR_STATUS_IS_ETIMEDOUT(s) ((s) == APR_ETIMEDOUT)
|
||||||
{ no route to host }
|
{ no route to host }
|
||||||
//#define APR_STATUS_IS_EHOSTUNREACH(s) ((s) == APR_EHOSTUNREACH)
|
//#define APR_STATUS_IS_EHOSTUNREACH(s) ((s) == APR_EHOSTUNREACH)
|
||||||
|
@ -70,25 +70,41 @@ type
|
|||||||
}
|
}
|
||||||
|
|
||||||
const
|
const
|
||||||
APR_USETID = $8000; {< Set user id }
|
APR_FPROT_USETID = $8000; {< Set user id }
|
||||||
APR_UREAD = $0400; {< Read by user }
|
APR_FPROT_UREAD = $0400; {< Read by user }
|
||||||
APR_UWRITE = $0200; {< Write by user }
|
APR_FPROT_UWRITE = $0200; {< Write by user }
|
||||||
APR_UEXECUTE = $0100; {< Execute by user }
|
APR_FPROT_UEXECUTE = $0100; {< Execute by user }
|
||||||
|
|
||||||
APR_GSETID = $4000; {< Set group id }
|
APR_FPROT_GSETID = $4000; {< Set group id }
|
||||||
APR_GREAD = $0040; {< Read by group }
|
APR_FPROT_GREAD = $0040; {< Read by group }
|
||||||
APR_GWRITE = $0020; {< Write by group }
|
APR_FPROT_GWRITE = $0020; {< Write by group }
|
||||||
APR_GEXECUTE = $0010; {< Execute by group }
|
APR_FPROT_GEXECUTE = $0010; {< Execute by group }
|
||||||
|
|
||||||
APR_WSTICKY = $2000; {< Sticky bit }
|
APR_FPROT_WSTICKY = $2000; {< Sticky bit }
|
||||||
APR_WREAD = $0004; {< Read by others }
|
APR_FPROT_WREAD = $0004; {< Read by others }
|
||||||
APR_WWRITE = $0002; {< Write by others }
|
APR_FPROT_WWRITE = $0002; {< Write by others }
|
||||||
APR_WEXECUTE = $0001; {< Execute by others }
|
APR_FPROT_WEXECUTE = $0001; {< Execute by others }
|
||||||
|
|
||||||
APR_OS_DEFAULT = $0FFF; {< use OS's default permissions }
|
APR_FPROT_OS_DEFAULT = $0FFF; {< use OS's default permissions }
|
||||||
|
|
||||||
{ additional permission flags for apr_file_copy and apr_file_append }
|
{ additional permission flags for apr_file_copy and apr_file_append }
|
||||||
APR_FILE_SOURCE_PERMS = $1000; {< Copy source file's permissions }
|
APR_FPROT_FILE_SOURCE_PERMS = $1000; {< Copy source file's permissions }
|
||||||
|
|
||||||
|
{ backcompat }
|
||||||
|
APR_USETID = APR_FPROT_USETID; {< @deprecated @see APR_FPROT_USETID }
|
||||||
|
APR_UREAD = APR_FPROT_UREAD; {< @deprecated @see APR_FPROT_UREAD }
|
||||||
|
APR_UWRITE = APR_FPROT_UWRITE; {< @deprecated @see APR_FPROT_UWRITE }
|
||||||
|
APR_UEXECUTE = APR_FPROT_UEXECUTE; {< @deprecated @see APR_FPROT_UEXECUTE }
|
||||||
|
APR_GSETID = APR_FPROT_GSETID; {< @deprecated @see APR_FPROT_GSETID }
|
||||||
|
APR_GREAD = APR_FPROT_GREAD; {< @deprecated @see APR_FPROT_GREAD }
|
||||||
|
APR_GWRITE = APR_FPROT_GWRITE; {< @deprecated @see APR_FPROT_GWRITE }
|
||||||
|
APR_GEXECUTE = APR_FPROT_GEXECUTE; {< @deprecated @see APR_FPROT_GEXECUTE }
|
||||||
|
APR_WSTICKY = APR_FPROT_WSTICKY; {< @deprecated @see APR_FPROT_WSTICKY }
|
||||||
|
APR_WREAD = APR_FPROT_WREAD; {< @deprecated @see APR_FPROT_WREAD }
|
||||||
|
APR_WWRITE = APR_FPROT_WWRITE; {< @deprecated @see APR_FPROT_WWRITE }
|
||||||
|
APR_WEXECUTE = APR_FPROT_WEXECUTE; {< @deprecated @see APR_FPROT_WEXECUTE }
|
||||||
|
APR_OS_DEFAULT= APR_FPROT_OS_DEFAULT; {< @deprecated @see APR_FPROT_OS_DEFAULT }
|
||||||
|
APR_FILE_SOURCE_PERMS = APR_FPROT_FILE_SOURCE_PERMS; {< @deprecated @see APR_FPROT_FILE_SOURCE_PERMS }
|
||||||
|
|
||||||
{
|
{
|
||||||
* Structure for referencing directories.
|
* Structure for referencing directories.
|
||||||
@ -208,34 +224,17 @@ type
|
|||||||
* @param fname The name of the file to stat.
|
* @param fname The name of the file to stat.
|
||||||
* @param wanted The desired apr_finfo_t fields, as a bit flag of APR_FINFO_
|
* @param wanted The desired apr_finfo_t fields, as a bit flag of APR_FINFO_
|
||||||
values
|
values
|
||||||
* @param cont the pool to use to allocate the new file.
|
* @param pool the pool to use to allocate the new file.
|
||||||
*
|
*
|
||||||
* @note If @c APR_INCOMPLETE is returned all the fields in @a finfo may
|
* @note If @c APR_INCOMPLETE is returned all the fields in @a finfo may
|
||||||
* not be filled in, and you need to check the @c finfo->valid bitmask
|
* not be filled in, and you need to check the @c finfo->valid bitmask
|
||||||
* to verify that what you're looking for is there.
|
* to verify that what you're looking for is there.
|
||||||
}
|
}
|
||||||
function apr_stat(finfo: Papr_finfo_t; const fname: PChar;
|
function apr_stat(finfo: Papr_finfo_t; const fname: PChar;
|
||||||
wanted: apr_int32_t; cont: Papr_pool_t): apr_status_t;
|
wanted: apr_int32_t; pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_stat' + LibSuff16;
|
external LibAPR name LibNamePrefix + 'apr_stat' + LibSuff16;
|
||||||
|
|
||||||
{
|
|
||||||
* get the specified file's stats. The file is specified by filename,
|
|
||||||
* instead of using a pre-opened file. If the file is a symlink, this function
|
|
||||||
* will get the stats for the symlink not the file the symlink refers to.
|
|
||||||
* @param finfo Where to store the information about the file, which is
|
|
||||||
* never touched if the call fails.
|
|
||||||
* @param fname The name of the file to stat.
|
|
||||||
* @param wanted The desired apr_finfo_t fields, as a bit flag of APR_FINFO_ values
|
|
||||||
* @param cont the pool to use to allocate the new file.
|
|
||||||
* @deprecated This function is deprecated, it's equivalent to calling apr_stat with
|
|
||||||
* the wanted flag value APR_FINFO_LINK
|
|
||||||
}
|
|
||||||
function apr_lstat(finfo: Papr_finfo_t; const fname: PChar;
|
|
||||||
wanted: apr_int32_t; cont: Papr_pool_t): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_lstat' + LibSuff16;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* @defgroup apr_dir Directory Manipulation Functions
|
* @defgroup apr_dir Directory Manipulation Functions
|
||||||
}
|
}
|
||||||
@ -244,10 +243,10 @@ function apr_lstat(finfo: Papr_finfo_t; const fname: PChar;
|
|||||||
* Open the specified directory.
|
* Open the specified directory.
|
||||||
* @param new_dir The opened directory descriptor.
|
* @param new_dir The opened directory descriptor.
|
||||||
* @param dirname The full path to the directory (use / on all systems)
|
* @param dirname The full path to the directory (use / on all systems)
|
||||||
* @param cont The pool to use.
|
* @param pool The pool to use.
|
||||||
}
|
}
|
||||||
function apr_dir_open(new_dir: PPapr_dir_t; const dirname: PChar;
|
function apr_dir_open(new_dir: PPapr_dir_t; const dirname: PChar;
|
||||||
cont: Papr_pool_t): apr_status_t;
|
pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_dir_open' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_dir_open' + LibSuff12;
|
||||||
|
|
||||||
|
@ -43,27 +43,47 @@
|
|||||||
are reserved for platform-specific values. }
|
are reserved for platform-specific values. }
|
||||||
|
|
||||||
const
|
const
|
||||||
APR_READ = $00001; {< Open the file for reading }
|
APR_FOPEN_READ = $00001; {< Open the file for reading }
|
||||||
APR_WRITE = $00002; {< Open the file for writing }
|
APR_FOPEN_WRITE = $00002; {< Open the file for writing }
|
||||||
APR_CREATE = $00004; {< Create the file if not there }
|
APR_FOPEN_CREATE = $00004; {< Create the file if not there }
|
||||||
APR_APPEND = $00008; {< Append to the end of the file }
|
APR_FOPEN_APPEND = $00008; {< Append to the end of the file }
|
||||||
APR_TRUNCATE = $00010; {< Open the file and truncate to 0 length }
|
APR_FOPEN_TRUNCATE = $00010; {< Open the file and truncate
|
||||||
APR_BINARY = $00020; {< Open the file in binary mode }
|
to 0 length }
|
||||||
APR_EXCL = $00040; {< Open should fail if APR_CREATE and file
|
APR_FOPEN_BINARY = $00020; {< Open the file in binary mode }
|
||||||
exists. }
|
APR_FOPEN_EXCL = $00040; {< Open should fail if APR_CREATE
|
||||||
APR_BUFFERED = $00080; {< Open the file for buffered I/O }
|
and file exists. }
|
||||||
APR_DELONCLOSE =$00100; {< Delete the file after close }
|
APR_FOPEN_BUFFERED = $00080; {< Open the file for buffered I/O }
|
||||||
APR_XTHREAD = $00200; {< Platform dependent tag to open the file
|
APR_FOPEN_DELONCLOSE= $00100; {< Delete the file after close }
|
||||||
for use across multiple threads }
|
APR_FOPEN_XTHREAD = $00200; {< Platform dependent tag to open
|
||||||
APR_SHARELOCK = $00400; {< Platform dependent support for higher
|
the file for use across multiple
|
||||||
level locked read/write access to support
|
threads }
|
||||||
writes across process/machines }
|
APR_FOPEN_SHARELOCK = $00400; {< Platform dependent support for
|
||||||
APR_FILE_NOCLEANUP =$00800; {< Do not register a cleanup when the file
|
higher level locked read/write
|
||||||
is opened }
|
access to support writes across
|
||||||
APR_SENDFILE_ENABLED =$01000; {< Advisory flag that this file should
|
process/machines }
|
||||||
support apr_sendfile operation }
|
APR_FOPEN_NOCLEANUP = $00800; {< Do not register a cleanup
|
||||||
APR_LARGEFILE = $04000; {< Platform dependent flag to enable large file
|
when the file is opened }
|
||||||
support; WARNING see below. }
|
APR_FOPEN_SENDFILE_ENABLED = $01000; {< Advisory flag that this
|
||||||
|
file should support
|
||||||
|
apr_socket_sendfile operation }
|
||||||
|
APR_FOPEN_LARGEFILE = $04000; {< Platform dependent flag to enable
|
||||||
|
large file support; WARNING see
|
||||||
|
below. }
|
||||||
|
{ backcompat }
|
||||||
|
APR_READ = APR_FOPEN_READ; {< @deprecated @see APR_FOPEN_READ }
|
||||||
|
APR_WRITE = APR_FOPEN_WRITE; {< @deprecated @see APR_FOPEN_WRITE }
|
||||||
|
APR_CREATE = APR_FOPEN_CREATE; {< @deprecated @see APR_FOPEN_CREATE }
|
||||||
|
APR_APPEND = APR_FOPEN_APPEND; {< @deprecated @see APR_FOPEN_APPEND }
|
||||||
|
APR_TRUNCATE = APR_FOPEN_TRUNCATE; {< @deprecated @see APR_FOPEN_TRUNCATE }
|
||||||
|
APR_BINARY = APR_FOPEN_BINARY; {< @deprecated @see APR_FOPEN_BINARY }
|
||||||
|
APR_EXCL = APR_FOPEN_EXCL; {< @deprecated @see APR_FOPEN_EXCL }
|
||||||
|
APR_BUFFERED = APR_FOPEN_BUFFERED; {< @deprecated @see APR_FOPEN_BUFFERED }
|
||||||
|
APR_DELONCLOSE = APR_FOPEN_DELONCLOSE; {< @deprecated @see APR_FOPEN_DELONCLOSE }
|
||||||
|
APR_XTHREAD = APR_FOPEN_XTHREAD; {< @deprecated @see APR_FOPEN_XTHREAD }
|
||||||
|
APR_SHARELOCK = APR_FOPEN_SHARELOCK; {< @deprecated @see APR_FOPEN_SHARELOCK }
|
||||||
|
APR_FILE_NOCLEANUP = APR_FOPEN_NOCLEANUP; {< @deprecated @see APR_FOPEN_NOCLEANUP }
|
||||||
|
APR_SENDFILE_ENABLED= APR_FOPEN_SENDFILE_ENABLED; {< @deprecated @see APR_FOPEN_SENDFILE_ENABLED }
|
||||||
|
APR_LARGEFILE = APR_FOPEN_LARGEFILE; {< @deprecated @see APR_FOPEN_LARGEFILE }
|
||||||
|
|
||||||
{ @warning The APR_LARGEFILE flag only has effect on some platforms
|
{ @warning The APR_LARGEFILE flag only has effect on some platforms
|
||||||
* where sizeof(apr_off_t) == 4. Where implemented, it allows opening
|
* where sizeof(apr_off_t) == 4. Where implemented, it allows opening
|
||||||
@ -89,11 +109,25 @@ const
|
|||||||
APR_FILE_ATTR_EXECUTABLE =$02; {< File is executable }
|
APR_FILE_ATTR_EXECUTABLE =$02; {< File is executable }
|
||||||
APR_FILE_ATTR_HIDDEN = $04; {< File is hidden }
|
APR_FILE_ATTR_HIDDEN = $04; {< File is hidden }
|
||||||
|
|
||||||
|
{
|
||||||
|
* @defgroup apr_file_writev(_full) max iovec size
|
||||||
|
}
|
||||||
|
{$ifdef DOXYGEN}
|
||||||
|
APR_MAX_IOVEC_SIZE = 1024; {< System dependent maximum
|
||||||
|
size of an iovec array }
|
||||||
|
{#elif defined(IOV_MAX)
|
||||||
|
#define APR_MAX_IOVEC_SIZE IOV_MAX
|
||||||
|
#elif defined(MAX_IOVEC)
|
||||||
|
#define APR_MAX_IOVEC_SIZE MAX_IOVEC}
|
||||||
|
{$else}
|
||||||
|
APR_MAX_IOVEC_SIZE = 1024;
|
||||||
|
{$endif}
|
||||||
|
|
||||||
{ File attributes }
|
{ File attributes }
|
||||||
type
|
type
|
||||||
apr_fileattrs_t = apr_uint32_t;
|
apr_fileattrs_t = apr_uint32_t;
|
||||||
|
|
||||||
{ should be same as whence type in lseek, POSIX defines this as int }
|
{ Type to pass as whence argument to apr_file_seek. }
|
||||||
apr_seek_where_t = Integer;
|
apr_seek_where_t = Integer;
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -145,12 +179,12 @@ const
|
|||||||
* level locked read/write access to support
|
* level locked read/write access to support
|
||||||
* writes across process/machines
|
* writes across process/machines
|
||||||
* APR_FILE_NOCLEANUP Do not register a cleanup with the pool
|
* APR_FILE_NOCLEANUP Do not register a cleanup with the pool
|
||||||
* passed in on the <EM>cont</EM> argument (see below).
|
* passed in on the <EM>pool</EM> argument (see below).
|
||||||
* The apr_os_file_t handle in apr_file_t will not
|
* The apr_os_file_t handle in apr_file_t will not
|
||||||
* be closed when the pool is destroyed.
|
* be closed when the pool is destroyed.
|
||||||
* APR_SENDFILE_ENABLED Open with appropriate platform semantics
|
* APR_SENDFILE_ENABLED Open with appropriate platform semantics
|
||||||
* for sendfile operations. Advisory only,
|
* for sendfile operations. Advisory only,
|
||||||
* apr_sendfile does not check this flag.
|
* apr_socket_sendfile does not check this flag.
|
||||||
* </PRE>
|
* </PRE>
|
||||||
* @param perm Access permissions for file.
|
* @param perm Access permissions for file.
|
||||||
* @param pool The pool to use.
|
* @param pool The pool to use.
|
||||||
@ -175,10 +209,10 @@ function apr_file_close(file_: Papr_file_t): apr_status_t;
|
|||||||
{
|
{
|
||||||
* delete the specified file.
|
* delete the specified file.
|
||||||
* @param path The full path to the file (using / on all systems)
|
* @param path The full path to the file (using / on all systems)
|
||||||
* @param cont The pool to use.
|
* @param pool The pool to use.
|
||||||
* @remark If the file is open, it won't be removed until all instances are closed.
|
* @remark If the file is open, it won't be removed until all instances are closed.
|
||||||
}
|
}
|
||||||
function apr_file_remove(const path: PChar; cont: Papr_pool_t): apr_status_t;
|
function apr_file_remove(const path: PChar; pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_file_remove' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_file_remove' + LibSuff8;
|
||||||
|
|
||||||
@ -239,7 +273,7 @@ function apr_file_eof(fptr: Papr_file_t): apr_status_t;
|
|||||||
{
|
{
|
||||||
* open standard error as an apr file pointer.
|
* open standard error as an apr file pointer.
|
||||||
* @param thefile The apr file to use as stderr.
|
* @param thefile The apr file to use as stderr.
|
||||||
* @param cont The pool to allocate the file out of.
|
* @param pool The pool to allocate the file out of.
|
||||||
*
|
*
|
||||||
* @remark The only reason that the apr_file_open_std* functions exist
|
* @remark The only reason that the apr_file_open_std* functions exist
|
||||||
* is that you may not always have a stderr/out/in on Windows. This
|
* is that you may not always have a stderr/out/in on Windows. This
|
||||||
@ -252,47 +286,31 @@ function apr_file_eof(fptr: Papr_file_t): apr_status_t;
|
|||||||
* platforms.
|
* platforms.
|
||||||
}
|
}
|
||||||
function apr_file_open_stderr(thefile: PPapr_file_t;
|
function apr_file_open_stderr(thefile: PPapr_file_t;
|
||||||
cont: Papr_pool_t): apr_status_t;
|
pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_file_open_stderr' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_file_open_stderr' + LibSuff8;
|
||||||
|
|
||||||
{
|
{
|
||||||
* open standard output as an apr file pointer.
|
* open standard output as an apr file pointer.
|
||||||
* @param thefile The apr file to use as stdout.
|
* @param thefile The apr file to use as stdout.
|
||||||
* @param cont The pool to allocate the file out of.
|
* @param pool The pool to allocate the file out of.
|
||||||
*
|
*
|
||||||
* @remark The only reason that the apr_file_open_std* functions exist
|
* @remark See remarks for apr_file_open_stdout.
|
||||||
* is that you may not always have a stderr/out/in on Windows. This
|
|
||||||
* is generally a problem with newer versions of Windows and services.
|
|
||||||
*
|
|
||||||
* The other problem is that the C library functions generally work
|
|
||||||
* differently on Windows and Unix. So, by using apr_file_open_std*
|
|
||||||
* functions, you can get a handle to an APR struct that works with
|
|
||||||
* the APR functions which are supposed to work identically on all
|
|
||||||
* platforms.
|
|
||||||
}
|
}
|
||||||
function apr_file_open_stdout(thefile: PPapr_file_t;
|
function apr_file_open_stdout(thefile: PPapr_file_t;
|
||||||
cont: Papr_pool_t): apr_status_t;
|
pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_file_open_stdout' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_file_open_stdout' + LibSuff8;
|
||||||
|
|
||||||
{
|
{
|
||||||
* open standard input as an apr file pointer.
|
* open standard input as an apr file pointer.
|
||||||
* @param thefile The apr file to use as stdin.
|
* @param thefile The apr file to use as stdin.
|
||||||
* @param cont The pool to allocate the file out of.
|
* @param pool The pool to allocate the file out of.
|
||||||
*
|
*
|
||||||
* @remark The only reason that the apr_file_open_std* functions exist
|
* @remark See remarks for apr_file_open_stdout.
|
||||||
* is that you may not always have a stderr/out/in on Windows. This
|
|
||||||
* is generally a problem with newer versions of Windows and services.
|
|
||||||
*
|
|
||||||
* The other problem is that the C library functions generally work
|
|
||||||
* differently on Windows and Unix. So, by using apr_file_open_std*
|
|
||||||
* functions, you can get a handle to an APR struct that works with
|
|
||||||
* the APR functions which are supposed to work identically on all
|
|
||||||
* platforms.
|
|
||||||
}
|
}
|
||||||
function apr_file_open_stdin(thefile: PPapr_file_t;
|
function apr_file_open_stdin(thefile: PPapr_file_t;
|
||||||
cont: Papr_pool_t): apr_status_t;
|
pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_file_open_stdin' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_file_open_stdin' + LibSuff8;
|
||||||
|
|
||||||
@ -300,18 +318,18 @@ function apr_file_open_stdin(thefile: PPapr_file_t;
|
|||||||
* Read data from the specified file.
|
* Read data from the specified file.
|
||||||
* @param thefile The file descriptor to read from.
|
* @param thefile The file descriptor to read from.
|
||||||
* @param buf The buffer to store the data to.
|
* @param buf The buffer to store the data to.
|
||||||
* @param nbytes On entry, the number of bytes to read; on exit, the number of bytes read.
|
* @param nbytes On entry, the number of bytes to read; on exit, the number
|
||||||
* @remark apr_file_read will read up to the specified number of bytes, but
|
* of bytes read.
|
||||||
* never more. If there isn't enough data to fill that number of
|
|
||||||
* bytes, all of the available data is read. The third argument is
|
|
||||||
* modified to reflect the number of bytes read. If a char was put
|
|
||||||
* back into the stream via ungetc, it will be the first character
|
|
||||||
* returned.
|
|
||||||
*
|
*
|
||||||
* It is not possible for both bytes to be read and an APR_EOF or other
|
* @remark apr_file_read will read up to the specified number of
|
||||||
* error to be returned.
|
* bytes, but never more. If there isn't enough data to fill that
|
||||||
|
* number of bytes, all of the available data is read. The third
|
||||||
|
* argument is modified to reflect the number of bytes read. If a
|
||||||
|
* char was put back into the stream via ungetc, it will be the first
|
||||||
|
* character returned.
|
||||||
*
|
*
|
||||||
* APR_EINTR is never returned.
|
* @remark It is not possible for both bytes to be read and an APR_EOF
|
||||||
|
* or other error to be returned. APR_EINTR is never returned.
|
||||||
}
|
}
|
||||||
function apr_file_read(thefile: Papr_file_t; buf: Pointer;
|
function apr_file_read(thefile: Papr_file_t; buf: Pointer;
|
||||||
nbytes: Papr_size_t): apr_status_t;
|
nbytes: Papr_size_t): apr_status_t;
|
||||||
@ -322,16 +340,16 @@ function apr_file_read(thefile: Papr_file_t; buf: Pointer;
|
|||||||
* Write data to the specified file.
|
* Write data to the specified file.
|
||||||
* @param thefile The file descriptor to write to.
|
* @param thefile The file descriptor to write to.
|
||||||
* @param buf The buffer which contains the data.
|
* @param buf The buffer which contains the data.
|
||||||
* @param nbytes On entry, the number of bytes to write; on exit, the number
|
* @param nbytes On entry, the number of bytes to write; on exit, the number
|
||||||
* of bytes written.
|
* of bytes written.
|
||||||
* @remark apr_file_write will write up to the specified number of bytes, but never
|
|
||||||
* more. If the OS cannot write that many bytes, it will write as many
|
|
||||||
* as it can. The third argument is modified to reflect the * number
|
|
||||||
* of bytes written.
|
|
||||||
*
|
*
|
||||||
* It is possible for both bytes to be written and an error to be returned.
|
* @remark apr_file_write will write up to the specified number of
|
||||||
|
* bytes, but never more. If the OS cannot write that many bytes, it
|
||||||
|
* will write as many as it can. The third argument is modified to
|
||||||
|
* reflect the * number of bytes written.
|
||||||
*
|
*
|
||||||
* APR_EINTR is never returned.
|
* @remark It is possible for both bytes to be written and an error to
|
||||||
|
* be returned. APR_EINTR is never returned.
|
||||||
}
|
}
|
||||||
function apr_file_write(thefile: Papr_file_t; buf: Pointer;
|
function apr_file_write(thefile: Papr_file_t; buf: Pointer;
|
||||||
nbytes: Papr_size_t): apr_status_t;
|
nbytes: Papr_size_t): apr_status_t;
|
||||||
@ -342,16 +360,16 @@ function apr_file_write(thefile: Papr_file_t; buf: Pointer;
|
|||||||
* Write data from iovec array to the specified file.
|
* Write data from iovec array to the specified file.
|
||||||
* @param thefile The file descriptor to write to.
|
* @param thefile The file descriptor to write to.
|
||||||
* @param vec The array from which to get the data to write to the file.
|
* @param vec The array from which to get the data to write to the file.
|
||||||
* @param nvec The number of elements in the struct iovec array. This must
|
* @param nvec The number of elements in the struct iovec array. This must
|
||||||
* be smaller than APR_MAX_IOVEC_SIZE. If it isn't, the function
|
* be smaller than APR_MAX_IOVEC_SIZE. If it isn't, the function
|
||||||
* will fail with APR_EINVAL.
|
* will fail with APR_EINVAL.
|
||||||
* @param nbytes The number of bytes written.
|
* @param nbytes The number of bytes written.
|
||||||
* @remark It is possible for both bytes to be written and an error to be returned.
|
|
||||||
* APR_EINTR is never returned.
|
|
||||||
*
|
*
|
||||||
* apr_file_writev is available even if the underlying operating system
|
* @remark It is possible for both bytes to be written and an error to
|
||||||
|
* be returned. APR_EINTR is never returned.
|
||||||
*
|
*
|
||||||
* doesn't provide writev().
|
* @remark apr_file_writev is available even if the underlying
|
||||||
|
* operating system doesn't provide writev().
|
||||||
}
|
}
|
||||||
function apr_file_writev(thefile: Papr_file_t; const vec: Piovec;
|
function apr_file_writev(thefile: Papr_file_t; const vec: Piovec;
|
||||||
nvec: apr_size_t; nbytes: Papr_size_t): apr_status_t;
|
nvec: apr_size_t; nbytes: Papr_size_t): apr_status_t;
|
||||||
@ -365,17 +383,18 @@ function apr_file_writev(thefile: Papr_file_t; const vec: Piovec;
|
|||||||
* @param buf The buffer to store the data to.
|
* @param buf The buffer to store the data to.
|
||||||
* @param nbytes The number of bytes to read.
|
* @param nbytes The number of bytes to read.
|
||||||
* @param bytes_read If non-NULL, this will contain the number of bytes read.
|
* @param bytes_read If non-NULL, this will contain the number of bytes read.
|
||||||
* @remark apr_file_read will read up to the specified number of bytes, but never
|
|
||||||
* more. If there isn't enough data to fill that number of bytes,
|
|
||||||
* then the process/thread will block until it is available or EOF
|
|
||||||
* is reached. If a char was put back into the stream via ungetc,
|
|
||||||
* it will be the first character returned.
|
|
||||||
*
|
*
|
||||||
* It is possible for both bytes to be read and an error to be
|
* @remark apr_file_read will read up to the specified number of
|
||||||
* returned. And if *bytes_read is less than nbytes, an
|
* bytes, but never more. If there isn't enough data to fill that
|
||||||
* accompanying error is _always_ returned.
|
* number of bytes, then the process/thread will block until it is
|
||||||
|
* available or EOF is reached. If a char was put back into the
|
||||||
|
* stream via ungetc, it will be the first character returned.
|
||||||
*
|
*
|
||||||
* APR_EINTR is never returned.
|
* @remark It is possible for both bytes to be read and an error to be
|
||||||
|
* returned. And if *bytes_read is less than nbytes, an accompanying
|
||||||
|
* error is _always_ returned.
|
||||||
|
*
|
||||||
|
* @remark APR_EINTR is never returned.
|
||||||
}
|
}
|
||||||
function apr_file_read_full(thefile: Papr_file_t; buf: Pointer;
|
function apr_file_read_full(thefile: Papr_file_t; buf: Pointer;
|
||||||
nbytes: apr_size_t; bytes_read: Papr_size_t): apr_status_t;
|
nbytes: apr_size_t; bytes_read: Papr_size_t): apr_status_t;
|
||||||
@ -388,17 +407,19 @@ function apr_file_read_full(thefile: Papr_file_t; buf: Pointer;
|
|||||||
* @param thefile The file descriptor to write to.
|
* @param thefile The file descriptor to write to.
|
||||||
* @param buf The buffer which contains the data.
|
* @param buf The buffer which contains the data.
|
||||||
* @param nbytes The number of bytes to write.
|
* @param nbytes The number of bytes to write.
|
||||||
* @param bytes_written If non-NULL, this will contain the number of bytes written.
|
* @param bytes_written If non-NULL, set to the number of bytes written.
|
||||||
* @remark apr_file_write will write up to the specified number of bytes, but never
|
|
||||||
* more. If the OS cannot write that many bytes, the process/thread
|
|
||||||
* will block until they can be written. Exceptional error such as
|
|
||||||
* "out of space" or "pipe closed" will terminate with an error.
|
|
||||||
*
|
*
|
||||||
* It is possible for both bytes to be written and an error to be
|
* @remark apr_file_write will write up to the specified number of
|
||||||
* returned. And if *bytes_written is less than nbytes, an
|
* bytes, but never more. If the OS cannot write that many bytes, the
|
||||||
* accompanying error is _always_ returned.
|
* process/thread will block until they can be written. Exceptional
|
||||||
|
* error such as "out of space" or "pipe closed" will terminate with
|
||||||
|
* an error.
|
||||||
*
|
*
|
||||||
* APR_EINTR is never returned.
|
* @remark It is possible for both bytes to be written and an error to
|
||||||
|
* be returned. And if *bytes_written is less than nbytes, an
|
||||||
|
* accompanying error is _always_ returned.
|
||||||
|
*
|
||||||
|
* @remark APR_EINTR is never returned.
|
||||||
}
|
}
|
||||||
function apr_file_write_full(thefile: Papr_file_t; buf: Pointer;
|
function apr_file_write_full(thefile: Papr_file_t; buf: Pointer;
|
||||||
nbytes: apr_size_t; bytes_written: Papr_size_t): apr_status_t;
|
nbytes: apr_size_t; bytes_written: Papr_size_t): apr_status_t;
|
||||||
@ -406,7 +427,25 @@ function apr_file_write_full(thefile: Papr_file_t; buf: Pointer;
|
|||||||
external LibAPR name LibNamePrefix + 'apr_file_write_full' + LibSuff16;
|
external LibAPR name LibNamePrefix + 'apr_file_write_full' + LibSuff16;
|
||||||
|
|
||||||
{
|
{
|
||||||
* put a character into the specified file.
|
* Write data from iovec array to the specified file, ensuring that all of the
|
||||||
|
* data is written before returning.
|
||||||
|
* @param thefile The file descriptor to write to.
|
||||||
|
* @param vec The array from which to get the data to write to the file.
|
||||||
|
* @param nvec The number of elements in the struct iovec array. This must
|
||||||
|
* be smaller than APR_MAX_IOVEC_SIZE. If it isn't, the function
|
||||||
|
* will fail with APR_EINVAL.
|
||||||
|
* @param nbytes The number of bytes written.
|
||||||
|
*
|
||||||
|
* @remark apr_file_writev_full is available even if the underlying
|
||||||
|
* operating system doesn't provide writev().
|
||||||
|
}
|
||||||
|
function apr_file_writev_full(thefile: Papr_file_t; const vec: Piovec;
|
||||||
|
nvec: apr_size_t; nbytes: Papr_size_t): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_file_writev_full' + LibSuff16;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Write a character into the specified file.
|
||||||
* @param ch The character to write.
|
* @param ch The character to write.
|
||||||
* @param thefile The file descriptor to write to
|
* @param thefile The file descriptor to write to
|
||||||
}
|
}
|
||||||
@ -524,10 +563,10 @@ function apr_file_seek(thefile: Papr_file_t;
|
|||||||
* Create an anonymous pipe.
|
* Create an anonymous pipe.
|
||||||
* @param in The file descriptor to use as input to the pipe.
|
* @param in The file descriptor to use as input to the pipe.
|
||||||
* @param out The file descriptor to use as output from the pipe.
|
* @param out The file descriptor to use as output from the pipe.
|
||||||
* @param cont The pool to operate on.
|
* @param pool The pool to operate on.
|
||||||
}
|
}
|
||||||
function apr_file_pipe_create(in_: PPapr_file_t; out_: PPapr_file_t;
|
function apr_file_pipe_create(in_: PPapr_file_t; out_: PPapr_file_t;
|
||||||
cont: Papr_pool_t): apr_status_t;
|
pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_file_pipe_create' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_file_pipe_create' + LibSuff12;
|
||||||
|
|
||||||
@ -535,10 +574,10 @@ function apr_file_pipe_create(in_: PPapr_file_t; out_: PPapr_file_t;
|
|||||||
* Create a named pipe.
|
* Create a named pipe.
|
||||||
* @param filename The filename of the named pipe
|
* @param filename The filename of the named pipe
|
||||||
* @param perm The permissions for the newly created pipe.
|
* @param perm The permissions for the newly created pipe.
|
||||||
* @param cont The pool to operate on.
|
* @param pool The pool to operate on.
|
||||||
}
|
}
|
||||||
function apr_file_namedpipe_create(const filename: PChar;
|
function apr_file_namedpipe_create(const filename: PChar;
|
||||||
perm: apr_fileperms_t; cont: Papr_pool_t): apr_status_t;
|
perm: apr_fileperms_t; pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_file_namedpipe_create' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_file_namedpipe_create' + LibSuff12;
|
||||||
|
|
||||||
@ -658,7 +697,7 @@ function apr_file_perms_set(const fname: PChar;
|
|||||||
* APR_FILE_ATTR_HIDDEN - make the file hidden
|
* APR_FILE_ATTR_HIDDEN - make the file hidden
|
||||||
* </PRE>
|
* </PRE>
|
||||||
* @param attr_mask Mask of valid bits in attributes.
|
* @param attr_mask Mask of valid bits in attributes.
|
||||||
* @param cont the pool to use.
|
* @param pool the pool to use.
|
||||||
* @remark This function should be used in preference to explict manipulation
|
* @remark This function should be used in preference to explict manipulation
|
||||||
* of the file permissions, because the operations to provide these
|
* of the file permissions, because the operations to provide these
|
||||||
* attributes are platform specific and may involve more than simply
|
* attributes are platform specific and may involve more than simply
|
||||||
@ -668,7 +707,7 @@ function apr_file_perms_set(const fname: PChar;
|
|||||||
}
|
}
|
||||||
function apr_file_attrs_set(const fname: PChar;
|
function apr_file_attrs_set(const fname: PChar;
|
||||||
attributes, attr_mask: apr_fileattrs_t;
|
attributes, attr_mask: apr_fileattrs_t;
|
||||||
cont: Papr_pool_t): apr_status_t;
|
pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_file_attrs_set' + LibSuff16;
|
external LibAPR name LibNamePrefix + 'apr_file_attrs_set' + LibSuff16;
|
||||||
|
|
||||||
@ -689,10 +728,10 @@ function apr_file_mtime_set(const fname: PChar;
|
|||||||
* Create a new directory on the file system.
|
* Create a new directory on the file system.
|
||||||
* @param path the path for the directory to be created. (use / on all systems)
|
* @param path the path for the directory to be created. (use / on all systems)
|
||||||
* @param perm Permissions for the new direcoty.
|
* @param perm Permissions for the new direcoty.
|
||||||
* @param cont the pool to use.
|
* @param pool the pool to use.
|
||||||
}
|
}
|
||||||
function apr_dir_make(const path: PChar; perm: apr_fileperms_t;
|
function apr_dir_make(const path: PChar; perm: apr_fileperms_t;
|
||||||
cont: Papr_pool_t): apr_status_t;
|
pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_dir_make' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_dir_make' + LibSuff12;
|
||||||
|
|
||||||
@ -711,9 +750,9 @@ function apr_dir_make_recursive(const path: PChar;
|
|||||||
{
|
{
|
||||||
* Remove directory from the file system.
|
* Remove directory from the file system.
|
||||||
* @param path the path for the directory to be removed. (use / on all systems)
|
* @param path the path for the directory to be removed. (use / on all systems)
|
||||||
* @param cont the pool to use.
|
* @param pool the pool to use.
|
||||||
}
|
}
|
||||||
function apr_dir_remove(const path: PChar; cont: Papr_pool_t): apr_status_t;
|
function apr_dir_remove(const path: PChar; pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_dir_remove' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_dir_remove' + LibSuff8;
|
||||||
|
|
||||||
@ -757,17 +796,13 @@ function apr_file_flags_get(f: Papr_file_t): apr_int32_t;
|
|||||||
}
|
}
|
||||||
{APR_DECLARE_INHERIT_SET(file);
|
{APR_DECLARE_INHERIT_SET(file);
|
||||||
}
|
}
|
||||||
{ @deprecated @see apr_file_inherit_set }
|
|
||||||
{APR_DECLARE(void) apr_file_set_inherit(apr_file_t *file);
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
* Unset a file from being inherited by child processes.
|
* Unset a file from being inherited by child processes.
|
||||||
}
|
}
|
||||||
{APR_DECLARE_INHERIT_UNSET(file);
|
{APR_DECLARE_INHERIT_UNSET(file);
|
||||||
}
|
}
|
||||||
{ @deprecated @see apr_file_inherit_unset }
|
|
||||||
{APR_DECLARE(void) apr_file_unset_inherit(apr_file_t *file);
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
* Open a temporary file
|
* Open a temporary file
|
||||||
* @param fp The apr file to use as a temporary file.
|
* @param fp The apr file to use as a temporary file.
|
||||||
|
@ -94,12 +94,6 @@ type
|
|||||||
#define APR_OFFSETOF(s_type,field) APR_OFFSET(s_type*,field)
|
#define APR_OFFSETOF(s_type,field) APR_OFFSET(s_type*,field)
|
||||||
#endif}
|
#endif}
|
||||||
|
|
||||||
{ @deprecated @see APR_OFFSET }
|
|
||||||
//#define APR_XtOffset APR_OFFSET
|
|
||||||
|
|
||||||
{ @deprecated @see APR_OFFSETOF }
|
|
||||||
//#define APR_XtOffsetOf APR_OFFSETOF
|
|
||||||
|
|
||||||
{$ifndef DOXYGEN}
|
{$ifndef DOXYGEN}
|
||||||
|
|
||||||
{ A couple of prototypes for functions in case some platform doesn't
|
{ A couple of prototypes for functions in case some platform doesn't
|
||||||
@ -135,12 +129,15 @@ int strncasecmp(const char *a, const char *b, size_t n);
|
|||||||
* String and memory functions
|
* String and memory functions
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{ APR_STRINGIFY is defined here, and also in apr_release.h, so wrap it }
|
||||||
|
{$ifndef APR_STRINGIFY}
|
||||||
{ Properly quote a value as a string in the C preprocessor }
|
{ Properly quote a value as a string in the C preprocessor }
|
||||||
//#define APR_STRINGIFY(n) APR_STRINGIFY_HELPER(n)
|
//#define APR_STRINGIFY(n) APR_STRINGIFY_HELPER(n)
|
||||||
{ Helper macro for APR_STRINGIFY }
|
{ Helper macro for APR_STRINGIFY }
|
||||||
{#define APR_STRINGIFY_HELPER(n) #n
|
{#define APR_STRINGIFY_HELPER(n) #n}
|
||||||
|
{$endif}
|
||||||
|
|
||||||
#if (!APR_HAVE_MEMMOVE)
|
{#if (!APR_HAVE_MEMMOVE)
|
||||||
#define memmove(a,b,c) bcopy(b,a,c)
|
#define memmove(a,b,c) bcopy(b,a,c)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -214,15 +211,9 @@ procedure apr_terminate2;
|
|||||||
* @param buf Buffer to fill with random bytes
|
* @param buf Buffer to fill with random bytes
|
||||||
* @param length Length of buffer in bytes (becomes apr_size_t in APR 1.0)
|
* @param length Length of buffer in bytes (becomes apr_size_t in APR 1.0)
|
||||||
}
|
}
|
||||||
{$ifdef APR_ENABLE_FOR_1_0}
|
|
||||||
function apr_generate_random_bytes(buf: PChar; length: apr_size_t): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_generate_random_bytes' + LibSuff8;
|
|
||||||
{$else}
|
|
||||||
function apr_generate_random_bytes(buf: PChar; length: Integer): apr_status_t;
|
function apr_generate_random_bytes(buf: PChar; length: Integer): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_generate_random_bytes' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_generate_random_bytes' + LibSuff8;
|
||||||
{$endif}
|
|
||||||
|
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
|
@ -53,6 +53,20 @@ type
|
|||||||
apr_hash_index_t = record end;
|
apr_hash_index_t = record end;
|
||||||
Papr_hash_index_t = ^apr_hash_index_t;
|
Papr_hash_index_t = ^apr_hash_index_t;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Callback functions for calculating hash values.
|
||||||
|
* @param key The key.
|
||||||
|
* @param klen The length of the key, or APR_HASH_KEY_STRING to use the string
|
||||||
|
* length. If APR_HASH_KEY_STRING then returns the actual key length.
|
||||||
|
}
|
||||||
|
apr_hashfunc_t = function (const key: PChar; klen: Papr_size_t): cuint;
|
||||||
|
|
||||||
|
{
|
||||||
|
* The default hash function.
|
||||||
|
}
|
||||||
|
function apr_hashfunc_default(const key: PChar; klen: Papr_size_t): cuint;
|
||||||
|
cdecl; external LibAPR name LibNamePrefix + 'apr_hashfunc_default' + LibSuff8;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Create a hash table.
|
* Create a hash table.
|
||||||
* @param pool The pool to allocate the hash table out of
|
* @param pool The pool to allocate the hash table out of
|
||||||
@ -62,6 +76,16 @@ function apr_hash_make(pool: Papr_pool_t): Papr_hash_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_hash_make' + LibSuff4;
|
external LibAPR name LibNamePrefix + 'apr_hash_make' + LibSuff4;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Create a hash table with a custom hash function
|
||||||
|
* @param pool The pool to allocate the hash table out of
|
||||||
|
* @param hash_func A custom hash function.
|
||||||
|
* @return The hash table just created
|
||||||
|
}
|
||||||
|
function apr_hash_make_custom(pool: Papr_pool_t; hash_func: apr_hashfunc_t): Papr_hash_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_hash_make_custom' + LibSuff8;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Make a copy of a hash table
|
* Make a copy of a hash table
|
||||||
* @param pool The pool from which to allocate the new hash table
|
* @param pool The pool from which to allocate the new hash table
|
||||||
@ -165,7 +189,8 @@ function apr_hash_count(ht: Papr_hash_t): cuint;
|
|||||||
|
|
||||||
{
|
{
|
||||||
* Merge two hash tables into one new hash table. The values of the overlay
|
* Merge two hash tables into one new hash table. The values of the overlay
|
||||||
* hash override the values of the base if both have the same key.
|
* hash override the values of the base if both have the same key. Both
|
||||||
|
* hash tables must use the same hash function.
|
||||||
* @param p The pool to use for the new hash table
|
* @param p The pool to use for the new hash table
|
||||||
* @param overlay The table to add to the initial table
|
* @param overlay The table to add to the initial table
|
||||||
* @param base The table that represents the initial values of the new table
|
* @param base The table that represents the initial values of the new table
|
||||||
@ -179,7 +204,8 @@ function apr_hash_overlay(p: Papr_pool_t;
|
|||||||
{
|
{
|
||||||
* Merge two hash tables into one new hash table. If the same key
|
* Merge two hash tables into one new hash table. If the same key
|
||||||
* is present in both tables, call the supplied merge function to
|
* is present in both tables, call the supplied merge function to
|
||||||
* produce a merged value for the key in the new table.
|
* produce a merged value for the key in the new table. Both
|
||||||
|
* hash tables must use the same hash function.
|
||||||
* @param p The pool to use for the new hash table
|
* @param p The pool to use for the new hash table
|
||||||
* @param h1 The first of the tables to merge
|
* @param h1 The first of the tables to merge
|
||||||
* @param h2 The second of the tables to merge
|
* @param h2 The second of the tables to merge
|
||||||
|
@ -78,11 +78,6 @@ function apr_filepath_name_get(const pathname: PChar): PChar;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_filepath_name_get' + LibSuff4;
|
external LibAPR name LibNamePrefix + 'apr_filepath_name_get' + LibSuff4;
|
||||||
|
|
||||||
{ @deprecated @see apr_filepath_name_get }
|
|
||||||
function apr_filename_of_pathname(const pathname: PChar): PChar;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_filename_of_pathname' + LibSuff4;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* apr_killpg
|
* apr_killpg
|
||||||
* Small utility macros to make things easier to read. Not usually a
|
* Small utility macros to make things easier to read. Not usually a
|
||||||
@ -116,6 +111,8 @@ function apr_filename_of_pathname(const pathname: PChar): PChar;
|
|||||||
* [ipv6-address]:port
|
* [ipv6-address]:port
|
||||||
* %%pT takes an apr_os_thread_t * and prints it in decimal
|
* %%pT takes an apr_os_thread_t * and prints it in decimal
|
||||||
* ('0' is printed if !APR_HAS_THREADS)
|
* ('0' is printed if !APR_HAS_THREADS)
|
||||||
|
* %%pt takes an apr_os_thread_t * and prints it in hexadecimal
|
||||||
|
* ('0' is printed if !APR_HAS_THREADS)
|
||||||
* %%pp takes a void * and outputs it in hex
|
* %%pp takes a void * and outputs it in hex
|
||||||
*
|
*
|
||||||
* The %%p hacks are to force gcc's printf warning code to skip
|
* The %%p hacks are to force gcc's printf warning code to skip
|
||||||
@ -173,6 +170,11 @@ function apr_vformatter(flush_func: flush_func_t;
|
|||||||
* @param prompt The prompt to display
|
* @param prompt The prompt to display
|
||||||
* @param pwbuf Buffer to store the password
|
* @param pwbuf Buffer to store the password
|
||||||
* @param bufsize The length of the password buffer.
|
* @param bufsize The length of the password buffer.
|
||||||
|
* @remark If the password entered must be truncated to fit in
|
||||||
|
* the provided buffer, APR_ENAMETOOLONG will be returned.
|
||||||
|
* Note that the bufsize paramater is passed by reference for no
|
||||||
|
* reason; its value will never be modified by the apr_password_get()
|
||||||
|
* function.
|
||||||
}
|
}
|
||||||
function apr_password_get(const prompt: PChar;
|
function apr_password_get(const prompt: PChar;
|
||||||
pwbuf: PChar; bufsize: Papr_size_t): apr_status_t;
|
pwbuf: PChar; bufsize: Papr_size_t): apr_status_t;
|
||||||
|
@ -38,9 +38,6 @@ const
|
|||||||
{ Maximum seconds to linger }
|
{ Maximum seconds to linger }
|
||||||
APR_MAX_SECS_TO_LINGER = 30;
|
APR_MAX_SECS_TO_LINGER = 30;
|
||||||
|
|
||||||
{ @deprecated @see APR_MAX_SECS_TO_LINGER }
|
|
||||||
MAX_SECS_TO_LINGER = APR_MAX_SECS_TO_LINGER;
|
|
||||||
|
|
||||||
{ Maximum hostname length }
|
{ Maximum hostname length }
|
||||||
APRMAXHOSTLEN = 256;
|
APRMAXHOSTLEN = 256;
|
||||||
|
|
||||||
@ -55,7 +52,6 @@ const
|
|||||||
APR_SO_DEBUG = 4; {< Debug }
|
APR_SO_DEBUG = 4; {< Debug }
|
||||||
APR_SO_NONBLOCK = 8; {< Non-blocking IO }
|
APR_SO_NONBLOCK = 8; {< Non-blocking IO }
|
||||||
APR_SO_REUSEADDR = 16; {< Reuse addresses }
|
APR_SO_REUSEADDR = 16; {< Reuse addresses }
|
||||||
APR_SO_TIMEOUT = 32; {< Timeout }
|
|
||||||
APR_SO_SNDBUF = 64; {< Send buffer }
|
APR_SO_SNDBUF = 64; {< Send buffer }
|
||||||
APR_SO_RCVBUF = 128; {< Receive buffer }
|
APR_SO_RCVBUF = 128; {< Receive buffer }
|
||||||
APR_SO_DISCONNECTED = 256; {< Disconnected }
|
APR_SO_DISCONNECTED = 256; {< Disconnected }
|
||||||
@ -69,7 +65,7 @@ const
|
|||||||
* APR_TCP_NODELAY should be turned on
|
* APR_TCP_NODELAY should be turned on
|
||||||
* again when NOPUSH is turned off
|
* again when NOPUSH is turned off
|
||||||
}
|
}
|
||||||
APR_INCOMPLETE_READ = 4096; {< Set on non-blocking sockets
|
APR_INCOMPLETE_READ = 4096; {< Set on non-blocking sockets
|
||||||
* (timeout != 0) on which the
|
* (timeout != 0) on which the
|
||||||
* previous read() did not fill a buffer
|
* previous read() did not fill a buffer
|
||||||
* completely. the next apr_socket_recv()
|
* completely. the next apr_socket_recv()
|
||||||
@ -80,12 +76,16 @@ const
|
|||||||
* read, in cases where the app expects
|
* read, in cases where the app expects
|
||||||
* that an immediate read would fail.)
|
* that an immediate read would fail.)
|
||||||
}
|
}
|
||||||
APR_INCOMPLETE_WRITE = 8192; {< like APR_INCOMPLETE_READ, but for write
|
APR_INCOMPLETE_WRITE = 8192;{< like APR_INCOMPLETE_READ, but for write
|
||||||
* @see APR_INCOMPLETE_READ
|
* @see APR_INCOMPLETE_READ
|
||||||
}
|
}
|
||||||
APR_IPV6_V6ONLY = 16384; {< Don't accept IPv4 connections on an
|
APR_IPV6_V6ONLY = 16384; {< Don't accept IPv4 connections on an
|
||||||
* IPv6 listening socket.
|
* IPv6 listening socket.
|
||||||
}
|
}
|
||||||
|
APR_TCP_DEFER_ACCEPT = 32768;{< Delay accepting of new connections
|
||||||
|
* until data is available.
|
||||||
|
* @see apr_socket_accept_filter
|
||||||
|
}
|
||||||
|
|
||||||
{ Define what type of socket shutdown should occur. }
|
{ Define what type of socket shutdown should occur. }
|
||||||
type
|
type
|
||||||
@ -110,6 +110,16 @@ const
|
|||||||
end;}
|
end;}
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
|
{ @def APR_INADDR_NONE
|
||||||
|
* Not all platforms have a real INADDR_NONE. This macro replaces
|
||||||
|
* INADDR_NONE on all platforms.
|
||||||
|
}
|
||||||
|
{$ifdef INADDR_NONE}
|
||||||
|
APR_INADDR_NONE = INADDR_NONE;
|
||||||
|
{$else}
|
||||||
|
APR_INADDR_NONE = $ffffffff;
|
||||||
|
{$endif}
|
||||||
|
|
||||||
const
|
const
|
||||||
{
|
{
|
||||||
* @def APR_INET
|
* @def APR_INET
|
||||||
@ -126,6 +136,11 @@ const
|
|||||||
#define APR_UNSPEC 0
|
#define APR_UNSPEC 0
|
||||||
#endif
|
#endif
|
||||||
#if APR_HAVE_IPV6
|
#if APR_HAVE_IPV6
|
||||||
|
|
||||||
|
/** @def APR_INET6
|
||||||
|
* IPv6 Address Family. Not all platforms may have this defined.
|
||||||
|
*/
|
||||||
|
|
||||||
#define APR_INET6 AF_INET6
|
#define APR_INET6 AF_INET6
|
||||||
#endif}
|
#endif}
|
||||||
|
|
||||||
@ -198,6 +213,11 @@ type
|
|||||||
{$ifdef APR_HAVE_IPV6}
|
{$ifdef APR_HAVE_IPV6}
|
||||||
{ IPv6 sockaddr structure }
|
{ IPv6 sockaddr structure }
|
||||||
1: (sin6: sockaddr_in6);
|
1: (sin6: sockaddr_in6);
|
||||||
|
{$endif}
|
||||||
|
{$ifdef APR_HAVE_SA_STORAGE}
|
||||||
|
{ Placeholder to ensure that the size of this union is not
|
||||||
|
* dependent on whether APR_HAVE_IPV6 is defined. }
|
||||||
|
2: (sas: sockaddr_storage);
|
||||||
{$endif}
|
{$endif}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -215,8 +235,6 @@ type
|
|||||||
port: apr_port_t;
|
port: apr_port_t;
|
||||||
{ The family }
|
{ The family }
|
||||||
family: apr_int32_t;
|
family: apr_int32_t;
|
||||||
{ Union of either IPv4 or IPv6 sockaddr. }
|
|
||||||
sa: sa_t;
|
|
||||||
{ How big is the sockaddr we're using? }
|
{ How big is the sockaddr we're using? }
|
||||||
salen: apr_socklen_t;
|
salen: apr_socklen_t;
|
||||||
{ How big is the ip address structure we're using? }
|
{ How big is the ip address structure we're using? }
|
||||||
@ -230,6 +248,8 @@ type
|
|||||||
{ If multiple addresses were found by apr_sockaddr_info_get(), this
|
{ If multiple addresses were found by apr_sockaddr_info_get(), this
|
||||||
* points to a representation of the next address. }
|
* points to a representation of the next address. }
|
||||||
next: Papr_sockaddr_t;
|
next: Papr_sockaddr_t;
|
||||||
|
{ Union of either IPv4 or IPv6 sockaddr. }
|
||||||
|
sa: sa_t;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{$ifdef APR_HAS_SENDFILE}
|
{$ifdef APR_HAS_SENDFILE}
|
||||||
@ -257,32 +277,15 @@ type
|
|||||||
|
|
||||||
{
|
{
|
||||||
* Create a socket.
|
* Create a socket.
|
||||||
* @remark With APR 1.0, this function follows the prototype
|
|
||||||
* of apr_socket_create_ex.
|
|
||||||
* @param new_sock The new socket that has been set up.
|
* @param new_sock The new socket that has been set up.
|
||||||
* @param family The address family of the socket (e.g., APR_INET).
|
* @param family The address family of the socket (e.g., APR_INET).
|
||||||
* @param type The type of the socket (e.g., SOCK_STREAM).
|
* @param type The type of the socket (e.g., SOCK_STREAM).
|
||||||
* @param cont The pool to use
|
* @param cont The pool to use
|
||||||
}
|
}
|
||||||
function apr_socket_create(new_sock: PPapr_socket_t;
|
function apr_socket_create(new_sock: PPapr_socket_t;
|
||||||
family, type_: Integer; cont: Papr_pool_t): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_create' + LibSuff16;
|
|
||||||
|
|
||||||
{
|
|
||||||
* Create a socket.
|
|
||||||
* @remark With APR 1.0, this function is deprecated and apr_socket_create
|
|
||||||
* follows this prototype.
|
|
||||||
* @param new_sock The new socket that has been set up.
|
|
||||||
* @param family The address family of the socket (e.g., APR_INET).
|
|
||||||
* @param type The type of the socket (e.g., SOCK_STREAM).
|
|
||||||
* @param protocol The protocol of the socket (e.g., APR_PROTO_TCP).
|
|
||||||
* @param cont The pool to use
|
|
||||||
}
|
|
||||||
function apr_socket_create_ex(new_sock: PPapr_socket_t;
|
|
||||||
family, type_, protocol: Integer; cont: Papr_pool_t): apr_status_t;
|
family, type_, protocol: Integer; cont: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_create_ex' + LibSuff20;
|
external LibAPR name LibNamePrefix + 'apr_socket_create' + LibSuff20;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Shutdown either reading, writing, or both sides of a socket.
|
* Shutdown either reading, writing, or both sides of a socket.
|
||||||
@ -302,12 +305,6 @@ function apr_socket_shutdown(thesocket: Papr_socket_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_shutdown' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_socket_shutdown' + LibSuff8;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_shutdown }
|
|
||||||
function apr_shutdown(thesocket: Papr_socket_t;
|
|
||||||
how: apr_shutdown_how_e): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_shutdown' + LibSuff8;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Close a socket.
|
* Close a socket.
|
||||||
* @param thesocket The socket to close
|
* @param thesocket The socket to close
|
||||||
@ -328,12 +325,6 @@ function apr_socket_bind(sock: Papr_socket_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_bind' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_socket_bind' + LibSuff8;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_bind }
|
|
||||||
function apr_bind(sock: Papr_socket_t;
|
|
||||||
sa: Papr_sockaddr_t): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_bind' + LibSuff8;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Listen to a bound socket for connections.
|
* Listen to a bound socket for connections.
|
||||||
* @param sock The socket to listen on
|
* @param sock The socket to listen on
|
||||||
@ -346,12 +337,6 @@ function apr_socket_listen(sock: Papr_socket_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_listen' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_socket_listen' + LibSuff8;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_listen }
|
|
||||||
function apr_listen(sock: Papr_socket_t;
|
|
||||||
backlog: apr_int32_t): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_listen' + LibSuff8;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Accept a new connection request
|
* Accept a new connection request
|
||||||
* @param new_sock A copy of the socket that is connected to the socket that
|
* @param new_sock A copy of the socket that is connected to the socket that
|
||||||
@ -365,11 +350,6 @@ function apr_socket_accept(new_sock: PPapr_socket_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_accept' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_socket_accept' + LibSuff12;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_accept }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_accept(apr_socket_t **new_sock,
|
|
||||||
apr_socket_t *sock,
|
|
||||||
apr_pool_t *connection_pool);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Issue a connection request to a socket either on the same machine
|
* Issue a connection request to a socket either on the same machine
|
||||||
* or a different one.
|
* or a different one.
|
||||||
@ -382,9 +362,6 @@ function apr_socket_connect(sock: Papr_socket_t; sa: Papr_sockaddr_t): apr_statu
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_connect' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_socket_connect' + LibSuff8;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_connect }
|
|
||||||
//APR_DECLARE(apr_status_t) apr_connect(apr_socket_t *sock, apr_sockaddr_t *sa);
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Create apr_sockaddr_t from hostname, address family, and port.
|
* Create apr_sockaddr_t from hostname, address family, and port.
|
||||||
* @param sa The new apr_sockaddr_t.
|
* @param sa The new apr_sockaddr_t.
|
||||||
@ -518,10 +495,6 @@ function apr_socket_send(sock: Papr_socket_t; const buf: PChar;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_send' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_socket_send' + LibSuff12;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_send }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_send(apr_socket_t *sock, const char *buf,
|
|
||||||
apr_size_t *len);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Send multiple packets of data over a network.
|
* Send multiple packets of data over a network.
|
||||||
* @param sock The socket to send the data over.
|
* @param sock The socket to send the data over.
|
||||||
@ -544,11 +517,6 @@ function apr_socket_sendv(sock: Papr_socket_t; const vec: Piovec;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_sendv' + LibSuff16;
|
external LibAPR name LibNamePrefix + 'apr_socket_sendv' + LibSuff16;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_sendv }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_sendv(apr_socket_t *sock,
|
|
||||||
const struct iovec *vec,
|
|
||||||
apr_int32_t nvec, apr_size_t *len);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* @param sock The socket to send from
|
* @param sock The socket to send from
|
||||||
* @param where The apr_sockaddr_t describing where to send the data
|
* @param where The apr_sockaddr_t describing where to send the data
|
||||||
@ -561,11 +529,6 @@ function apr_socket_sendto(sock: Papr_socket_t; where: Papr_sockaddr_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_sendto' + LibSuff20;
|
external LibAPR name LibNamePrefix + 'apr_socket_sendto' + LibSuff20;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_sendto }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_sendto(apr_socket_t *sock, apr_sockaddr_t *where,
|
|
||||||
apr_int32_t flags, const char *buf,
|
|
||||||
apr_size_t *len);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* @param from The apr_sockaddr_t to fill in the recipient info
|
* @param from The apr_sockaddr_t to fill in the recipient info
|
||||||
* @param sock The socket to use
|
* @param sock The socket to use
|
||||||
@ -578,11 +541,6 @@ function apr_socket_recvfrom(from: Papr_sockaddr_t; sock: Papr_socket_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_recvfrom' + LibSuff20;
|
external LibAPR name LibNamePrefix + 'apr_socket_recvfrom' + LibSuff20;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_recvfrom }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_recvfrom(apr_sockaddr_t *from, apr_socket_t *sock,
|
|
||||||
apr_int32_t flags, char *buf,
|
|
||||||
apr_size_t *len);}
|
|
||||||
|
|
||||||
{$if defined(APR_HAS_SENDFILE) or defined(DOXYGEN)}
|
{$if defined(APR_HAS_SENDFILE) or defined(DOXYGEN)}
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -606,11 +564,6 @@ function apr_socket_sendfile(sock: Papr_socket_t; file_: Papr_file_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_sendfile' + LibSuff24;
|
external LibAPR name LibNamePrefix + 'apr_socket_sendfile' + LibSuff24;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_sendfile }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_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);}
|
|
||||||
|
|
||||||
{$endif} { APR_HAS_SENDFILE }
|
{$endif} { APR_HAS_SENDFILE }
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -635,10 +588,6 @@ function apr_socket_recv(sock: Papr_socket_t; buf: PChar; len: Papr_size_t): apr
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_recv' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_socket_recv' + LibSuff12;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_recv }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_recv(apr_socket_t *sock,
|
|
||||||
char *buf, apr_size_t *len);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Setup socket options for the specified socket
|
* Setup socket options for the specified socket
|
||||||
* @param sock The socket to set up.
|
* @param sock The socket to set up.
|
||||||
@ -648,6 +597,11 @@ function apr_socket_recv(sock: Papr_socket_t; buf: PChar; len: Papr_size_t): apr
|
|||||||
* APR_SO_KEEPALIVE -- keep connections active
|
* APR_SO_KEEPALIVE -- keep connections active
|
||||||
* APR_SO_LINGER -- lingers on close if data is present
|
* APR_SO_LINGER -- lingers on close if data is present
|
||||||
* APR_SO_NONBLOCK -- Turns blocking on/off for socket
|
* APR_SO_NONBLOCK -- Turns blocking on/off for socket
|
||||||
|
* When this option is enabled, use
|
||||||
|
* the APR_STATUS_IS_EAGAIN() macro to
|
||||||
|
* see if a send or receive function
|
||||||
|
* could not transfer data without
|
||||||
|
* blocking.
|
||||||
* APR_SO_REUSEADDR -- The rules used in validating addresses
|
* APR_SO_REUSEADDR -- The rules used in validating addresses
|
||||||
* supplied to bind should allow reuse
|
* supplied to bind should allow reuse
|
||||||
* of local addresses.
|
* of local addresses.
|
||||||
@ -660,10 +614,6 @@ function apr_socket_opt_set(sock: Papr_socket_t; opt, on_: apr_int32_t): apr_sta
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_opt_set' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_socket_opt_set' + LibSuff12;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_opt_set }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_setsocketopt(apr_socket_t *sock,
|
|
||||||
apr_int32_t opt, apr_int32_t on);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Setup socket timeout for the specified socket
|
* Setup socket timeout for the specified socket
|
||||||
* @param sock The socket to set up.
|
* @param sock The socket to set up.
|
||||||
@ -702,10 +652,6 @@ function apr_socket_opt_get(sock: Papr_socket_t; opt, on_: apr_int32_t): apr_sta
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_opt_get' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_socket_opt_get' + LibSuff12;
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_opt_set }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_getsocketopt(apr_socket_t *sock,
|
|
||||||
apr_int32_t opt, apr_int32_t *on);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Query socket timeout for the specified socket
|
* Query socket timeout for the specified socket
|
||||||
* @param sock The socket to query
|
* @param sock The socket to query
|
||||||
@ -736,37 +682,6 @@ function apr_socket_addr_get(sa: PPapr_sockaddr_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_addr_get' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_socket_addr_get' + LibSuff12;
|
||||||
|
|
||||||
{
|
|
||||||
* Set the port in an APR socket address.
|
|
||||||
* @param sockaddr The socket address to set.
|
|
||||||
* @param port The port to be stored in the socket address.
|
|
||||||
* @deprecated @see apr_sockaddr_info_get
|
|
||||||
}
|
|
||||||
function apr_sockaddr_port_set(sockaddr: Papr_sockaddr_t; port: apr_port_t): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_sockaddr_port_set' + LibSuff8;
|
|
||||||
|
|
||||||
{
|
|
||||||
* Return the port in an APR socket address.
|
|
||||||
* @param port The port from the socket address.
|
|
||||||
* @param sockaddr The socket address to reference.
|
|
||||||
* @deprecated Access port field directly.
|
|
||||||
}
|
|
||||||
function apr_sockaddr_port_get(port: Papr_port_t; sockaddr: Papr_sockaddr_t): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_sockaddr_port_get' + LibSuff8;
|
|
||||||
|
|
||||||
{
|
|
||||||
* Set the IP address in an APR socket address.
|
|
||||||
* @param sockaddr The socket address to use
|
|
||||||
* @param addr The IP address to attach to the socket.
|
|
||||||
* Use APR_ANYADDR to use any IP addr on the machine.
|
|
||||||
* @deprecated @see apr_sockaddr_info_get
|
|
||||||
}
|
|
||||||
function apr_sockaddr_ip_set(sockaddr: Papr_sockaddr_t; const addr: PChar): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_sockaddr_ip_set' + LibSuff8;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Return the IP address (in numeric address string format) in
|
* Return the IP address (in numeric address string format) in
|
||||||
* an APR socket address. APR will allocate storage for the IP address
|
* an APR socket address. APR will allocate storage for the IP address
|
||||||
@ -792,23 +707,14 @@ function apr_sockaddr_equal(const addr1, addr2: Papr_sockaddr_t): Integer;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_sockaddr_equal' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_sockaddr_equal' + LibSuff8;
|
||||||
|
|
||||||
{$if defined(APR_FILES_AS_SOCKETS) or defined(DOXYGEN)}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Convert a File type to a socket so that it can be used in a poll operation.
|
* Return the type of the socket.
|
||||||
* @param newsock the newly created socket which represents a file.
|
* @param sock The socket to query.
|
||||||
* @param file the file to mask as a socket.
|
* @param type The returned type (e.g., SOCK_STREAM).
|
||||||
* @warning This is not available on all platforms. Platforms that have the
|
|
||||||
* ability to poll files for data to be read/written/exceptions will
|
|
||||||
* have the APR_FILES_AS_SOCKETS macro defined as true.
|
|
||||||
* @deprecated This function has been deprecated, because of the new poll
|
|
||||||
* implementation.
|
|
||||||
}
|
}
|
||||||
function apr_socket_from_file(newsock: Papr_socket_t; file_: Papr_file_t): apr_status_t;
|
function apr_socket_type_get(sock: Papr_socket_t; type_: PInteger): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_connect' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_socket_type_get' + LibSuff8;
|
||||||
|
|
||||||
{$endif} { APR_FILES_AS_SOCKETS }
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Given an apr_sockaddr_t and a service name, set the port for the service
|
* Given an apr_sockaddr_t and a service name, set the port for the service
|
||||||
@ -866,19 +772,80 @@ function apr_socket_protocol_get(sock: Papr_socket_t; protocol: PInteger): apr_s
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_socket_protocol_get' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_socket_protocol_get' + LibSuff8;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Get the pool used by the socket.
|
||||||
|
}
|
||||||
|
//APR_POOL_DECLARE_ACCESSOR(socket);
|
||||||
|
|
||||||
{
|
{
|
||||||
* Set a socket to be inherited by child processes.
|
* Set a socket to be inherited by child processes.
|
||||||
}
|
}
|
||||||
//APR_DECLARE_INHERIT_SET(socket);
|
//APR_DECLARE_INHERIT_SET(socket);
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_inherit_set }
|
|
||||||
{APR_DECLARE(void) apr_socket_set_inherit(apr_socket_t *skt);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Unset a socket from being inherited by child processes.
|
* Unset a socket from being inherited by child processes.
|
||||||
}
|
}
|
||||||
//APR_DECLARE_INHERIT_UNSET(socket);
|
//APR_DECLARE_INHERIT_UNSET(socket);
|
||||||
|
|
||||||
{ @deprecated @see apr_socket_inherit_unset }
|
{
|
||||||
{APR_DECLARE(void) apr_socket_unset_inherit(apr_socket_t *skt);}
|
* @defgroup apr_mcast IP Multicast
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
* Join a Multicast Group
|
||||||
|
* @param sock The socket to join a multicast group
|
||||||
|
* @param join The address of the multicast group to join
|
||||||
|
* @param iface Address of the interface to use. If NULL is passed, the
|
||||||
|
* default multicast interface will be used. (OS Dependent)
|
||||||
|
* @param source Source Address to accept transmissions from (non-NULL
|
||||||
|
* implies Source-Specific Multicast)
|
||||||
|
}
|
||||||
|
function apr_mcast_join(sock: Papr_socket_t;
|
||||||
|
join, iface, source: Papr_sockaddr_t): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_mcast_join' + LibSuff16;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Leave a Multicast Group. All arguments must be the same as
|
||||||
|
* apr_mcast_join.
|
||||||
|
* @param sock The socket to leave a multicast group
|
||||||
|
* @param addr The address of the multicast group to leave
|
||||||
|
* @param iface Address of the interface to use. If NULL is passed, the
|
||||||
|
* default multicast interface will be used. (OS Dependent)
|
||||||
|
* @param source Source Address to accept transmissions from (non-NULL
|
||||||
|
* implies Source-Specific Multicast)
|
||||||
|
}
|
||||||
|
function apr_mcast_leave(sock: Papr_socket_t;
|
||||||
|
addr, iface, source: Papr_sockaddr_t): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_mcast_leave' + LibSuff16;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Set the Multicast Time to Live (ttl) for a multicast transmission.
|
||||||
|
* @param sock The socket to set the multicast ttl
|
||||||
|
* @param ttl Time to live to Assign. 0-255, default=1
|
||||||
|
* @remark If the TTL is 0, packets will only be seen by sockets on
|
||||||
|
* the local machine, and only when multicast loopback is enabled.
|
||||||
|
}
|
||||||
|
function apr_mcast_hops(sock: Papr_socket_t; ttl: apr_byte_t): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_mcast_hops' + LibSuff8;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Toggle IP Multicast Loopback
|
||||||
|
* @param sock The socket to set multicast loopback
|
||||||
|
* @param opt 0=disable, 1=enable
|
||||||
|
}
|
||||||
|
function apr_mcast_loopback(sock: Papr_socket_t; opt: apr_byte_t): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_mcast_loopback' + LibSuff8;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Set the Interface to be used for outgoing Multicast Transmissions.
|
||||||
|
* @param sock The socket to set the multicast interface on
|
||||||
|
* @param iface Address of the interface to use for Multicast
|
||||||
|
}
|
||||||
|
function apr_mcast_interface(sock: Papr_socket_t; iface: Papr_sockaddr_t): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_mcast_interface' + LibSuff8;
|
||||||
|
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
|
|
||||||
{#include "apr.h"
|
{#include "apr.h"
|
||||||
#include "apr_errno.h"
|
#include "apr_errno.h"
|
||||||
#include "apr_general.h"{ { for APR_STRINGIFY }
|
#include "apr_general.h" for APR_STRINGIFY }
|
||||||
//#include "apr_want.h"
|
//#include "apr_want.h"
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -88,7 +88,7 @@ type
|
|||||||
* <pre>
|
* <pre>
|
||||||
* | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|
* | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|
||||||
* ---------------------------------
|
* ---------------------------------
|
||||||
* | | | | | | | | x | General debug code enabled (usefull in
|
* | | | | | | | | x | General debug code enabled (useful in
|
||||||
* combination with --with-efence).
|
* combination with --with-efence).
|
||||||
*
|
*
|
||||||
* | | | | | | | x | | Verbose output on stderr (report
|
* | | | | | | | x | | Verbose output on stderr (report
|
||||||
@ -117,15 +117,17 @@ type
|
|||||||
* If level 0 was specified, debugging is switched off
|
* If level 0 was specified, debugging is switched off
|
||||||
* </pre>
|
* </pre>
|
||||||
}
|
}
|
||||||
{#if defined(APR_POOL_DEBUG)
|
{$ifdef APR_POOL_DEBUG}
|
||||||
#if (APR_POOL_DEBUG != 0) && (APR_POOL_DEBUG - 0 == 0)
|
{/* If APR_POOL_DEBUG is blank, we get 1; if it is a number, we get -1. */
|
||||||
|
#if (APR_POOL_DEBUG - APR_POOL_DEBUG -1 == 1)
|
||||||
#undef APR_POOL_DEBUG
|
#undef APR_POOL_DEBUG
|
||||||
#define APR_POOL_DEBUG 1
|
#define APR_POOL_DEBUG 1
|
||||||
#endif
|
#endif}
|
||||||
#else
|
{$else}
|
||||||
#define APR_POOL_DEBUG 0
|
const
|
||||||
#endif
|
APR_POOL_DEBUG = 0;
|
||||||
}
|
{$endif}
|
||||||
|
|
||||||
{ the place in the code where the particular function was called }
|
{ the place in the code where the particular function was called }
|
||||||
//#define APR_POOL__FILE_LINE__ __FILE__ ":" APR_STRINGIFY(__LINE__)
|
//#define APR_POOL__FILE_LINE__ __FILE__ ":" APR_STRINGIFY(__LINE__)
|
||||||
|
|
||||||
@ -237,17 +239,6 @@ function apr_pool_create(newpool: PPapr_pool_t; parent: Papr_pool_t): apr_status
|
|||||||
{.$endif}
|
{.$endif}
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
{ @deprecated @see apr_pool_create_ex }
|
|
||||||
{#if APR_POOL_DEBUG
|
|
||||||
#define apr_pool_sub_make(newpool, parent, abort_fn) \
|
|
||||||
(void)apr_pool_create_ex_debug(newpool, parent, abort_fn, \
|
|
||||||
NULL, \
|
|
||||||
APR_POOL__FILE_LINE__)
|
|
||||||
#else}
|
|
||||||
function apr_pool_sub_make(newpool: PPapr_pool_t; parent: Papr_pool_t;
|
|
||||||
abort_fn: apr_abortfunc_t): apr_status_t;
|
|
||||||
//#endif
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Find the pools allocator
|
* Find the pools allocator
|
||||||
* @param pool The pool to get the allocator from.
|
* @param pool The pool to get the allocator from.
|
||||||
@ -404,10 +395,6 @@ procedure apr_pool_abort_set(abortfunc: apr_abortfunc_t; pool: Papr_pool_t);
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_pool_abort_set' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_pool_abort_set' + LibSuff8;
|
||||||
|
|
||||||
{ @deprecated @see apr_pool_abort_set }
|
|
||||||
{APR_DECLARE(void) apr_pool_set_abort(apr_abortfunc_t abortfunc,
|
|
||||||
apr_pool_t *pool);
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
* Get the abort function associated with the specified pool.
|
* Get the abort function associated with the specified pool.
|
||||||
* @param pool The pool for retrieving the abort function.
|
* @param pool The pool for retrieving the abort function.
|
||||||
@ -417,9 +404,6 @@ function apr_pool_abort_get(pool: Papr_pool_t): apr_abortfunc_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_pool_abort_get' + LibSuff4;
|
external LibAPR name LibNamePrefix + 'apr_pool_abort_get' + LibSuff4;
|
||||||
|
|
||||||
{ @deprecated @see apr_pool_abort_get }
|
|
||||||
//APR_DECLARE(apr_abortfunc_t) apr_pool_get_abort(apr_pool_t *pool);
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Get the parent pool of the specified pool.
|
* Get the parent pool of the specified pool.
|
||||||
* @param pool The pool for retrieving the parent pool.
|
* @param pool The pool for retrieving the parent pool.
|
||||||
@ -429,15 +413,16 @@ function apr_pool_parent_get(pool: Papr_pool_t): Papr_pool_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_pool_parent_get' + LibSuff4;
|
external LibAPR name LibNamePrefix + 'apr_pool_parent_get' + LibSuff4;
|
||||||
|
|
||||||
{ @deprecated @see apr_pool_parent_get }
|
|
||||||
//APR_DECLARE(apr_pool_t *) apr_pool_get_parent(apr_pool_t *pool);
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Determine if pool a is an ancestor of pool b
|
* Determine if pool a is an ancestor of pool b.
|
||||||
* @param a The pool to search
|
* @param a The pool to search
|
||||||
* @param b The pool to search for
|
* @param b The pool to search for
|
||||||
* @return True if a is an ancestor of b, NULL is considered an ancestor
|
* @return True if a is an ancestor of b, NULL is considered an ancestor
|
||||||
* of all pools.
|
* of all pools.
|
||||||
|
* @remark if compiled with APR_POOL_DEBUG, this function will also
|
||||||
|
* return true if A is a pool which has been guaranteed by the caller
|
||||||
|
* (using apr_pool_join) to have a lifetime at least as long as some
|
||||||
|
* ancestor of pool B.
|
||||||
}
|
}
|
||||||
function apr_pool_is_ancestor(a, b: Papr_pool_t): Integer;
|
function apr_pool_is_ancestor(a, b: Papr_pool_t): Integer;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
@ -519,10 +504,16 @@ function apr_pool_userdata_get(data: PPointer; const key: PChar;
|
|||||||
external LibAPR name LibNamePrefix + 'apr_pool_userdata_get' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_pool_userdata_get' + LibSuff12;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Cleanup
|
* @defgroup PoolCleanup Pool Cleanup Functions
|
||||||
*
|
*
|
||||||
* Cleanups are performed in the reverse order they were registered. That is:
|
* Cleanups are performed in the reverse order they were registered. That is:
|
||||||
* Last In, First Out.
|
* Last In, First Out. A cleanup function can safely allocate memory from
|
||||||
|
* the pool that is being cleaned up. It can also safely register additional
|
||||||
|
* cleanups which will be run LIFO, directly after the current cleanup
|
||||||
|
* terminates. Cleanups have to take caution in calling functions that
|
||||||
|
* create subpools. Subpools, created during cleanup will NOT automatically
|
||||||
|
* be cleaned up. In other words, cleanups are to clean up after themselves.
|
||||||
|
*
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -531,8 +522,8 @@ function apr_pool_userdata_get(data: PPointer; const key: PChar;
|
|||||||
* @param data The data to pass to the cleanup function.
|
* @param data The data to pass to the cleanup function.
|
||||||
* @param plain_cleanup The function to call when the pool is cleared
|
* @param plain_cleanup The function to call when the pool is cleared
|
||||||
* or destroyed
|
* or destroyed
|
||||||
* @param child_cleanup The function to call when a child process is being
|
* @param child_cleanup The function to call when a child process is about
|
||||||
* shutdown - this function is called in the child, obviously!
|
* to exec - this function is called in the child, obviously!
|
||||||
}
|
}
|
||||||
type
|
type
|
||||||
plain_cleanup_t = function(param: Pointer): apr_status_t; cdecl;
|
plain_cleanup_t = function(param: Pointer): apr_status_t; cdecl;
|
||||||
@ -578,9 +569,13 @@ procedure apr_pool_cleanup_register(p: Papr_pool_t;
|
|||||||
apr_status_t child_cleanup)(void );
|
apr_status_t child_cleanup)(void );
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
* Run the specified cleanup function immediately and unregister it. Use
|
* Run the specified cleanup function immediately and unregister it.
|
||||||
* @a data instead of the data that was registered with the cleanup.
|
*
|
||||||
* @param p The pool remove the cleanup from
|
* The cleanup most recently registered with @a p having the same values of
|
||||||
|
* @a data and @a cleanup will be removed and @a cleanup will be called
|
||||||
|
* with @a data as the argument.
|
||||||
|
*
|
||||||
|
* @param p The pool to remove the cleanup from
|
||||||
* @param data The data to remove from cleanup
|
* @param data The data to remove from cleanup
|
||||||
* @param cleanup The function to remove from cleanup
|
* @param cleanup The function to remove from cleanup
|
||||||
}
|
}
|
||||||
@ -594,17 +589,19 @@ procedure apr_pool_cleanup_register(p: Papr_pool_t;
|
|||||||
apr_status_t cleanup)(void );}
|
apr_status_t cleanup)(void );}
|
||||||
|
|
||||||
{
|
{
|
||||||
* An empty cleanup function
|
* An empty cleanup function.
|
||||||
* @param data The data to cleanup
|
*
|
||||||
|
* Passed to apr_pool_cleanup_register() when no cleanup is required.
|
||||||
|
*
|
||||||
|
* @param data The data to cleanup, will not be used by this function.
|
||||||
}
|
}
|
||||||
//APR_DECLARE_NONSTD(apr_status_t) apr_pool_cleanup_null(void *data);
|
//APR_DECLARE_NONSTD(apr_status_t) apr_pool_cleanup_null(void *data);
|
||||||
|
|
||||||
{ Preparing for exec() --- close files, etc., but *don't* flush I/O
|
|
||||||
* buffers, *don't* wait for subprocesses, and *don't* free any memory.
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
* Run all of the child_cleanups, so that any unnecessary files are
|
* Run all registered child cleanups, in preparation for an exec()
|
||||||
* closed because we are about to exec a new program
|
* call in a forked child -- close files, etc., but *don't* flush I/O
|
||||||
|
* buffers, *don't* wait for subprocesses, and *don't* free any
|
||||||
|
* memory.
|
||||||
}
|
}
|
||||||
procedure apr_pool_cleanup_for_exec;
|
procedure apr_pool_cleanup_for_exec;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
@ -639,16 +636,14 @@ procedure apr_pool_cleanup_for_exec;
|
|||||||
* structures.
|
* structures.
|
||||||
*
|
*
|
||||||
* However, sometimes this ancestor requirement is inconvenient --
|
* However, sometimes this ancestor requirement is inconvenient --
|
||||||
* sometimes we're forced to create a sub pool (such as through
|
* sometimes it's necessary to create a sub pool where the sub pool is
|
||||||
* apr_sub_req_lookup_uri), and the sub pool is guaranteed to have
|
* guaranteed to have the same lifetime as the parent pool. This is a
|
||||||
* the same lifetime as the parent pool. This is a guarantee implemented
|
* guarantee implemented by the *caller*, not by the pool code. That
|
||||||
* by the *caller*, not by the pool code. That is, the caller guarantees
|
* is, the caller guarantees they won't destroy the sub pool
|
||||||
* they won't destroy the sub pool individually prior to destroying the
|
* individually prior to destroying the parent pool.
|
||||||
* parent pool.
|
|
||||||
*
|
*
|
||||||
* In this case the caller must call apr_pool_join() to indicate this
|
* In this case the caller must call apr_pool_join() to indicate this
|
||||||
* guarantee to the APR_POOL_DEBUG code. There are a few examples spread
|
* guarantee to the APR_POOL_DEBUG code.
|
||||||
* through the standard modules.
|
|
||||||
*
|
*
|
||||||
* These functions are only implemented when #APR_POOL_DEBUG is set.
|
* These functions are only implemented when #APR_POOL_DEBUG is set.
|
||||||
*
|
*
|
||||||
|
@ -192,9 +192,7 @@ typedef void* apr_os_shm_t; {< native SHM }
|
|||||||
remote: Psockaddr; {< NULL if not connected }
|
remote: Psockaddr; {< NULL if not connected }
|
||||||
family: Integer; {< always required (APR_INET, APR_INET6, etc.) }
|
family: Integer; {< always required (APR_INET, APR_INET6, etc.) }
|
||||||
type_: Integer; {< always required (SOCK_STREAM, SOCK_DGRAM, etc.) }
|
type_: Integer; {< always required (SOCK_STREAM, SOCK_DGRAM, etc.) }
|
||||||
{$ifdef APR_ENABLE_FOR_1_0} {< enable with APR 1.0 }
|
|
||||||
protocol: Integer; {< 0 or actual protocol (APR_PROTO_SCTP, APR_PROTO_TCP, etc.) }
|
protocol: Integer; {< 0 or actual protocol (APR_PROTO_SCTP, APR_PROTO_TCP, etc.) }
|
||||||
{$endif}
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
Papr_os_sock_info_t = ^apr_os_sock_info_t;
|
Papr_os_sock_info_t = ^apr_os_sock_info_t;
|
||||||
|
@ -75,11 +75,6 @@ function apr_signal_description_get(signo: Integer): PChar;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_signal_description_get' + LibSuff4;
|
external LibAPR name LibNamePrefix + 'apr_signal_description_get' + LibSuff4;
|
||||||
|
|
||||||
{ @deprecated @see apr_signal_description_get }
|
|
||||||
function apr_signal_get_description(signo: Integer): PChar;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_signal_get_description' + LibSuff4;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* APR-private function for initializing the signal package
|
* APR-private function for initializing the signal package
|
||||||
* @internal
|
* @internal
|
||||||
@ -87,4 +82,22 @@ function apr_signal_get_description(signo: Integer): PChar;
|
|||||||
}
|
}
|
||||||
//void apr_signal_init(apr_pool_t *pglobal);
|
//void apr_signal_init(apr_pool_t *pglobal);
|
||||||
|
|
||||||
|
{
|
||||||
|
* Block the delivery of a particular signal
|
||||||
|
* @param signum The signal number
|
||||||
|
* @return status
|
||||||
|
}
|
||||||
|
function apr_signal_block(signum: Integer): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_signal_block' + LibSuff4;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Enable the delivery of a particular signal
|
||||||
|
* @param signum The signal number
|
||||||
|
* @return status
|
||||||
|
}
|
||||||
|
function apr_signal_unblock(signum: Integer): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_signal_unblock' + LibSuff4;
|
||||||
|
|
||||||
{$endif}
|
{$endif}
|
||||||
|
@ -178,22 +178,25 @@ function apr_psprintf(p: Papr_pool_t; const fmt: PChar; others: array of const):
|
|||||||
cdecl; external LibAPR name 'apr_psprintf';
|
cdecl; external LibAPR name 'apr_psprintf';
|
||||||
|
|
||||||
{
|
{
|
||||||
* copy n characters from src to dst
|
* Copy up to dst_size characters from src to dst; does not copy
|
||||||
|
* past a NUL terminator in src, but always terminates dst with a NUL
|
||||||
|
* regardless.
|
||||||
* @param dst The destination string
|
* @param dst The destination string
|
||||||
* @param src The source string
|
* @param src The source string
|
||||||
* @param dst_size The space available in dst; dst always receives
|
* @param dst_size The space available in dst; dst always receives
|
||||||
* null-termination, so if src is longer than
|
* NUL termination, so if src is longer than
|
||||||
* dst_size, the actual number of characters copied is
|
* dst_size, the actual number of characters copied is
|
||||||
* dst_size - 1.
|
* dst_size - 1.
|
||||||
|
* @return Pointer to the NUL terminator of the destination string, dst
|
||||||
* @remark
|
* @remark
|
||||||
* <PRE>
|
* <PRE>
|
||||||
* We re-implement this function to implement these specific changes:
|
* Note the differences between this function and strncpy():
|
||||||
* 1) strncpy() doesn't always null terminate and we want it to.
|
* 1) strncpy() doesn't always NUL terminate; apr_cpystrn() does.
|
||||||
* 2) strncpy() null fills, which is bogus, esp. when copy 8byte strings
|
* 2) strncpy() pads the destination string with NULs, which is often
|
||||||
* into 8k blocks.
|
* unnecessary; apr_cpystrn() does not.
|
||||||
* 3) Instead of returning the pointer to the beginning of the
|
* 3) strncpy() returns a pointer to the beginning of the dst string;
|
||||||
* destination string, we return a pointer to the terminating null
|
* apr_cpystrn() returns a pointer to the NUL terminator of dst,
|
||||||
* to allow us to check for truncation.
|
* to allow a check for truncation.
|
||||||
* </PRE>
|
* </PRE>
|
||||||
}
|
}
|
||||||
function apr_cpystrn(dst: PChar; const src: PChar;
|
function apr_cpystrn(dst: PChar; const src: PChar;
|
||||||
@ -258,7 +261,6 @@ function apr_strtok(str: PChar;
|
|||||||
* the buffer had been infinite (in this case, *buffer can be NULL)
|
* the buffer had been infinite (in this case, *buffer can be NULL)
|
||||||
*
|
*
|
||||||
* In no event does apr_snprintf return a negative number.
|
* In no event does apr_snprintf return a negative number.
|
||||||
* @{
|
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -316,6 +318,25 @@ function apr_off_t_toa(p: Papr_pool_t; n: apr_off_t): PChar;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_off_t_toa' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_off_t_toa' + LibSuff12;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Convert a numeric string into an apr_off_t numeric value.
|
||||||
|
* @param offset The value of the parsed string.
|
||||||
|
* @param buf The string to parse. It may contain optional whitespace,
|
||||||
|
* followed by an optional '+' (positive, default) or '-' (negative)
|
||||||
|
* character, followed by an optional '0x' prefix if base is 0 or 16,
|
||||||
|
* followed by numeric digits appropriate for base.
|
||||||
|
* @param end A pointer to the end of the valid character in buf. If
|
||||||
|
* not NULL, it is set to the first invalid character in buf.
|
||||||
|
* @param base A numeric base in the range between 2 and 36 inclusive,
|
||||||
|
* or 0. If base is zero, buf will be treated as base ten unless its
|
||||||
|
* digits are prefixed with '0x', in which case it will be treated as
|
||||||
|
* base 16.
|
||||||
|
}
|
||||||
|
function apr_strtoff(offset: Papr_off_t;
|
||||||
|
const buf: PChar; end_: PPChar; base: cint): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_strtoff' + LibSuff16;
|
||||||
|
|
||||||
{
|
{
|
||||||
* parse a numeric string into a 64-bit numeric value
|
* parse a numeric string into a 64-bit numeric value
|
||||||
* @param buf The string to parse. It may contain optional whitespace,
|
* @param buf The string to parse. It may contain optional whitespace,
|
||||||
|
@ -105,7 +105,7 @@ function apr_array_make(p: Papr_pool_t;
|
|||||||
external LibAPR name LibNamePrefix + 'apr_array_make' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_array_make' + LibSuff12;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Add a new element to an array
|
* Add a new element to an array (as a first-in, last-out stack)
|
||||||
* @param arr The array to add an element to.
|
* @param arr The array to add an element to.
|
||||||
* @return Location for the new element in the array.
|
* @return Location for the new element in the array.
|
||||||
* @remark If there are no free spots in the array, then this function will
|
* @remark If there are no free spots in the array, then this function will
|
||||||
@ -116,7 +116,7 @@ function apr_array_push(arr: Papr_array_header_t): Pointer;
|
|||||||
external LibAPR name LibNamePrefix + 'apr_array_push' + LibSuff4;
|
external LibAPR name LibNamePrefix + 'apr_array_push' + LibSuff4;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Remove an element from an array
|
* Remove an element from an array (as a first-in, last-out stack)
|
||||||
* @param arr The array to remove an element from.
|
* @param arr The array to remove an element from.
|
||||||
* @return Location of the element in the array.
|
* @return Location of the element in the array.
|
||||||
* @remark If there are no elements in the array, NULL is returned.
|
* @remark If there are no elements in the array, NULL is returned.
|
||||||
@ -225,7 +225,7 @@ procedure apr_table_clear(t: Papr_table_t);
|
|||||||
* The data is still in the table
|
* The data is still in the table
|
||||||
* @param t The table to search for the key
|
* @param t The table to search for the key
|
||||||
* @param key The key to search for
|
* @param key The key to search for
|
||||||
* @return The value associated with the key
|
* @return The value associated with the key, or NULL if the key does not exist.
|
||||||
}
|
}
|
||||||
function apr_table_get(t: Papr_table_t; key: PChar): PChar;
|
function apr_table_get(t: Papr_table_t; key: PChar): PChar;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
@ -434,7 +434,7 @@ procedure apr_table_overlap(a: Papr_table_t;
|
|||||||
external LibAPR name LibNamePrefix + 'apr_table_overlap' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_table_overlap' + LibSuff12;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Eliminate redunandant entries in a table by either overwriting
|
* Eliminate redundant entries in a table by either overwriting
|
||||||
* or merging duplicates
|
* or merging duplicates
|
||||||
*
|
*
|
||||||
* @param t Table.
|
* @param t Table.
|
||||||
|
@ -239,6 +239,20 @@ function apr_threadattr_stacksize_set(new_attr: PPapr_threadattr_t; stacksize: a
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_threadattr_stacksize_set' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_threadattr_stacksize_set' + LibSuff8;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Set the stack guard area size of newly created threads.
|
||||||
|
* @param attr The threadattr to affect
|
||||||
|
* @param guardsize The stack guard area size in bytes
|
||||||
|
* @note Thread library implementations commonly use a "guard area"
|
||||||
|
* after each thread's stack which is not readable or writable such that
|
||||||
|
* stack overflows cause a segfault; this consumes e.g. 4K of memory
|
||||||
|
* and increases memory management overhead. Setting the guard area
|
||||||
|
* size to zero hence trades off reliable behaviour on stack overflow
|
||||||
|
* for performance. }
|
||||||
|
function apr_threadattr_guardsize_set(attr: Papr_threadattr_t; guardsize: apr_size_t): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_threadattr_guardsize_set' + LibSuff8;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Create a new thread of execution
|
* Create a new thread of execution
|
||||||
* @param new_thread The newly created thread handle.
|
* @param new_thread The newly created thread handle.
|
||||||
@ -566,6 +580,29 @@ function apr_procattr_addrspace_set(attr: Papr_procattr_t; addrspace: apr_int32_
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_procattr_addrspace_set' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_procattr_addrspace_set' + LibSuff8;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Set the username used for running process
|
||||||
|
* @param attr The procattr we care about.
|
||||||
|
* @param username The username used
|
||||||
|
* @param password User password if needed. Password is needed on WIN32
|
||||||
|
* or any other platform having
|
||||||
|
* APR_PROCATTR_USER_SET_REQUIRES_PASSWORD set.
|
||||||
|
}
|
||||||
|
function apr_procattr_user_set(attr: Papr_procattr_t;
|
||||||
|
const username, password: PChar): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_procattr_user_set' + LibSuff12;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Set the group used for running process
|
||||||
|
* @param attr The procattr we care about.
|
||||||
|
* @param groupname The group name used
|
||||||
|
}
|
||||||
|
function apr_procattr_group_set(attr: Papr_procattr_t;
|
||||||
|
const groupname: PChar): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPR name LibNamePrefix + 'apr_procattr_group_set' + LibSuff8;
|
||||||
|
|
||||||
{$ifdef APR_HAS_FORK}
|
{$ifdef APR_HAS_FORK}
|
||||||
{
|
{
|
||||||
* This is currently the only non-portable call in APR. This executes
|
* This is currently the only non-portable call in APR. This executes
|
||||||
@ -591,12 +628,12 @@ function apr_proc_fork(proc: Papr_proc_t; cont: Papr_pool_t): apr_status_t;
|
|||||||
* APR_SHELLCMD_ENV types of commands.
|
* APR_SHELLCMD_ENV types of commands.
|
||||||
* @param attr the procattr we should use to determine how to create the new
|
* @param attr the procattr we should use to determine how to create the new
|
||||||
* process
|
* process
|
||||||
* @param cont The pool to use.
|
* @param pool The pool to use.
|
||||||
}
|
}
|
||||||
function apr_proc_create(new_proc: Papr_proc_t;
|
function apr_proc_create(new_proc: Papr_proc_t;
|
||||||
const progname: PChar; args, arnv: PPChar;
|
const progname: PChar; args, arnv: PPChar;
|
||||||
attr: Papr_procattr_t;
|
attr: Papr_procattr_t;
|
||||||
cont: Papr_pool_t): apr_status_t;
|
pool: Papr_pool_t): apr_status_t;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_proc_create' + LibSuff24;
|
external LibAPR name LibNamePrefix + 'apr_proc_create' + LibSuff24;
|
||||||
|
|
||||||
@ -763,23 +800,6 @@ procedure apr_proc_other_child_refresh_all(reason: Integer);
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_proc_other_child_refresh_all' + LibSuff4;
|
external LibAPR name LibNamePrefix + 'apr_proc_other_child_refresh_all' + LibSuff4;
|
||||||
|
|
||||||
{ @deprecated @see apr_proc_other_child_refresh_all
|
|
||||||
* @remark Call apr_proc_other_child_refresh_all(APR_OC_REASON_RESTART)
|
|
||||||
* or apr_proc_other_child_refresh_all(APR_OC_REASON_RUNNING) instead.
|
|
||||||
* @bug The differing implementations of this function on Win32 (_RUNNING checks)
|
|
||||||
* and Unix (used only for _RESTART) are the reason it will be dropped with APR 1.0.
|
|
||||||
}
|
|
||||||
procedure apr_proc_other_child_check;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_proc_other_child_check' + LibSuff0;
|
|
||||||
|
|
||||||
{ @deprecated @see apr_proc_other_child_alert
|
|
||||||
* @bug This function's name had nothing to do with it's purpose
|
|
||||||
}
|
|
||||||
function apr_proc_other_child_read(proc: Papr_proc_t; status: Integer): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_proc_other_child_read' + LibSuff8;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Terminate a process.
|
* Terminate a process.
|
||||||
* @param proc The process to terminate.
|
* @param proc The process to terminate.
|
||||||
|
@ -137,12 +137,6 @@ function apr_time_exp_tz(result: Papr_time_exp_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_time_exp_tz' + LibSuff16;
|
external LibAPR name LibNamePrefix + 'apr_time_exp_tz' + LibSuff16;
|
||||||
|
|
||||||
{ @deprecated @see apr_time_exp_tz }
|
|
||||||
function apr_explode_time(result: Papr_time_exp_t;
|
|
||||||
input: apr_time_t; offs: apr_int32_t): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_explode_time' + LibSuff16;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* convert a time to its human readable components in GMT timezone
|
* convert a time to its human readable components in GMT timezone
|
||||||
* @param result the exploded time
|
* @param result the exploded time
|
||||||
@ -163,12 +157,6 @@ function apr_time_exp_lt(result: Papr_time_exp_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_time_exp_lt' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_time_exp_lt' + LibSuff12;
|
||||||
|
|
||||||
{ @deprecated @see apr_time_exp_lt }
|
|
||||||
function apr_explode_localtime(result: Papr_time_exp_t;
|
|
||||||
input: apr_time_t): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_explode_localtime' + LibSuff12;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Convert time value from human readable format to a numeric apr_time_t
|
* Convert time value from human readable format to a numeric apr_time_t
|
||||||
* e.g. elapsed usec since epoch
|
* e.g. elapsed usec since epoch
|
||||||
@ -191,12 +179,6 @@ function apr_time_exp_gmt_get(result: Papr_time_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_time_exp_gmt_get' + LibSuff8;
|
external LibAPR name LibNamePrefix + 'apr_time_exp_gmt_get' + LibSuff8;
|
||||||
|
|
||||||
{ @deprecated @see apr_time_exp_gmt_get }
|
|
||||||
function apr_implode_gmt(result: Papr_time_t;
|
|
||||||
input: Papr_time_exp_t): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPR name LibNamePrefix + 'apr_implode_gmt' + LibSuff8;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Sleep for the specified number of micro-seconds.
|
* Sleep for the specified number of micro-seconds.
|
||||||
* @param t desired amount of time to sleep.
|
* @param t desired amount of time to sleep.
|
||||||
|
@ -67,10 +67,6 @@ function apr_uid_current(userid: Papr_uid_t; groupid: Papr_gid_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_uid_current' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_uid_current' + LibSuff12;
|
||||||
|
|
||||||
{ @deprecated @see apr_uid_current }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_current_userid(apr_uid_t *userid,
|
|
||||||
apr_gid_t *groupid,
|
|
||||||
apr_pool_t *p);}
|
|
||||||
{
|
{
|
||||||
* Get the user name for a specified userid
|
* Get the user name for a specified userid
|
||||||
* @param username Pointer to new string containing user name (on output)
|
* @param username Pointer to new string containing user name (on output)
|
||||||
@ -83,9 +79,6 @@ function apr_uid_name_get(username: PPChar; userid: apr_uid_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_uid_name_get' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_uid_name_get' + LibSuff12;
|
||||||
|
|
||||||
{ @deprecated @see apr_uid_name_get }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_get_username(char **username, apr_uid_t userid,
|
|
||||||
apr_pool_t *p);}
|
|
||||||
{
|
{
|
||||||
* Get the userid (and groupid) for the specified username
|
* Get the userid (and groupid) for the specified username
|
||||||
* @param userid Returns the user id
|
* @param userid Returns the user id
|
||||||
@ -99,10 +92,6 @@ function apr_uid_get(userid: Papr_uid_t; groupid: Papr_gid_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_uid_get' + LibSuff16;
|
external LibAPR name LibNamePrefix + 'apr_uid_get' + LibSuff16;
|
||||||
|
|
||||||
{ @deprecated @see apr_uid_get }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_get_userid(apr_uid_t *userid, apr_gid_t *groupid,
|
|
||||||
const char *username, apr_pool_t *p);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Get the home directory for the named user
|
* Get the home directory for the named user
|
||||||
* @param dirname Pointer to new string containing directory name (on output)
|
* @param dirname Pointer to new string containing directory name (on output)
|
||||||
@ -115,11 +104,6 @@ function apr_uid_homepath_get(dirname: PPChar; const username: PChar;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_uid_homepath_get' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_uid_homepath_get' + LibSuff12;
|
||||||
|
|
||||||
{ @deprecated @see apr_uid_homepath_get }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_get_home_directory(char **dirname,
|
|
||||||
const char *username,
|
|
||||||
apr_pool_t *p);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Compare two user identifiers for equality.
|
* Compare two user identifiers for equality.
|
||||||
* @param left One uid to test
|
* @param left One uid to test
|
||||||
@ -131,12 +115,8 @@ function apr_uid_homepath_get(dirname: PPChar; const username: PChar;
|
|||||||
{$ifdef WIN32}
|
{$ifdef WIN32}
|
||||||
//APR_DECLARE(apr_status_t) apr_uid_compare(apr_uid_t left, apr_uid_t right);
|
//APR_DECLARE(apr_status_t) apr_uid_compare(apr_uid_t left, apr_uid_t right);
|
||||||
|
|
||||||
{ @deprecated @see apr_uid_compare }
|
|
||||||
//APR_DECLARE(apr_status_t) apr_compare_users(apr_uid_t left, apr_uid_t right);
|
|
||||||
{$else}
|
{$else}
|
||||||
//#define apr_uid_compare(left,right) (((left) == (right)) ? APR_SUCCESS : APR_EMISMATCH)
|
//#define apr_uid_compare(left,right) (((left) == (right)) ? APR_SUCCESS : APR_EMISMATCH)
|
||||||
{ @deprecated @see apr_uid_compare }
|
|
||||||
//#define apr_compare_users(left,right) (((left) == (right)) ? APR_SUCCESS : APR_EMISMATCH)
|
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -151,14 +131,6 @@ function apr_gid_name_get(groupname: PPChar; groupid: apr_gid_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_gid_name_get' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_gid_name_get' + LibSuff12;
|
||||||
|
|
||||||
{ @deprecated @see apr_gid_name_get }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_group_name_get(char **groupname,
|
|
||||||
apr_gid_t groupid, apr_pool_t *p);}
|
|
||||||
|
|
||||||
{ @deprecated @see apr_gid_name_get }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_get_groupname(char **groupname,
|
|
||||||
apr_gid_t groupid, apr_pool_t *p);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Get the groupid for a specified group name
|
* Get the groupid for a specified group name
|
||||||
* @param groupid Pointer to the group id (on output)
|
* @param groupid Pointer to the group id (on output)
|
||||||
@ -171,10 +143,6 @@ function apr_gid_get(groupid: Papr_gid_t; const groupname: PChar;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPR name LibNamePrefix + 'apr_gid_get' + LibSuff12;
|
external LibAPR name LibNamePrefix + 'apr_gid_get' + LibSuff12;
|
||||||
|
|
||||||
{ @deprecated @see apr_gid_get }
|
|
||||||
{APR_DECLARE(apr_status_t) apr_get_groupid(apr_gid_t *groupid,
|
|
||||||
const char *groupname, apr_pool_t *p);}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Compare two group identifiers for equality.
|
* Compare two group identifiers for equality.
|
||||||
* @param left One gid to test
|
* @param left One gid to test
|
||||||
@ -185,12 +153,8 @@ function apr_gid_get(groupid: Papr_gid_t; const groupname: PChar;
|
|||||||
}
|
}
|
||||||
{$ifdef WIN32}
|
{$ifdef WIN32}
|
||||||
//APR_DECLARE(apr_status_t) apr_gid_compare(apr_gid_t left, apr_gid_t right);
|
//APR_DECLARE(apr_status_t) apr_gid_compare(apr_gid_t left, apr_gid_t right);
|
||||||
{ @deprecated @see apr_gid_compare }
|
|
||||||
//APR_DECLARE(apr_status_t) apr_compare_groups(apr_gid_t left, apr_gid_t right);
|
|
||||||
{$else}
|
{$else}
|
||||||
//#define apr_gid_compare(left,right) (((left) == (right)) ? APR_SUCCESS : APR_EMISMATCH)
|
//#define apr_gid_compare(left,right) (((left) == (right)) ? APR_SUCCESS : APR_EMISMATCH)
|
||||||
{ @deprecated @see apr_gid_compare }
|
|
||||||
//#define apr_compare_groups(left,right) (((left) == (right)) ? APR_SUCCESS : APR_EMISMATCH)
|
|
||||||
{$endif}
|
{$endif}
|
||||||
|
|
||||||
{$endif} { ! APR_HAS_USER }
|
{$endif} { ! APR_HAS_USER }
|
||||||
|
@ -40,28 +40,47 @@
|
|||||||
* authoritative version numbers for APR.
|
* authoritative version numbers for APR.
|
||||||
}
|
}
|
||||||
|
|
||||||
{ major version
|
const
|
||||||
|
{ major version
|
||||||
* Major API changes that could cause compatibility problems for older
|
* Major API changes that could cause compatibility problems for older
|
||||||
* programs such as structure size changes. No binary compatibility is
|
* programs such as structure size changes. No binary compatibility is
|
||||||
* possible across a change in the major version.
|
* possible across a change in the major version.
|
||||||
}
|
}
|
||||||
const
|
APR_MAJOR_VERSION = 1;
|
||||||
APR_MAJOR_VERSION = 0;
|
|
||||||
|
|
||||||
{
|
{ minor version
|
||||||
* Minor API changes that do not cause binary compatibility problems.
|
* Minor API changes that do not cause binary compatibility problems.
|
||||||
* Should be reset to 0 when upgrading APR_MAJOR_VERSION
|
* Reset to 0 when upgrading APR_MAJOR_VERSION
|
||||||
}
|
}
|
||||||
APR_MINOR_VERSION = 9;
|
APR_MINOR_VERSION = 2;
|
||||||
|
|
||||||
{ patch level }
|
{ patch level
|
||||||
APR_PATCH_VERSION = 12;
|
* The Patch Level never includes API changes, simply bug fixes.
|
||||||
|
* Reset to 0 when upgrading APR_MINOR_VERSION
|
||||||
|
}
|
||||||
|
APR_PATCH_VERSION = 7;
|
||||||
|
|
||||||
|
{$if defined(APR_IS_DEV_VERSION) or defined(DOXYGEN)}
|
||||||
|
{ Internal: string form of the "is dev" flag }
|
||||||
|
APR_IS_DEV_STRING = '-dev';
|
||||||
|
{$else}
|
||||||
|
APR_IS_DEV_STRING = '';
|
||||||
|
{$endif}
|
||||||
|
|
||||||
|
{ APR_STRINGIFY is defined here, and also in apr_general.h, so wrap it }
|
||||||
|
{#ifndef APR_STRINGIFY
|
||||||
|
/** Properly quote a value as a string in the C preprocessor */
|
||||||
|
#define APR_STRINGIFY(n) APR_STRINGIFY_HELPER(n)
|
||||||
|
/** Helper macro for APR_STRINGIFY */
|
||||||
|
#define APR_STRINGIFY_HELPER(n) #n
|
||||||
|
#endif}
|
||||||
|
|
||||||
{
|
{
|
||||||
* This symbol is defined for internal, "development" copies of APR. This
|
* The symbol APR_IS_DEV_VERSION is only defined for internal,
|
||||||
* symbol will be #undef'd for releases.
|
* "development" copies of APR. It is undefined for released versions
|
||||||
|
* of APR.
|
||||||
}
|
}
|
||||||
{.$undef APR_IS_DEV_VERSION}
|
{$undef APR_IS_DEV_VERSION}
|
||||||
|
|
||||||
|
|
||||||
{ The formatted string of APR's version }
|
{ The formatted string of APR's version }
|
||||||
@ -71,6 +90,22 @@ const
|
|||||||
APR_STRINGIFY(APR_PATCH_VERSION) \
|
APR_STRINGIFY(APR_PATCH_VERSION) \
|
||||||
APR_IS_DEV_STRING}
|
APR_IS_DEV_STRING}
|
||||||
|
|
||||||
|
{ An alternative formatted string of APR's version }
|
||||||
|
{ macro for Win32 .rc files using numeric csv representation }
|
||||||
|
{#define APR_VERSION_STRING_CSV APR_MAJOR_VERSION ##, \
|
||||||
|
##APR_MINOR_VERSION ##, \
|
||||||
|
##APR_PATCH_VERSION}
|
||||||
|
|
||||||
|
|
||||||
|
//#ifndef APR_VERSION_ONLY
|
||||||
|
|
||||||
|
{ The C language API to access the version at run time,
|
||||||
|
* as opposed to compile time. APR_VERSION_ONLY may be defined
|
||||||
|
* externally when preprocessing apr_version.h to obtain strictly
|
||||||
|
* the C Preprocessor macro declarations.
|
||||||
|
}
|
||||||
|
|
||||||
|
//#include "apr.h"
|
||||||
|
|
||||||
{
|
{
|
||||||
* The numeric version information is broken out into fields within this
|
* The numeric version information is broken out into fields within this
|
||||||
@ -102,11 +137,5 @@ function apr_version_string: PChar;
|
|||||||
external LibAPR name LibNamePrefix + 'apr_version_string' + LibSuff0;
|
external LibAPR name LibNamePrefix + 'apr_version_string' + LibSuff0;
|
||||||
|
|
||||||
|
|
||||||
{ Internal: string form of the "is dev" flag }
|
|
||||||
{#ifdef APR_IS_DEV_VERSION
|
|
||||||
#define APR_IS_DEV_STRING "-dev"
|
|
||||||
#else}
|
|
||||||
const
|
|
||||||
APR_IS_DEV_STRING = '';
|
|
||||||
//#endif
|
//#endif
|
||||||
|
|
||||||
|
@ -60,7 +60,6 @@
|
|||||||
const
|
const
|
||||||
{ The MD5 digest size }
|
{ The MD5 digest size }
|
||||||
APR_MD5_DIGESTSIZE = 16;
|
APR_MD5_DIGESTSIZE = 16;
|
||||||
MD5_DIGESTSIZE = APR_MD5_DIGESTSIZE; {< @deprecated }
|
|
||||||
|
|
||||||
{ @see apr_md5_ctx_t }
|
{ @see apr_md5_ctx_t }
|
||||||
type
|
type
|
||||||
@ -148,7 +147,12 @@ function apr_md5_encode(const password, salt: PChar;
|
|||||||
external LibAPRUtil name LibNamePrefix + 'apr_md5_encode' + LibSuff16;
|
external LibAPRUtil name LibNamePrefix + 'apr_md5_encode' + LibSuff16;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Validate any password encypted with any algorithm that APR understands
|
* Validate hashes created by APR-supported algorithms: md5 and sha1.
|
||||||
|
* hashes created by crypt are supported only on platforms that provide
|
||||||
|
* crypt(3), so don't rely on that function unless you know that your
|
||||||
|
* application will be run only on platforms that support it. On platforms
|
||||||
|
* that don't support crypt(3), this falls back to a clear text string
|
||||||
|
* comparison.
|
||||||
* @param passwd The password to validate
|
* @param passwd The password to validate
|
||||||
* @param hash The password to validate against
|
* @param hash The password to validate against
|
||||||
}
|
}
|
||||||
|
@ -120,11 +120,6 @@ function apr_uri_port_of_scheme(const scheme_str: PChar): apr_port_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPRUtil name LibNamePrefix + 'apr_uri_port_of_scheme' + LibSuff4;
|
external LibAPRUtil name LibNamePrefix + 'apr_uri_port_of_scheme' + LibSuff4;
|
||||||
|
|
||||||
{ @deprecated @see apr_uri_port_of_scheme }
|
|
||||||
function apr_uri_default_port_for_scheme(const scheme_str: PChar): apr_port_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPRUtil name LibNamePrefix + 'apr_uri_default_port_for_scheme' + LibSuff4;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Unparse a apr_uri_t structure to an URI string. Optionally
|
* Unparse a apr_uri_t structure to an URI string. Optionally
|
||||||
* suppress the password for security reasons.
|
* suppress the password for security reasons.
|
||||||
|
@ -88,24 +88,27 @@ function apr_xlate_sb_get(convset: Papr_xlate_t; onoff: PInteger): apr_status_t;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibAPRUtil name LibNamePrefix + 'apr_xlate_sb_get' + LibSuff8;
|
external LibAPRUtil name LibNamePrefix + 'apr_xlate_sb_get' + LibSuff8;
|
||||||
|
|
||||||
{ @deprecated @see apr_xlate_sb_get }
|
|
||||||
function apr_xlate_get_sb(convset: Papr_xlate_t; onoff: PInteger): apr_status_t;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibAPRUtil name LibNamePrefix + 'apr_xlate_get_sb' + LibSuff8;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Convert a buffer of text from one codepage to another.
|
* Convert a buffer of text from one codepage to another.
|
||||||
* @param convset The handle allocated by apr_xlate_open, specifying
|
* @param convset The handle allocated by apr_xlate_open, specifying
|
||||||
* the parameters of conversion
|
* the parameters of conversion
|
||||||
* @param inbuf The address of the source buffer
|
* @param inbuf The address of the source buffer
|
||||||
* @param inbytes_left Input: the amount of input data to be translated
|
* @param inbytes_left Input: the amount of input data to be translated
|
||||||
* Output: the amount of input data not yet translated
|
* Output: the amount of input data not yet translated
|
||||||
* @param outbuf The address of the destination buffer
|
* @param outbuf The address of the destination buffer
|
||||||
* @param outbytes_left Input: the size of the output buffer
|
* @param outbytes_left Input: the size of the output buffer
|
||||||
* Output: the amount of the output buffer not yet used
|
* Output: the amount of the output buffer not yet used
|
||||||
* @remark
|
* @remark
|
||||||
* Return APR_ENOTIMPL if charset transcoding is not available
|
* Returns APR_ENOTIMPL if charset transcoding is not available
|
||||||
* in this instance of apr-util (i.e., APR_HAS_XLATE is undefined).
|
* in this instance of apr-util (i.e., APR_HAS_XLATE is undefined).
|
||||||
|
* Returns APR_INCOMPLETE if the input buffer ends in an incomplete
|
||||||
|
* multi-byte character.
|
||||||
|
*
|
||||||
|
* To correctly terminate the output buffer for some multi-byte
|
||||||
|
* character set encodings, a final call must be made to this function
|
||||||
|
* after the complete input string has been converted, passing
|
||||||
|
* the inbuf and inbytes_left parameters as NULL. (Note that this
|
||||||
|
* mode only works from version 1.1.0 onwards)
|
||||||
}
|
}
|
||||||
function apr_xlate_conv_buffer(convset: Papr_xlate_t; const inbuf: PChar;
|
function apr_xlate_conv_buffer(convset: Papr_xlate_t; const inbuf: PChar;
|
||||||
inbytes_left: Papr_size_t; outbuf: PChar; outbytes_left: Papr_size_t): apr_status_t;
|
inbytes_left: Papr_size_t; outbuf: PChar; outbytes_left: Papr_size_t): apr_status_t;
|
||||||
|
@ -26,7 +26,11 @@
|
|||||||
#include "apr_tables.h"
|
#include "apr_tables.h"
|
||||||
#include "apr_file_io.h"
|
#include "apr_file_io.h"
|
||||||
|
|
||||||
#include "apu.h"}
|
#include "apu.h"
|
||||||
|
#if APR_CHARSET_EBCDIC
|
||||||
|
#include "apr_xlate.h"
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
* @package Apache XML library
|
* @package Apache XML library
|
||||||
@ -347,3 +351,17 @@ function apr_xml_insert_uri(uri_array: Papr_array_header_t;
|
|||||||
{ Get the URI item for this XML element }
|
{ Get the URI item for this XML element }
|
||||||
//#define APR_XML_GET_URI_ITEM(ary, i) (((const char * const *)(ary)->elts)[i])
|
//#define APR_XML_GET_URI_ITEM(ary, i) (((const char * const *)(ary)->elts)[i])
|
||||||
|
|
||||||
|
{$ifdef APR_CHARSET_EBCDIC}
|
||||||
|
{
|
||||||
|
* Convert parsed tree in EBCDIC
|
||||||
|
* @param p The pool to allocate out of
|
||||||
|
* @param pdoc The apr_xml_doc to convert.
|
||||||
|
* @param xlate The translation handle to use.
|
||||||
|
* @return Any errors found during conversion.
|
||||||
|
}
|
||||||
|
function apr_xml_parser_convert_doc(p: Papr_pool_t;
|
||||||
|
pdoc: Papr_xml_doc; convset: Papr_xlate_t): apr_status_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibAPRUtil name LibNamePrefix + 'apr_xml_parser_convert_doc' + LibSuff12;
|
||||||
|
{$endif}
|
||||||
|
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 1999-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -31,14 +31,17 @@ const
|
|||||||
APR_HOOK_REALLY_LAST = 30;
|
APR_HOOK_REALLY_LAST = 30;
|
||||||
|
|
||||||
|
|
||||||
//#include "apr_hooks.h"
|
|
||||||
{.$include util_cfgtree.inc}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* @file http_config.h
|
* @file http_config.h
|
||||||
* @brief Apache Configuration
|
* @brief Apache Configuration
|
||||||
|
*
|
||||||
|
* @defgroup APACHE_CORE_CONFIG Configuration
|
||||||
|
* @ingroup APACHE_CORE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//#include "apr_hooks.h"
|
||||||
|
{.$include util_cfgtree.inc}
|
||||||
|
|
||||||
{
|
{
|
||||||
* @defgroup ConfigDirectives Allowed locations for configuration directives.
|
* @defgroup ConfigDirectives Allowed locations for configuration directives.
|
||||||
*
|
*
|
||||||
@ -103,7 +106,8 @@ type
|
|||||||
TAKE3, {< three arguments only }
|
TAKE3, {< three arguments only }
|
||||||
TAKE23, {< two or three arguments }
|
TAKE23, {< two or three arguments }
|
||||||
TAKE123, {< one, two or three arguments }
|
TAKE123, {< one, two or three arguments }
|
||||||
TAKE13 {< one or three arguments }
|
TAKE13, {< one or three arguments }
|
||||||
|
TAKE_ARGV {< an argc and argv are passed }
|
||||||
);
|
);
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -125,7 +129,9 @@ type
|
|||||||
{ function to call for a no-args }
|
{ function to call for a no-args }
|
||||||
no_args_t = function (parms: Pcmd_parms; mconfig: Pointer): PChar;
|
no_args_t = function (parms: Pcmd_parms; mconfig: Pointer): PChar;
|
||||||
{ function to call for a raw-args }
|
{ function to call for a raw-args }
|
||||||
raw_args_t = function (parms: Pcmd_parms; mconfig: Pointer; const args: PChar): Pchar;
|
raw_args_t = function (parms: Pcmd_parms; mconfig: Pointer; const args: PChar): PChar;
|
||||||
|
{ function to call for a argv/argc }
|
||||||
|
take_argv_t = function (parms: Pcmd_parms; mconfig: Pointer; argc: cint; argv: array of PChar): PChar;
|
||||||
{ function to call for a take1 }
|
{ function to call for a take1 }
|
||||||
take1_t = function (parms: Pcmd_parms; mconfig: Pointer; const w: PChar): PChar;
|
take1_t = function (parms: Pcmd_parms; mconfig: Pointer; const w: PChar): PChar;
|
||||||
{ function to call for a take2 }
|
{ function to call for a take2 }
|
||||||
@ -140,6 +146,8 @@ type
|
|||||||
// AP_NO_ARGS = func.no_args;
|
// AP_NO_ARGS = func.no_args;
|
||||||
{ This configuration directive will handle it's own parsing of arguments}
|
{ This configuration directive will handle it's own parsing of arguments}
|
||||||
// AP_RAW_ARGS = func.raw_args;
|
// AP_RAW_ARGS = func.raw_args;
|
||||||
|
{ This configuration directive will handle it's own parsing of arguments}
|
||||||
|
//# define AP_TAKE_ARGV func.take_argv
|
||||||
{ This configuration directive takes 1 argument}
|
{ This configuration directive takes 1 argument}
|
||||||
// AP_TAKE1 = func.take1;
|
// AP_TAKE1 = func.take1;
|
||||||
{ This configuration directive takes 2 arguments }
|
{ This configuration directive takes 2 arguments }
|
||||||
@ -155,6 +163,9 @@ type
|
|||||||
{ method of declaring a directive with raw argument parsing }
|
{ method of declaring a directive with raw argument parsing }
|
||||||
//# define AP_INIT_RAW_ARGS(directive, func, mconfig, where, help) \
|
//# define AP_INIT_RAW_ARGS(directive, func, mconfig, where, help) \
|
||||||
// directive, { .raw_args=func }, mconfig, where, RAW_ARGS, help }
|
// directive, { .raw_args=func }, mconfig, where, RAW_ARGS, help }
|
||||||
|
{ method of declaring a directive with raw argument parsing }
|
||||||
|
//# define AP_INIT_TAKE_ARGV(directive, func, mconfig, where, help) \
|
||||||
|
// { directive, { .take_argv=func }, mconfig, where, TAKE_ARGV, help }
|
||||||
{ method of declaring a directive which takes 1 argument }
|
{ method of declaring a directive which takes 1 argument }
|
||||||
//# define AP_INIT_TAKE1(directive, func, mconfig, where, help) \
|
//# define AP_INIT_TAKE1(directive, func, mconfig, where, help) \
|
||||||
// directive, { .take1=func }, mconfig, where, TAKE1, help }
|
// directive, { .take1=func }, mconfig, where, TAKE1, help }
|
||||||
@ -192,6 +203,7 @@ type
|
|||||||
|
|
||||||
//# define AP_NO_ARGS func
|
//# define AP_NO_ARGS func
|
||||||
//# define AP_RAW_ARGS func
|
//# define AP_RAW_ARGS func
|
||||||
|
//# define AP_TAKE_ARGV func
|
||||||
//# define AP_TAKE1 func
|
//# define AP_TAKE1 func
|
||||||
//# define AP_TAKE2 func
|
//# define AP_TAKE2 func
|
||||||
//# define AP_TAKE3 func
|
//# define AP_TAKE3 func
|
||||||
@ -201,6 +213,8 @@ type
|
|||||||
{ directive, func, mconfig, where, RAW_ARGS, help }
|
{ directive, func, mconfig, where, RAW_ARGS, help }
|
||||||
//# define AP_INIT_RAW_ARGS(directive, func, mconfig, where, help) \
|
//# define AP_INIT_RAW_ARGS(directive, func, mconfig, where, help) \
|
||||||
{ directive, func, mconfig, where, RAW_ARGS, help }
|
{ directive, func, mconfig, where, RAW_ARGS, help }
|
||||||
|
//# define AP_INIT_TAKE_ARGV(directive, func, mconfig, where, help) \
|
||||||
|
{ directive, func, mconfig, where, TAKE_ARGV, help }
|
||||||
//# define AP_INIT_TAKE1(directive, func, mconfig, where, help) \
|
//# define AP_INIT_TAKE1(directive, func, mconfig, where, help) \
|
||||||
{ directive, func, mconfig, where, TAKE1, help }
|
{ directive, func, mconfig, where, TAKE1, help }
|
||||||
//# define AP_INIT_ITERATE(directive, func, mconfig, where, help) \
|
//# define AP_INIT_ITERATE(directive, func, mconfig, where, help) \
|
||||||
@ -312,6 +326,9 @@ type
|
|||||||
context: Pap_conf_vector_t;
|
context: Pap_conf_vector_t;
|
||||||
{ directive with syntax error }
|
{ directive with syntax error }
|
||||||
err_directive: Pap_directive_t;
|
err_directive: Pap_directive_t;
|
||||||
|
|
||||||
|
{ Which allow-override-opts bits are set }
|
||||||
|
override_opts: cint;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
cmd_parms = cmd_parms_struct;
|
cmd_parms = cmd_parms_struct;
|
||||||
@ -572,7 +589,7 @@ function ap_server_root_relative(p: Papr_pool_t; const fname: PChar): PChar;
|
|||||||
* @param m The module structure of the module to add
|
* @param m The module structure of the module to add
|
||||||
* @param p The pool of the same lifetime as the module
|
* @param p The pool of the same lifetime as the module
|
||||||
}
|
}
|
||||||
procedure ap_add_module(m: Pmodule; p: Papr_pool_t);
|
function ap_add_module(m: Pmodule; p: Papr_pool_t): PChar;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_add_module' + LibSuff8;
|
external LibHTTPD name LibNamePrefix + 'ap_add_module' + LibSuff8;
|
||||||
|
|
||||||
@ -605,17 +622,6 @@ procedure ap_remove_loaded_module(m: Pmodule);
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_remove_loaded_module' + LibSuff4;
|
external LibHTTPD name LibNamePrefix + 'ap_remove_loaded_module' + LibSuff4;
|
||||||
|
|
||||||
{
|
|
||||||
* Add a module to the list of loaded module based on the name of the
|
|
||||||
* module
|
|
||||||
* @param name The name of the module
|
|
||||||
* @param p The pool valid for the lifetime of the module
|
|
||||||
* @return 1 on success, 0 on failure
|
|
||||||
}
|
|
||||||
function ap_add_named_module(const name: PChar; p: Papr_pool_t): Integer;
|
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_add_named_module' + LibSuff8;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* Find the name of the specified module
|
* Find the name of the specified module
|
||||||
* @param m The module to get the name for
|
* @param m The module to get the name for
|
||||||
@ -750,7 +756,7 @@ function ap_walk_config(conftree: Pap_directive_t;
|
|||||||
external LibHTTPD name LibNamePrefix + 'ap_walk_config' + LibSuff12;
|
external LibHTTPD name LibNamePrefix + 'ap_walk_config' + LibSuff12;
|
||||||
|
|
||||||
{
|
{
|
||||||
* @defgroup ap_check_cmd_context ap_check_cmd_context
|
* @defgroup ap_check_cmd_context Check command context
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
* Check the context a command is used in.
|
* Check the context a command is used in.
|
||||||
@ -776,6 +782,15 @@ const
|
|||||||
|
|
||||||
//#ifdef CORE_PRIVATE
|
//#ifdef CORE_PRIVATE
|
||||||
|
|
||||||
|
{
|
||||||
|
* @brief This structure is used to assign symbol names to module pointers
|
||||||
|
}
|
||||||
|
type
|
||||||
|
ap_module_symbol_t = record
|
||||||
|
name: PChar;
|
||||||
|
modp: Pmodule;
|
||||||
|
end;
|
||||||
|
|
||||||
{
|
{
|
||||||
* The topmost module in the list
|
* The topmost module in the list
|
||||||
* @defvar module *ap_top_module
|
* @defvar module *ap_top_module
|
||||||
@ -787,6 +802,11 @@ const
|
|||||||
* @defvar module *ap_prelinked_modules[]
|
* @defvar module *ap_prelinked_modules[]
|
||||||
}
|
}
|
||||||
//AP_DECLARE_DATA extern module *ap_prelinked_modules[];
|
//AP_DECLARE_DATA extern module *ap_prelinked_modules[];
|
||||||
|
{
|
||||||
|
* Array of all statically linked modulenames (symbols)
|
||||||
|
* @defvar ap_module_symbol_t ap_prelinked_modulenames[]
|
||||||
|
}
|
||||||
|
//AP_DECLARE_DATA extern ap_module_symbol_t ap_prelinked_module_symbols[];
|
||||||
{
|
{
|
||||||
* Array of all preloaded modules
|
* Array of all preloaded modules
|
||||||
* @defvar module *ap_preloaded_modules[]
|
* @defvar module *ap_preloaded_modules[]
|
||||||
@ -814,7 +834,7 @@ procedure ap_single_module_configure(p: Papr_pool_t;
|
|||||||
* Add all of the prelinked modules into the loaded module list
|
* Add all of the prelinked modules into the loaded module list
|
||||||
* @param process The process that is currently running the server
|
* @param process The process that is currently running the server
|
||||||
}
|
}
|
||||||
procedure ap_setup_prelinked_modules(process: Pprocess_rec);
|
function ap_setup_prelinked_modules(process: Pprocess_rec): PChar;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_setup_prelinked_modules' + LibSuff4;
|
external LibHTTPD name LibNamePrefix + 'ap_setup_prelinked_modules' + LibSuff4;
|
||||||
|
|
||||||
@ -935,10 +955,10 @@ function ap_create_conn_config(p: Papr_pool_t): Pap_conf_vector_t;
|
|||||||
* int The status of the current request
|
* int The status of the current request
|
||||||
}
|
}
|
||||||
function ap_parse_htaccess(result: PPap_conf_vector_t;
|
function ap_parse_htaccess(result: PPap_conf_vector_t;
|
||||||
r: Prequest_rec; override_: Integer;
|
r: Prequest_rec; override_: Integer; override_opts: cint;
|
||||||
const path, access_name: PChar): Integer;
|
const path, access_name: PChar): Integer;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_parse_htaccess' + LibSuff20;
|
external LibHTTPD name LibNamePrefix + 'ap_parse_htaccess' + LibSuff24;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Setup a virtual host
|
* Setup a virtual host
|
||||||
@ -950,7 +970,7 @@ function ap_parse_htaccess(result: PPap_conf_vector_t;
|
|||||||
}
|
}
|
||||||
function ap_init_virtual_host(p: Papr_pool_t;
|
function ap_init_virtual_host(p: Papr_pool_t;
|
||||||
const hostname: PChar; main_server: Pserver_rec;
|
const hostname: PChar; main_server: Pserver_rec;
|
||||||
m: PPserver_rec): PChar;
|
ps: PPserver_rec): PChar;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_init_virtual_host' + LibSuff16;
|
external LibHTTPD name LibNamePrefix + 'ap_init_virtual_host' + LibSuff16;
|
||||||
|
|
||||||
@ -962,9 +982,9 @@ function ap_init_virtual_host(p: Papr_pool_t;
|
|||||||
* @param p Pool for general allocation
|
* @param p Pool for general allocation
|
||||||
* @param ptem Pool for temporary allocation
|
* @param ptem Pool for temporary allocation
|
||||||
}
|
}
|
||||||
procedure ap_process_resource_config(s: Pserver_rec;
|
function ap_process_resource_config(s: Pserver_rec;
|
||||||
const fname: PChar; conftree: PPap_directive_t;
|
const fname: PChar; conftree: PPap_directive_t;
|
||||||
p, ptemp: Papr_pool_t);
|
p, ptemp: Papr_pool_t): PChar;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_process_resource_config' + LibSuff20;
|
external LibHTTPD name LibNamePrefix + 'ap_process_resource_config' + LibSuff20;
|
||||||
|
|
||||||
@ -975,8 +995,8 @@ procedure ap_process_resource_config(s: Pserver_rec;
|
|||||||
* @param p The pool for general allocation
|
* @param p The pool for general allocation
|
||||||
* @param ptemp The pool for temporary allocations
|
* @param ptemp The pool for temporary allocations
|
||||||
}
|
}
|
||||||
procedure ap_process_config_tree(s: Pserver_rec;
|
function ap_process_config_tree(s: Pserver_rec;
|
||||||
conftree: Pap_directive_t; p, ptemp: Papr_pool_t);
|
conftree: Pap_directive_t; p, ptemp: Papr_pool_t): cint;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_process_config_tree' + LibSuff16;
|
external LibHTTPD name LibNamePrefix + 'ap_process_config_tree' + LibSuff16;
|
||||||
|
|
||||||
@ -1066,6 +1086,20 @@ procedure ap_hook_pre_config(pf: ap_HOOK_pre_config_t; const aszPre: PPChar;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_hook_pre_config' + LibSuff16;
|
external LibHTTPD name LibNamePrefix + 'ap_hook_pre_config' + LibSuff16;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Run the test_config function for each module; this hook is run
|
||||||
|
* only if the server was invoked to test the configuration syntax.
|
||||||
|
* @param pconf The config pool
|
||||||
|
* @param s The list of server_recs
|
||||||
|
}
|
||||||
|
type
|
||||||
|
ap_HOOK_test_config_t = procedure (pconf: Papr_pool_t; s: Pserver_rec); cdecl;
|
||||||
|
|
||||||
|
procedure ap_hook_test_config(pf: ap_HOOK_test_config_t; const aszPre: PPChar;
|
||||||
|
const aszSucc: PPChar; nOrder: Integer);
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibHTTPD name LibNamePrefix + 'ap_hook_test_config' + LibSuff16;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Run the post_config function for each module
|
* Run the post_config function for each module
|
||||||
* @param pconf The config pool
|
* @param pconf The config pool
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 1999-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -14,13 +14,19 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
* @package Apache connection library
|
||||||
|
}
|
||||||
|
|
||||||
{#include "apr_hooks.h"
|
{#include "apr_hooks.h"
|
||||||
#include "apr_network_io.h"
|
#include "apr_network_io.h"
|
||||||
#include "apr_buckets.h"}
|
#include "apr_buckets.h"}
|
||||||
|
|
||||||
{
|
{
|
||||||
* @package Apache connection library
|
* @file http_connection.h
|
||||||
|
* @brief Apache connection library
|
||||||
}
|
}
|
||||||
|
|
||||||
//#ifdef CORE_PRIVATE
|
//#ifdef CORE_PRIVATE
|
||||||
{
|
{
|
||||||
* This is the protocol module driver. This calls all of the
|
* This is the protocol module driver. This calls all of the
|
||||||
@ -35,6 +41,10 @@ procedure ap_process_connection(c: Pconn_rec; csd: Pointer);
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_process_connection' + LibSuff8;
|
external LibHTTPD name LibNamePrefix + 'ap_process_connection' + LibSuff8;
|
||||||
|
|
||||||
|
{
|
||||||
|
* Flushes all remain data in the client send buffer
|
||||||
|
* @param c The connection to flush
|
||||||
|
}
|
||||||
procedure ap_flush_conn(c: Pconn_rec);
|
procedure ap_flush_conn(c: Pconn_rec);
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_flush_conn' + LibSuff4;
|
external LibHTTPD name LibNamePrefix + 'ap_flush_conn' + LibSuff4;
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 1999-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -41,18 +41,31 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
const
|
const
|
||||||
|
{ No directives }
|
||||||
OPT_NONE = 0;
|
OPT_NONE = 0;
|
||||||
|
{ Indexes directive }
|
||||||
OPT_INDEXES = 1;
|
OPT_INDEXES = 1;
|
||||||
|
{ Includes directive }
|
||||||
OPT_INCLUDES = 2;
|
OPT_INCLUDES = 2;
|
||||||
|
{ FollowSymLinks directive }
|
||||||
OPT_SYM_LINKS = 4;
|
OPT_SYM_LINKS = 4;
|
||||||
|
{ ExecCGI directive }
|
||||||
OPT_EXECCGI = 8;
|
OPT_EXECCGI = 8;
|
||||||
|
{ directive unset }
|
||||||
OPT_UNSET = 16;
|
OPT_UNSET = 16;
|
||||||
|
{ IncludesNOEXEC directive }
|
||||||
OPT_INCNOEXEC = 32;
|
OPT_INCNOEXEC = 32;
|
||||||
|
{ SymLinksIfOwnerMatch directive }
|
||||||
OPT_SYM_OWNER = 64;
|
OPT_SYM_OWNER = 64;
|
||||||
|
{ MultiViews directive }
|
||||||
OPT_MULTI = 128;
|
OPT_MULTI = 128;
|
||||||
|
{ All directives }
|
||||||
OPT_ALL = (OPT_INDEXES or OPT_INCLUDES or OPT_SYM_LINKS or OPT_EXECCGI);
|
OPT_ALL = (OPT_INDEXES or OPT_INCLUDES or OPT_SYM_LINKS or OPT_EXECCGI);
|
||||||
|
|
||||||
{ options for get_remote_host() }
|
{
|
||||||
|
* @defgroup get_remote_host Remote Host Resolution
|
||||||
|
* @ingroup APACHE_CORE_HTTPD
|
||||||
|
}
|
||||||
{ REMOTE_HOST returns the hostname, or NULL if the hostname
|
{ REMOTE_HOST returns the hostname, or NULL if the hostname
|
||||||
* lookup fails. It will force a DNS lookup according to the
|
* lookup fails. It will force a DNS lookup according to the
|
||||||
* HostnameLookups setting.
|
* HostnameLookups setting.
|
||||||
@ -77,8 +90,11 @@ const
|
|||||||
}
|
}
|
||||||
REMOTE_DOUBLE_REV = (3);
|
REMOTE_DOUBLE_REV = (3);
|
||||||
|
|
||||||
|
{ all of the requirements must be met }
|
||||||
SATISFY_ALL = 0;
|
SATISFY_ALL = 0;
|
||||||
|
{ any of the requirements must be met }
|
||||||
SATISFY_ANY = 1;
|
SATISFY_ANY = 1;
|
||||||
|
{ There are no applicable satisfy lines }
|
||||||
SATISFY_NOSPEC = 2;
|
SATISFY_NOSPEC = 2;
|
||||||
|
|
||||||
{ Make sure we don't write less than 8000 bytes at any one time.
|
{ Make sure we don't write less than 8000 bytes at any one time.
|
||||||
@ -464,6 +480,10 @@ const
|
|||||||
ENABLE_SENDFILE_ON = (1);
|
ENABLE_SENDFILE_ON = (1);
|
||||||
ENABLE_SENDFILE_UNSET = (2);
|
ENABLE_SENDFILE_UNSET = (2);
|
||||||
|
|
||||||
|
USE_CANONICAL_PHYS_PORT_OFF = (0);
|
||||||
|
USE_CANONICAL_PHYS_PORT_ON = (1);
|
||||||
|
USE_CANONICAL_PHYS_PORT_UNSET = (2);
|
||||||
|
|
||||||
type
|
type
|
||||||
server_signature_e = (
|
server_signature_e = (
|
||||||
srv_sig_unset,
|
srv_sig_unset,
|
||||||
@ -490,6 +510,7 @@ type
|
|||||||
opts_add: allow_options_t;
|
opts_add: allow_options_t;
|
||||||
opts_remove: allow_options_t;
|
opts_remove: allow_options_t;
|
||||||
override_: overrides_t;
|
override_: overrides_t;
|
||||||
|
override_opts: allow_options_t;
|
||||||
|
|
||||||
{ MIME typing --- the core doesn't do anything at all with this,
|
{ MIME typing --- the core doesn't do anything at all with this,
|
||||||
* but it does know what to slap on a request for a document which
|
* but it does know what to slap on a request for a document which
|
||||||
@ -517,8 +538,6 @@ type
|
|||||||
{ Hostname resolution etc }
|
{ Hostname resolution etc }
|
||||||
{ unsigned int hostname_lookups : 4; }
|
{ unsigned int hostname_lookups : 4; }
|
||||||
|
|
||||||
{ signed int do_rfc1413 : 2; }{ See if client is advertising a username? }
|
|
||||||
|
|
||||||
{ signed int content_md5 : 2; }{ calculate Content-MD5? }
|
{ signed int content_md5 : 2; }{ calculate Content-MD5? }
|
||||||
|
|
||||||
{ unsigned use_canonical_name : 2; }
|
{ unsigned use_canonical_name : 2; }
|
||||||
@ -556,7 +575,7 @@ type
|
|||||||
|
|
||||||
{ Access control }
|
{ Access control }
|
||||||
sec_file: Papr_array_header_t;
|
sec_file: Papr_array_header_t;
|
||||||
r: Pregex_t;
|
r: Pap_regex_t;
|
||||||
|
|
||||||
mime_type: PChar; { forced with ForceType }
|
mime_type: PChar; { forced with ForceType }
|
||||||
handler: PChar; { forced with SetHandler }
|
handler: PChar; { forced with SetHandler }
|
||||||
@ -581,6 +600,7 @@ type
|
|||||||
{ unsigned int enable_sendfile : 2; }{ files in this dir can be mmap'ed }
|
{ unsigned int enable_sendfile : 2; }{ files in this dir can be mmap'ed }
|
||||||
{ unsigned int allow_encoded_slashes : 1; }{ URLs may contain %2f w/o being
|
{ unsigned int allow_encoded_slashes : 1; }{ URLs may contain %2f w/o being
|
||||||
* pitched indiscriminately }
|
* pitched indiscriminately }
|
||||||
|
{ unsigned use_canonical_phys_port : 2;}
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{ Per-server core configuration }
|
{ Per-server core configuration }
|
||||||
@ -616,6 +636,9 @@ type
|
|||||||
redirect_limit: Integer; { maximum number of internal redirects }
|
redirect_limit: Integer; { maximum number of internal redirects }
|
||||||
subreq_limit: Integer; { maximum nesting level of subrequests }
|
subreq_limit: Integer; { maximum nesting level of subrequests }
|
||||||
|
|
||||||
|
protocol: PChar;
|
||||||
|
accf_map: Papr_table_t;
|
||||||
|
|
||||||
{ TRACE control }
|
{ TRACE control }
|
||||||
trace_enable: Integer;
|
trace_enable: Integer;
|
||||||
end;
|
end;
|
||||||
@ -632,7 +655,16 @@ AP_CORE_DECLARE(void) ap_add_per_url_conf(server_rec *s, void *url_config);
|
|||||||
AP_CORE_DECLARE(void) ap_add_file_conf(core_dir_config *conf, void *url_config);
|
AP_CORE_DECLARE(void) ap_add_file_conf(core_dir_config *conf, void *url_config);
|
||||||
AP_CORE_DECLARE_NONSTD(const char *) ap_limit_section(cmd_parms *cmd, void *dummy, const char *arg);}
|
AP_CORE_DECLARE_NONSTD(const char *) ap_limit_section(cmd_parms *cmd, void *dummy, const char *arg);}
|
||||||
|
|
||||||
//#endif COREPRIVATE
|
{ Core filters; not exported. }
|
||||||
|
{int ap_core_input_filter(ap_filter_t *f, apr_bucket_brigade *b,
|
||||||
|
ap_input_mode_t mode, apr_read_type_e block,
|
||||||
|
apr_off_t readbytes);
|
||||||
|
apr_status_t ap_core_output_filter(ap_filter_t *f, apr_bucket_brigade *b);
|
||||||
|
|
||||||
|
#endif} { CORE_PRIVATE }
|
||||||
|
|
||||||
|
//AP_DECLARE(const char*) ap_get_server_protocol(server_rec* s);
|
||||||
|
//AP_DECLARE(void) ap_set_server_protocol(server_rec* s, const char* proto);
|
||||||
|
|
||||||
|
|
||||||
{ ----------------------------------------------------------------------
|
{ ----------------------------------------------------------------------
|
||||||
@ -665,7 +697,6 @@ type
|
|||||||
{extern AP_DECLARE_DATA ap_filter_rec_t *ap_subreq_core_filter_handle;
|
{extern AP_DECLARE_DATA ap_filter_rec_t *ap_subreq_core_filter_handle;
|
||||||
extern AP_DECLARE_DATA ap_filter_rec_t *ap_core_output_filter_handle;
|
extern AP_DECLARE_DATA ap_filter_rec_t *ap_core_output_filter_handle;
|
||||||
extern AP_DECLARE_DATA ap_filter_rec_t *ap_content_length_filter_handle;
|
extern AP_DECLARE_DATA ap_filter_rec_t *ap_content_length_filter_handle;
|
||||||
extern AP_DECLARE_DATA ap_filter_rec_t *ap_net_time_filter_handle;
|
|
||||||
extern AP_DECLARE_DATA ap_filter_rec_t *ap_core_input_filter_handle;}
|
extern AP_DECLARE_DATA ap_filter_rec_t *ap_core_input_filter_handle;}
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -700,3 +731,11 @@ procedure ap_hook_get_mgmt_items(pf: ap_HOOK_get_mgmt_items_t;
|
|||||||
{APR_DECLARE_OPTIONAL_FN(void, ap_logio_add_bytes_out,
|
{APR_DECLARE_OPTIONAL_FN(void, ap_logio_add_bytes_out,
|
||||||
(conn_rec *c, apr_off_t bytes));}
|
(conn_rec *c, apr_off_t bytes));}
|
||||||
|
|
||||||
|
{ ----------------------------------------------------------------------
|
||||||
|
*
|
||||||
|
* ident lookups with mod_ident
|
||||||
|
}
|
||||||
|
|
||||||
|
{APR_DECLARE_OPTIONAL_FN(const char *, ap_ident_lookup,
|
||||||
|
(request_rec *r));}
|
||||||
|
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 1999-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -14,19 +14,12 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
}
|
}
|
||||||
|
|
||||||
{#include "apr_hooks.h"
|
|
||||||
#include "util_filter.h"}
|
|
||||||
|
|
||||||
const
|
|
||||||
AP_SUBREQ_NO_ARGS = 0;
|
|
||||||
AP_SUBREQ_MERGE_ARGS = 1;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* @file http_request.h
|
* @file http_request.h
|
||||||
* @brief Apache Request library
|
* @brief Apache Request library
|
||||||
}
|
}
|
||||||
|
|
||||||
{ http_request.c is the code which handles the main line of request
|
{ request.c is the code which handles the main line of request
|
||||||
* processing, once a request has been read in (finding the right per-
|
* processing, once a request has been read in (finding the right per-
|
||||||
* directory configuration, building it if necessary, and calling all
|
* directory configuration, building it if necessary, and calling all
|
||||||
* the module dispatch functions in the right order).
|
* the module dispatch functions in the right order).
|
||||||
@ -46,6 +39,13 @@ const
|
|||||||
* about which was allocated in its apr_pool_t elsewhere before doing this.
|
* about which was allocated in its apr_pool_t elsewhere before doing this.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{#include "apr_hooks.h"
|
||||||
|
#include "util_filter.h"}
|
||||||
|
|
||||||
|
const
|
||||||
|
AP_SUBREQ_NO_ARGS = 0;
|
||||||
|
AP_SUBREQ_MERGE_ARGS = 1;
|
||||||
|
|
||||||
{
|
{
|
||||||
* An internal handler used by the ap_process_request, all subrequest mechanisms
|
* An internal handler used by the ap_process_request, all subrequest mechanisms
|
||||||
* and the redirect mechanism.
|
* and the redirect mechanism.
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
{#include "os.h"}
|
{#include "os.h"}
|
||||||
|
|
||||||
{$include pcreposix.inc}
|
{$include ap_regex.inc}
|
||||||
|
|
||||||
// Note: util_uri.h is also included, see below
|
// Note: util_uri.h is also included, see below
|
||||||
|
|
||||||
@ -1061,7 +1061,7 @@ type
|
|||||||
limit_req_fields: Integer;
|
limit_req_fields: Integer;
|
||||||
|
|
||||||
{ The server request scheme for redirect responses }
|
{ The server request scheme for redirect responses }
|
||||||
server_scheme: P_Char;
|
server_scheme: PChar;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
type
|
type
|
||||||
@ -1675,7 +1675,7 @@ function ap_escape_quotes(p: Papr_pool_t; const instring: PChar): PChar;
|
|||||||
* @param string The string to append the PID to
|
* @param string The string to append the PID to
|
||||||
* @param delim The string to use to deliminate the string from the PID
|
* @param delim The string to use to deliminate the string from the PID
|
||||||
* @return A copy of the string with the PID appended
|
* @return A copy of the string with the PID appended
|
||||||
*/
|
}
|
||||||
function ap_append_pid(p: Papr_pool_t; const string_, delim: PChar): PChar;
|
function ap_append_pid(p: Papr_pool_t; const string_, delim: PChar): PChar;
|
||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_append_pid' + LibSuff12;
|
external LibHTTPD name LibNamePrefix + 'ap_append_pid' + LibSuff12;
|
||||||
|
@ -1,85 +0,0 @@
|
|||||||
{*************************************************
|
|
||||||
* Perl-Compatible Regular Expressions *
|
|
||||||
*************************************************}
|
|
||||||
|
|
||||||
{ Copyright (c) 1997-2000 University of Cambridge }
|
|
||||||
|
|
||||||
{
|
|
||||||
* @file include/pcreposix.h
|
|
||||||
* @brief PCRE definitions
|
|
||||||
}
|
|
||||||
|
|
||||||
{ This is the header for the POSIX wrapper interface to the PCRE Perl-
|
|
||||||
Compatible Regular Expression library. It defines the things POSIX says should
|
|
||||||
be there. I hope. }
|
|
||||||
|
|
||||||
{ Have to include stdlib.h in order to ensure that size_t is defined. }
|
|
||||||
|
|
||||||
{ Options defined by POSIX. }
|
|
||||||
|
|
||||||
const
|
|
||||||
{ Ignore case }
|
|
||||||
REG_ICASE = $01;
|
|
||||||
{ Don't match newlines with wildcards }
|
|
||||||
REG_NEWLINE = $02;
|
|
||||||
{ Don't match BOL }
|
|
||||||
REG_NOTBOL = $04;
|
|
||||||
{ Don't match EOL }
|
|
||||||
REG_NOTEOL = $08;
|
|
||||||
|
|
||||||
{ These are not used by PCRE, but by defining them we make it easier
|
|
||||||
to slot PCRE into existing programs that make POSIX calls. }
|
|
||||||
|
|
||||||
{ UNUSED! }
|
|
||||||
REG_EXTENDED = 0;
|
|
||||||
{ UNUSED! }
|
|
||||||
REG_NOSUB = 0;
|
|
||||||
|
|
||||||
{ Error values. Not all these are relevant or used by the wrapper. }
|
|
||||||
|
|
||||||
type
|
|
||||||
pc_error = (
|
|
||||||
REG_ASSERT = 1, { internal error ? }
|
|
||||||
REG_BADBR, { invalid repeat counts in } {}
|
|
||||||
REG_BADPAT, { pattern error }
|
|
||||||
REG_BADRPT, { ? * + invalid }
|
|
||||||
REG_EBRACE, { unbalanced } {}
|
|
||||||
REG_EBRACK, { unbalanced [] }
|
|
||||||
REG_ECOLLATE, { collation error - not relevant }
|
|
||||||
REG_ECTYPE, { bad class }
|
|
||||||
REG_EESCAPE, { bad escape sequence }
|
|
||||||
REG_EMPTY, { empty expression }
|
|
||||||
REG_EPAREN, { unbalanced () }
|
|
||||||
REG_ERANGE, { bad range inside [] }
|
|
||||||
REG_ESIZE, { expression too big }
|
|
||||||
REG_ESPACE, { failed to get memory }
|
|
||||||
REG_ESUBREG, { bad back reference }
|
|
||||||
REG_INVARG, { bad argument }
|
|
||||||
REG_NOMATCH { match failed }
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
{ The structure representing a compiled regular expression. }
|
|
||||||
|
|
||||||
regex_t = record
|
|
||||||
re_pcre: Pointer;
|
|
||||||
re_nsub, re_erroffset: size_t;
|
|
||||||
end;
|
|
||||||
|
|
||||||
Pregex_t = ^regex_t;
|
|
||||||
|
|
||||||
{ The structure in which a captured offset is returned. }
|
|
||||||
|
|
||||||
regoff_t = Integer;
|
|
||||||
|
|
||||||
regmatch_t = record
|
|
||||||
rm_so, rm_eo: regoff_t;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ The functions }
|
|
||||||
|
|
||||||
{extern int regcomp(regex_t *, const char *, int);
|
|
||||||
extern int regexec(regex_t *, const char *, size_t, regmatch_t *, int);
|
|
||||||
extern size_t regerror(int, const regex_t *, char *, size_t);
|
|
||||||
extern void regfree(regex_t *);}
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 2000-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -14,12 +14,12 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
}
|
}
|
||||||
|
|
||||||
//#include "ap_config.h"
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* @package Config Tree Package
|
* @package Config Tree Package
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//#include "ap_config.h"
|
||||||
|
|
||||||
type
|
type
|
||||||
Pap_directive_t = ^ap_directive_t;
|
Pap_directive_t = ^ap_directive_t;
|
||||||
PPap_directive_t = ^Pap_directive_t;
|
PPap_directive_t = ^Pap_directive_t;
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 2000-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -14,6 +14,11 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
* @file util_filter.h
|
||||||
|
* @brief Apache filter library
|
||||||
|
}
|
||||||
|
|
||||||
{#include "apr.h"
|
{#include "apr.h"
|
||||||
#include "apr_buckets.h"
|
#include "apr_buckets.h"
|
||||||
|
|
||||||
@ -23,11 +28,6 @@
|
|||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#endif}
|
#endif}
|
||||||
|
|
||||||
{
|
|
||||||
* @file util_filter.h
|
|
||||||
* @brief Apache filter library
|
|
||||||
}
|
|
||||||
|
|
||||||
const
|
const
|
||||||
{ Returned by the bottom-most filter if no data was written.
|
{ Returned by the bottom-most filter if no data was written.
|
||||||
* @see ap_pass_brigade(). }
|
* @see ap_pass_brigade(). }
|
||||||
@ -67,7 +67,8 @@ type
|
|||||||
);
|
);
|
||||||
|
|
||||||
{
|
{
|
||||||
* @defgroup filter FILTER CHAIN
|
* @defgroup APACHE_CORE_FILTER Filter Chain
|
||||||
|
* @ingroup APACHE_CORE
|
||||||
*
|
*
|
||||||
* Filters operate using a "chaining" mechanism. The filters are chained
|
* Filters operate using a "chaining" mechanism. The filters are chained
|
||||||
* together into a sequence. When output is generated, it is passed through
|
* together into a sequence. When output is generated, it is passed through
|
||||||
@ -192,25 +193,38 @@ type
|
|||||||
}
|
}
|
||||||
|
|
||||||
Pap_filter_rec_t = ^ap_filter_rec_t;
|
Pap_filter_rec_t = ^ap_filter_rec_t;
|
||||||
|
|
||||||
|
ap_filter_provider_t = record end;
|
||||||
|
|
||||||
|
Pap_filter_provider_t = ^ap_filter_provider_t;
|
||||||
|
|
||||||
{
|
{
|
||||||
* This structure is used for recording information about the
|
* @brief This structure is used for recording information about the
|
||||||
* registered filters. It associates a name with the filter's callback
|
* registered filters. It associates a name with the filter's callback
|
||||||
* and filter type.
|
* and filter type.
|
||||||
*
|
*
|
||||||
* At the moment, these are simply linked in a chain, so a ->next pointer
|
* At the moment, these are simply linked in a chain, so a ->next pointer
|
||||||
* is available.
|
* is available.
|
||||||
|
*
|
||||||
|
* It is used for any filter that can be inserted in the filter chain.
|
||||||
|
* This may be either a httpd-2.0 filter or a mod_filter harness.
|
||||||
|
* In the latter case it contains dispatch, provider and protocol information.
|
||||||
|
* In the former case, the new fields (from dispatch) are ignored.
|
||||||
}
|
}
|
||||||
ap_filter_rec_t = record
|
ap_filter_rec_t = record
|
||||||
{ The registered name for this filter }
|
{ The registered name for this filter }
|
||||||
name: PChar;
|
name: PChar;
|
||||||
|
|
||||||
{ The function to call when this filter is invoked. }
|
{ The function to call when this filter is invoked. }
|
||||||
filter_func: ap_filter_func;
|
filter_func: ap_filter_func;
|
||||||
|
|
||||||
{ The function to call before the handlers are invoked. Notice
|
{ The function to call before the handlers are invoked. Notice
|
||||||
* that this function is called only for filters participating in
|
* that this function is called only for filters participating in
|
||||||
* the http protocol. Filters for other protocols are to be
|
* the http protocol. Filters for other protocols are to be
|
||||||
* initiliazed by the protocols themselves. }
|
* initiliazed by the protocols themselves.
|
||||||
|
}
|
||||||
filter_init_func: ap_init_filter_func;
|
filter_init_func: ap_init_filter_func;
|
||||||
|
|
||||||
{ The type of filter, either AP_FTYPE_CONTENT or AP_FTYPE_CONNECTION.
|
{ The type of filter, either AP_FTYPE_CONTENT or AP_FTYPE_CONNECTION.
|
||||||
* An AP_FTYPE_CONTENT filter modifies the data based on information
|
* An AP_FTYPE_CONTENT filter modifies the data based on information
|
||||||
* found in the content. An AP_FTYPE_CONNECTION filter modifies the
|
* found in the content. An AP_FTYPE_CONNECTION filter modifies the
|
||||||
@ -220,6 +234,15 @@ type
|
|||||||
|
|
||||||
{ The next filter_rec in the list }
|
{ The next filter_rec in the list }
|
||||||
next: Pap_filter_rec_t;
|
next: Pap_filter_rec_t;
|
||||||
|
|
||||||
|
{ Providers for this filter }
|
||||||
|
providers: Pap_filter_provider_t;
|
||||||
|
|
||||||
|
{ Trace level for this filter }
|
||||||
|
debug: cint;
|
||||||
|
|
||||||
|
{ Protocol flags for this filter }
|
||||||
|
proto_flags: cuint;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{
|
{
|
||||||
@ -304,10 +327,12 @@ function ap_register_input_filter(const name: PChar;
|
|||||||
external LibHTTPD name LibNamePrefix + 'ap_register_input_filter' + LibSuff16;
|
external LibHTTPD name LibNamePrefix + 'ap_register_input_filter' + LibSuff16;
|
||||||
|
|
||||||
{
|
{
|
||||||
* This function is used to register an output filter with the system.
|
* This function is used to register an output filter with the system.
|
||||||
* After this registration is performed, then a filter may be added
|
* After this registration is performed, then a filter may be added
|
||||||
* into the filter chain by using ap_add_output_filter() and simply
|
* into the filter chain by using ap_add_output_filter() and simply
|
||||||
* specifying the name.
|
* specifying the name. It may also be used as a provider under mod_filter.
|
||||||
|
* This is (equivalent to) ap_register_output_filter_protocol with
|
||||||
|
* proto_flags=0, and is retained for back-compatibility with 2.0 modules.
|
||||||
*
|
*
|
||||||
* @param name The name to attach to the filter function
|
* @param name The name to attach to the filter function
|
||||||
* @param filter_func The filter function to name
|
* @param filter_func The filter function to name
|
||||||
@ -323,6 +348,32 @@ function ap_register_output_filter(const name: PChar;
|
|||||||
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
external LibHTTPD name LibNamePrefix + 'ap_register_output_filter' + LibSuff16;
|
external LibHTTPD name LibNamePrefix + 'ap_register_output_filter' + LibSuff16;
|
||||||
|
|
||||||
|
{ For httpd-2.2 I suggest replacing the above with
|
||||||
|
#define ap_register_output_filter(name,ffunc,init,ftype) \
|
||||||
|
ap_register_output_filter_protocol(name,ffunc,init,ftype,0)
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
* This function is used to register an output filter with the system.
|
||||||
|
* After this registration is performed, then a filter may be added
|
||||||
|
* into the filter chain by using ap_add_output_filter() and simply
|
||||||
|
* specifying the name. It may also be used as a provider under mod_filter.
|
||||||
|
*
|
||||||
|
* @param name The name to attach to the filter function
|
||||||
|
* @param filter_func The filter function to name
|
||||||
|
* @param filter_init The function to call before the filter handlers
|
||||||
|
* are invoked
|
||||||
|
* @param ftype The type of filter function, either ::AP_FTYPE_CONTENT or
|
||||||
|
* ::AP_FTYPE_CONNECTION
|
||||||
|
* @param proto_flags Protocol flags: logical OR of AP_FILTER_PROTO_* bits
|
||||||
|
* @see ap_add_output_filter()
|
||||||
|
}
|
||||||
|
function ap_register_output_filter_protocol(const name: PChar;
|
||||||
|
filter_func: ap_out_filter_func; filter_init: ap_init_filter_func;
|
||||||
|
ftype: ap_filter_type; proto_flags: cuint): Pap_filter_rec_t;
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibHTTPD name LibNamePrefix + 'ap_register_output_filter_protocol' + LibSuff20;
|
||||||
|
|
||||||
{
|
{
|
||||||
* Adds a named filter into the filter chain on the specified request record.
|
* Adds a named filter into the filter chain on the specified request record.
|
||||||
* The filter will be installed with the specified context pointer.
|
* The filter will be installed with the specified context pointer.
|
||||||
@ -521,3 +572,32 @@ function ap_fprintf(f: Pap_filter_t; bb: Papr_bucket_brigade;
|
|||||||
|
|
||||||
{ __attribute__((format(printf,3,4)));}
|
{ __attribute__((format(printf,3,4)));}
|
||||||
|
|
||||||
|
{
|
||||||
|
* set protocol requirements for an output content filter
|
||||||
|
* (only works with AP_FTYPE_RESOURCE and AP_FTYPE_CONTENT_SET)
|
||||||
|
* @param f the filter in question
|
||||||
|
* @param proto_flags Logical OR of AP_FILTER_PROTO_* bits
|
||||||
|
}
|
||||||
|
procedure ap_filter_protocol(f: Pap_filter_t; proto_flags: cuint);
|
||||||
|
{$IFDEF WINDOWS} stdcall; {$ELSE} cdecl; {$ENDIF}
|
||||||
|
external LibHTTPD name LibNamePrefix + 'ap_filter_protocol' + LibSuff8;
|
||||||
|
|
||||||
|
const
|
||||||
|
{ Filter changes contents (so invalidating checksums/etc) }
|
||||||
|
AP_FILTER_PROTO_CHANGE = $1;
|
||||||
|
|
||||||
|
{ Filter changes length of contents (so invalidating content-length/etc) }
|
||||||
|
AP_FILTER_PROTO_CHANGE_LENGTH = $2;
|
||||||
|
|
||||||
|
{ Filter requires complete input and can't work on byteranges }
|
||||||
|
AP_FILTER_PROTO_NO_BYTERANGE = $4;
|
||||||
|
|
||||||
|
{ Filter should not run in a proxy }
|
||||||
|
AP_FILTER_PROTO_NO_PROXY = $8;
|
||||||
|
|
||||||
|
{ Filter makes output non-cacheable }
|
||||||
|
AP_FILTER_PROTO_NO_CACHE = $10;
|
||||||
|
|
||||||
|
{ Filter is incompatible with "Cache-Control: no-transform" }
|
||||||
|
AP_FILTER_PROTO_TRANSFORM = $20;
|
||||||
|
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 1999-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 1999-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
{ Copyright 2001-2005 The Apache Software Foundation or its licensors, as
|
{ Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
* applicable.
|
* contributor license agreements. See the NOTICE file distributed with
|
||||||
*
|
* this work for additional information regarding copyright ownership.
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
* you may not use this file except in compliance with the License.
|
* (the "License"); you may not use this file except in compliance with
|
||||||
* You may obtain a copy of the License at
|
* the License. You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
@ -14,14 +14,14 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
}
|
}
|
||||||
|
|
||||||
{#include "apr.h"
|
|
||||||
#include "apr_time.h"
|
|
||||||
#include "httpd.h"}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
* @package Apache date-time handling functions
|
* @package Apache date-time handling functions
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{#include "apr.h"
|
||||||
|
#include "apr_time.h"
|
||||||
|
#include "httpd.h"}
|
||||||
|
|
||||||
{ Maximum delta from the current time, in seconds, for a past time
|
{ Maximum delta from the current time, in seconds, for a past time
|
||||||
* to qualify as "recent" for use in the ap_explode_recent_*() functions:
|
* to qualify as "recent" for use in the ap_explode_recent_*() functions:
|
||||||
* (Must be a power of two minus one!)
|
* (Must be a power of two minus one!)
|
||||||
|
@ -1,36 +1,16 @@
|
|||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<CONFIG>
|
<CONFIG>
|
||||||
<ProjectOptions>
|
<ProjectOptions>
|
||||||
<PathDelim Value="\"/>
|
<PathDelim Value="/"/>
|
||||||
<Version Value="5"/>
|
<Version Value="5"/>
|
||||||
<General>
|
<General>
|
||||||
<MainUnit Value="0"/>
|
<MainUnit Value="0"/>
|
||||||
<IconPath Value="./"/>
|
<IconPath Value="./"/>
|
||||||
<TargetFileExt Value=".exe"/>
|
<TargetFileExt Value=".exe"/>
|
||||||
<ActiveEditorIndexAtStart Value="1"/>
|
<ActiveEditorIndexAtStart Value="3"/>
|
||||||
</General>
|
</General>
|
||||||
<VersionInfo>
|
|
||||||
<UseVersionInfo Value="False"/>
|
|
||||||
<AutoIncrementBuild Value="False"/>
|
|
||||||
<CurrentVersionNr Value="0"/>
|
|
||||||
<CurrentMajorRevNr Value="0"/>
|
|
||||||
<CurrentMinorRevNr Value="0"/>
|
|
||||||
<CurrentBuildNr Value="0"/>
|
|
||||||
<ProjectVersion Value="1,0,0,0"/>
|
|
||||||
<Language Value="0409"/>
|
|
||||||
<CharSet Value="04E4"/>
|
|
||||||
<Comments Value=""/>
|
|
||||||
<CompanyName Value=""/>
|
|
||||||
<FileDescription Value=""/>
|
|
||||||
<InternalName Value=""/>
|
|
||||||
<LegalCopyright Value=""/>
|
|
||||||
<LegalTrademarks Value=""/>
|
|
||||||
<OriginalFilename Value=""/>
|
|
||||||
<ProductName Value=""/>
|
|
||||||
</VersionInfo>
|
|
||||||
<PublishOptions>
|
<PublishOptions>
|
||||||
<Version Value="2"/>
|
<Version Value="2"/>
|
||||||
<DestinationDirectory Value="$(TestDir)\publishedproject\"/>
|
|
||||||
<IgnoreBinaries Value="False"/>
|
<IgnoreBinaries Value="False"/>
|
||||||
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
|
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
|
||||||
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
|
<ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
|
||||||
@ -38,18 +18,18 @@
|
|||||||
<RunParams>
|
<RunParams>
|
||||||
<local>
|
<local>
|
||||||
<FormatVersion Value="1"/>
|
<FormatVersion Value="1"/>
|
||||||
<LaunchingApplication PathPlusParams="\usr\X11R6\bin\xterm -T 'Lazarus Run Output' -e $(LazarusDir)\tools\runwait.sh $(TargetCmdLine)"/>
|
<LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
|
||||||
</local>
|
</local>
|
||||||
</RunParams>
|
</RunParams>
|
||||||
<Units Count="61">
|
<Units Count="103">
|
||||||
<Unit0>
|
<Unit0>
|
||||||
<Filename Value="mod_hello.lpr"/>
|
<Filename Value="mod_hello.lpr"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="mod_hello"/>
|
<UnitName Value="mod_hello"/>
|
||||||
<CursorPos X="12" Y="54"/>
|
<CursorPos X="45" Y="20"/>
|
||||||
<TopLine Value="47"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="0"/>
|
<EditorIndex Value="0"/>
|
||||||
<UsageCount Value="36"/>
|
<UsageCount Value="50"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit0>
|
</Unit0>
|
||||||
<Unit1>
|
<Unit1>
|
||||||
@ -57,489 +37,716 @@
|
|||||||
<UnitName Value="minimain"/>
|
<UnitName Value="minimain"/>
|
||||||
<CursorPos X="16" Y="21"/>
|
<CursorPos X="16" Y="21"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit1>
|
</Unit1>
|
||||||
<Unit2>
|
<Unit2>
|
||||||
<Filename Value="httpd_2_0\httpd.inc"/>
|
<Filename Value="httpd_2_0/httpd.inc"/>
|
||||||
<CursorPos X="21" Y="840"/>
|
<CursorPos X="21" Y="840"/>
|
||||||
<TopLine Value="825"/>
|
<TopLine Value="825"/>
|
||||||
<EditorIndex Value="7"/>
|
<UsageCount Value="8"/>
|
||||||
<UsageCount Value="10"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit2>
|
</Unit2>
|
||||||
<Unit3>
|
<Unit3>
|
||||||
<Filename Value="httpd_2_0\apr\apr_buckets.inc"/>
|
<Filename Value="httpd_2_0/apr/apr_buckets.inc"/>
|
||||||
<CursorPos X="14" Y="9"/>
|
<CursorPos X="14" Y="9"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit3>
|
</Unit3>
|
||||||
<Unit4>
|
<Unit4>
|
||||||
<Filename Value="httpd_2_0\http_log.inc"/>
|
<Filename Value="httpd_2_0/http_log.inc"/>
|
||||||
<CursorPos X="1" Y="2"/>
|
<CursorPos X="1" Y="2"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="1"/>
|
<UsageCount Value="12"/>
|
||||||
<UsageCount Value="10"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit4>
|
</Unit4>
|
||||||
<Unit5>
|
<Unit5>
|
||||||
<Filename Value="httpd_2_0\aprutil\apr_md5.inc"/>
|
<Filename Value="httpd_2_0/aprutil/apr_md5.inc"/>
|
||||||
<CursorPos X="28" Y="128"/>
|
<CursorPos X="28" Y="128"/>
|
||||||
<TopLine Value="123"/>
|
<TopLine Value="123"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit5>
|
</Unit5>
|
||||||
<Unit6>
|
<Unit6>
|
||||||
<Filename Value="httpd_2_0\http_config.inc"/>
|
<Filename Value="httpd_2_0/http_config.inc"/>
|
||||||
<CursorPos X="11" Y="160"/>
|
<CursorPos X="11" Y="160"/>
|
||||||
<TopLine Value="138"/>
|
<TopLine Value="138"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit6>
|
</Unit6>
|
||||||
<Unit7>
|
<Unit7>
|
||||||
<Filename Value="httpd_2_0\ap_mmn.inc"/>
|
<Filename Value="httpd_2_0/ap_mmn.inc"/>
|
||||||
<CursorPos X="13" Y="76"/>
|
<CursorPos X="13" Y="76"/>
|
||||||
<TopLine Value="75"/>
|
<TopLine Value="75"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit7>
|
</Unit7>
|
||||||
<Unit8>
|
<Unit8>
|
||||||
<Filename Value="httpd_2_0\httpd.pas"/>
|
<Filename Value="httpd_2_0/httpd.pas"/>
|
||||||
<IsPartOfProject Value="True"/>
|
<IsPartOfProject Value="True"/>
|
||||||
<UnitName Value="httpd"/>
|
<UnitName Value="httpd"/>
|
||||||
<CursorPos X="8" Y="163"/>
|
<CursorPos X="8" Y="163"/>
|
||||||
<TopLine Value="138"/>
|
<TopLine Value="133"/>
|
||||||
<EditorIndex Value="6"/>
|
<UsageCount Value="49"/>
|
||||||
<UsageCount Value="35"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit8>
|
</Unit8>
|
||||||
<Unit9>
|
<Unit9>
|
||||||
<Filename Value="httpd_2_0\apr\apr_network_io.inc"/>
|
<Filename Value="httpd_2_0/apr/apr_network_io.inc"/>
|
||||||
<CursorPos X="17" Y="197"/>
|
<CursorPos X="17" Y="197"/>
|
||||||
<TopLine Value="178"/>
|
<TopLine Value="178"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit9>
|
</Unit9>
|
||||||
<Unit10>
|
<Unit10>
|
||||||
<Filename Value="httpd_2_0\apr\apr.pas"/>
|
<Filename Value="httpd_2_0/apr/apr.pas"/>
|
||||||
<UnitName Value="apr"/>
|
<UnitName Value="apr"/>
|
||||||
<CursorPos X="1" Y="161"/>
|
<CursorPos X="1" Y="97"/>
|
||||||
<TopLine Value="142"/>
|
<TopLine Value="74"/>
|
||||||
<EditorIndex Value="5"/>
|
<UsageCount Value="9"/>
|
||||||
<UsageCount Value="10"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit10>
|
</Unit10>
|
||||||
<Unit11>
|
<Unit11>
|
||||||
<Filename Value="..\httpd-2.0.58\srclib\apr\include\apr_network_io.h"/>
|
<Filename Value="../httpd-2.0.58/srclib/apr/include/apr_network_io.h"/>
|
||||||
<CursorPos X="16" Y="212"/>
|
<CursorPos X="16" Y="212"/>
|
||||||
<TopLine Value="18"/>
|
<TopLine Value="18"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit11>
|
</Unit11>
|
||||||
<Unit12>
|
<Unit12>
|
||||||
<Filename Value="..\httpd-2.0.58\modules\arch\netware\mod_nw_ssl.c"/>
|
<Filename Value="../httpd-2.0.58/modules/arch/netware/mod_nw_ssl.c"/>
|
||||||
<CursorPos X="39" Y="79"/>
|
<CursorPos X="39" Y="79"/>
|
||||||
<TopLine Value="79"/>
|
<TopLine Value="79"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit12>
|
</Unit12>
|
||||||
<Unit13>
|
<Unit13>
|
||||||
<Filename Value="httpd_1_3\httpd.pas"/>
|
<Filename Value="httpd_1_3/httpd.pas"/>
|
||||||
<UnitName Value="httpd"/>
|
<UnitName Value="httpd"/>
|
||||||
<CursorPos X="21" Y="169"/>
|
<CursorPos X="21" Y="169"/>
|
||||||
<TopLine Value="146"/>
|
<TopLine Value="146"/>
|
||||||
<UsageCount Value="16"/>
|
<UsageCount Value="14"/>
|
||||||
</Unit13>
|
</Unit13>
|
||||||
<Unit14>
|
<Unit14>
|
||||||
<Filename Value="httpd_1_3\ap_config.inc"/>
|
<Filename Value="httpd_1_3/ap_config.inc"/>
|
||||||
<CursorPos X="1" Y="22"/>
|
<CursorPos X="1" Y="22"/>
|
||||||
<TopLine Value="114"/>
|
<TopLine Value="114"/>
|
||||||
<UsageCount Value="15"/>
|
<UsageCount Value="13"/>
|
||||||
</Unit14>
|
</Unit14>
|
||||||
<Unit15>
|
<Unit15>
|
||||||
<Filename Value="httpd_1_3\ap_alloc.inc"/>
|
<Filename Value="httpd_1_3/ap_alloc.inc"/>
|
||||||
<CursorPos X="4" Y="126"/>
|
<CursorPos X="4" Y="126"/>
|
||||||
<TopLine Value="110"/>
|
<TopLine Value="110"/>
|
||||||
<UsageCount Value="12"/>
|
<UsageCount Value="10"/>
|
||||||
</Unit15>
|
</Unit15>
|
||||||
<Unit16>
|
<Unit16>
|
||||||
<Filename Value="httpd_1_3\http_config.inc"/>
|
<Filename Value="httpd_1_3/http_config.inc"/>
|
||||||
<CursorPos X="1" Y="146"/>
|
<CursorPos X="1" Y="146"/>
|
||||||
<TopLine Value="128"/>
|
<TopLine Value="128"/>
|
||||||
<UsageCount Value="14"/>
|
<UsageCount Value="12"/>
|
||||||
</Unit16>
|
</Unit16>
|
||||||
<Unit17>
|
<Unit17>
|
||||||
<Filename Value="httpd_2_0\ap_provider.inc"/>
|
<Filename Value="httpd_2_0/ap_provider.inc"/>
|
||||||
<CursorPos X="34" Y="20"/>
|
<CursorPos X="34" Y="20"/>
|
||||||
<TopLine Value="18"/>
|
<TopLine Value="18"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit17>
|
</Unit17>
|
||||||
<Unit18>
|
<Unit18>
|
||||||
<Filename Value="httpd_1_3\buff.inc"/>
|
<Filename Value="httpd_1_3/buff.inc"/>
|
||||||
<CursorPos X="1" Y="185"/>
|
<CursorPos X="1" Y="185"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<UsageCount Value="11"/>
|
<UsageCount Value="9"/>
|
||||||
</Unit18>
|
</Unit18>
|
||||||
<Unit19>
|
<Unit19>
|
||||||
<Filename Value="httpd_1_3\ap.inc"/>
|
<Filename Value="httpd_1_3/ap.inc"/>
|
||||||
<CursorPos X="3" Y="35"/>
|
<CursorPos X="3" Y="35"/>
|
||||||
<TopLine Value="20"/>
|
<TopLine Value="20"/>
|
||||||
<UsageCount Value="11"/>
|
<UsageCount Value="9"/>
|
||||||
</Unit19>
|
</Unit19>
|
||||||
<Unit20>
|
<Unit20>
|
||||||
<Filename Value="httpd_1_3\httpd.inc"/>
|
<Filename Value="httpd_1_3/httpd.inc"/>
|
||||||
<CursorPos X="14" Y="22"/>
|
<CursorPos X="14" Y="22"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1163"/>
|
||||||
<UsageCount Value="14"/>
|
<UsageCount Value="12"/>
|
||||||
</Unit20>
|
</Unit20>
|
||||||
<Unit21>
|
<Unit21>
|
||||||
<Filename Value="..\..\apache_1.3.37\src\include\httpd.h"/>
|
<Filename Value="../../apache_1.3.37/src/include/httpd.h"/>
|
||||||
<CursorPos X="9" Y="215"/>
|
<CursorPos X="9" Y="215"/>
|
||||||
<TopLine Value="197"/>
|
<TopLine Value="197"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit21>
|
</Unit21>
|
||||||
<Unit22>
|
<Unit22>
|
||||||
<Filename Value="..\..\apache_1.3.37\src\support\suexec.h"/>
|
<Filename Value="../../apache_1.3.37/src/support/suexec.h"/>
|
||||||
<CursorPos X="44" Y="54"/>
|
<CursorPos X="44" Y="54"/>
|
||||||
<TopLine Value="36"/>
|
<TopLine Value="36"/>
|
||||||
<UsageCount Value="11"/>
|
<UsageCount Value="9"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit22>
|
</Unit22>
|
||||||
<Unit23>
|
<Unit23>
|
||||||
<Filename Value="..\..\apache_1.3.37\src\modules\proxy\mod_proxy.h"/>
|
<Filename Value="../../apache_1.3.37/src/modules/proxy/mod_proxy.h"/>
|
||||||
<CursorPos X="8" Y="296"/>
|
<CursorPos X="8" Y="296"/>
|
||||||
<TopLine Value="276"/>
|
<TopLine Value="276"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit23>
|
</Unit23>
|
||||||
<Unit24>
|
<Unit24>
|
||||||
<Filename Value="..\..\apache_1.3.37\src\include\ap_alloc.h"/>
|
<Filename Value="../../apache_1.3.37/src/include/ap_alloc.h"/>
|
||||||
<CursorPos X="7" Y="180"/>
|
<CursorPos X="7" Y="180"/>
|
||||||
<TopLine Value="155"/>
|
<TopLine Value="155"/>
|
||||||
<UsageCount Value="11"/>
|
<UsageCount Value="9"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit24>
|
</Unit24>
|
||||||
<Unit25>
|
<Unit25>
|
||||||
<Filename Value="..\..\apache_1.3.37\src\include\ap_config.h"/>
|
<Filename Value="../../apache_1.3.37/src/include/ap_config.h"/>
|
||||||
<CursorPos X="22" Y="22"/>
|
<CursorPos X="22" Y="22"/>
|
||||||
<TopLine Value="7"/>
|
<TopLine Value="7"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit25>
|
</Unit25>
|
||||||
<Unit26>
|
<Unit26>
|
||||||
<Filename Value="httpd_1_3\util_uri.inc"/>
|
<Filename Value="httpd_1_3/util_uri.inc"/>
|
||||||
<CursorPos X="4" Y="49"/>
|
<CursorPos X="4" Y="49"/>
|
||||||
<TopLine Value="38"/>
|
<TopLine Value="38"/>
|
||||||
<UsageCount Value="11"/>
|
<UsageCount Value="9"/>
|
||||||
</Unit26>
|
</Unit26>
|
||||||
<Unit27>
|
<Unit27>
|
||||||
<Filename Value="..\..\apache_1.3.37\src\include\util_uri.h"/>
|
<Filename Value="../../apache_1.3.37/src/include/util_uri.h"/>
|
||||||
<CursorPos X="12" Y="53"/>
|
<CursorPos X="12" Y="53"/>
|
||||||
<TopLine Value="45"/>
|
<TopLine Value="45"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit27>
|
</Unit27>
|
||||||
<Unit28>
|
<Unit28>
|
||||||
<Filename Value="..\..\apache_1.3.37\src\include\http_config.h"/>
|
<Filename Value="../../apache_1.3.37/src/include/http_config.h"/>
|
||||||
<CursorPos X="27" Y="174"/>
|
<CursorPos X="27" Y="174"/>
|
||||||
<TopLine Value="126"/>
|
<TopLine Value="126"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit28>
|
</Unit28>
|
||||||
<Unit29>
|
<Unit29>
|
||||||
<Filename Value="httpd_1_3\http_core.inc"/>
|
<Filename Value="httpd_1_3/http_core.inc"/>
|
||||||
<CursorPos X="1" Y="387"/>
|
<CursorPos X="1" Y="387"/>
|
||||||
<TopLine Value="352"/>
|
<TopLine Value="352"/>
|
||||||
<UsageCount Value="14"/>
|
<UsageCount Value="12"/>
|
||||||
</Unit29>
|
</Unit29>
|
||||||
<Unit30>
|
<Unit30>
|
||||||
<Filename Value="httpd_1_3\http_request.inc"/>
|
<Filename Value="httpd_1_3/http_request.inc"/>
|
||||||
<CursorPos X="78" Y="57"/>
|
<CursorPos X="78" Y="57"/>
|
||||||
<TopLine Value="29"/>
|
<TopLine Value="29"/>
|
||||||
<UsageCount Value="11"/>
|
<UsageCount Value="9"/>
|
||||||
</Unit30>
|
</Unit30>
|
||||||
<Unit31>
|
<Unit31>
|
||||||
<Filename Value="httpd_2_0\pcreposix.inc"/>
|
<Filename Value="httpd_2_0/pcreposix.inc"/>
|
||||||
<CursorPos X="1" Y="74"/>
|
<CursorPos X="1" Y="74"/>
|
||||||
<TopLine Value="34"/>
|
<TopLine Value="34"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit31>
|
</Unit31>
|
||||||
<Unit32>
|
<Unit32>
|
||||||
<Filename Value="httpd_1_3\hsregex.inc"/>
|
<Filename Value="httpd_1_3/hsregex.inc"/>
|
||||||
<CursorPos X="1" Y="15"/>
|
<CursorPos X="1" Y="15"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<UsageCount Value="11"/>
|
<UsageCount Value="9"/>
|
||||||
</Unit32>
|
</Unit32>
|
||||||
<Unit33>
|
<Unit33>
|
||||||
<Filename Value="..\..\apache_1.3.37\src\regex\regex2.h"/>
|
<Filename Value="../../apache_1.3.37/src/regex/regex2.h"/>
|
||||||
<CursorPos X="8" Y="115"/>
|
<CursorPos X="8" Y="115"/>
|
||||||
<TopLine Value="82"/>
|
<TopLine Value="82"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit33>
|
</Unit33>
|
||||||
<Unit34>
|
<Unit34>
|
||||||
<Filename Value="httpd_1_3\http_log.inc"/>
|
<Filename Value="httpd_1_3/http_log.inc"/>
|
||||||
<CursorPos X="11" Y="67"/>
|
<CursorPos X="11" Y="67"/>
|
||||||
<TopLine Value="52"/>
|
<TopLine Value="52"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit34>
|
</Unit34>
|
||||||
<Unit35>
|
<Unit35>
|
||||||
<Filename Value="httpd_1_3\http_main.inc"/>
|
<Filename Value="httpd_1_3/http_main.inc"/>
|
||||||
<CursorPos X="27" Y="123"/>
|
<CursorPos X="27" Y="123"/>
|
||||||
<TopLine Value="18"/>
|
<TopLine Value="18"/>
|
||||||
<UsageCount Value="13"/>
|
<UsageCount Value="11"/>
|
||||||
</Unit35>
|
</Unit35>
|
||||||
<Unit36>
|
<Unit36>
|
||||||
<Filename Value="httpd_1_3\http_protocol.inc"/>
|
<Filename Value="httpd_1_3/http_protocol.inc"/>
|
||||||
<CursorPos X="77" Y="108"/>
|
<CursorPos X="77" Y="108"/>
|
||||||
<TopLine Value="85"/>
|
<TopLine Value="85"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit36>
|
</Unit36>
|
||||||
<Unit37>
|
<Unit37>
|
||||||
<Filename Value="httpd_1_3\http_vhost.inc"/>
|
<Filename Value="httpd_1_3/http_vhost.inc"/>
|
||||||
<CursorPos X="1" Y="33"/>
|
<CursorPos X="1" Y="33"/>
|
||||||
<TopLine Value="10"/>
|
<TopLine Value="10"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit37>
|
</Unit37>
|
||||||
<Unit38>
|
<Unit38>
|
||||||
<Filename Value="..\..\apache_1.3.37\src\modules\example\mod_example.c"/>
|
<Filename Value="../../apache_1.3.37/src/modules/example/mod_example.c"/>
|
||||||
<CursorPos X="7" Y="1011"/>
|
<CursorPos X="7" Y="1011"/>
|
||||||
<TopLine Value="1004"/>
|
<TopLine Value="1004"/>
|
||||||
<UsageCount Value="13"/>
|
<UsageCount Value="11"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit38>
|
</Unit38>
|
||||||
<Unit39>
|
<Unit39>
|
||||||
<Filename Value="httpd_1_3\ap_mmn.inc"/>
|
<Filename Value="httpd_1_3/ap_mmn.inc"/>
|
||||||
<CursorPos X="34" Y="208"/>
|
<CursorPos X="34" Y="208"/>
|
||||||
<TopLine Value="192"/>
|
<TopLine Value="192"/>
|
||||||
<UsageCount Value="11"/>
|
<UsageCount Value="9"/>
|
||||||
</Unit39>
|
</Unit39>
|
||||||
<Unit40>
|
<Unit40>
|
||||||
<Filename Value="httpd_2_0\ap_config.inc"/>
|
<Filename Value="httpd_2_0/ap_config.inc"/>
|
||||||
<CursorPos X="1" Y="1"/>
|
<CursorPos X="1" Y="1"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit40>
|
</Unit40>
|
||||||
<Unit41>
|
<Unit41>
|
||||||
<Filename Value="usr\share\fpcsrc\rtl\linux\ptypes.inc"/>
|
<Filename Value="usr/share/fpcsrc/rtl/linux/ptypes.inc"/>
|
||||||
<CursorPos X="5" Y="68"/>
|
<CursorPos X="5" Y="68"/>
|
||||||
<TopLine Value="52"/>
|
<TopLine Value="52"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit41>
|
</Unit41>
|
||||||
<Unit42>
|
<Unit42>
|
||||||
<Filename Value="httpd_2_2\http_main.inc"/>
|
<Filename Value="httpd_2_2/http_main.inc"/>
|
||||||
<CursorPos X="1" Y="16"/>
|
<CursorPos X="1" Y="16"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="2"/>
|
<UsageCount Value="13"/>
|
||||||
<UsageCount Value="11"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit42>
|
</Unit42>
|
||||||
<Unit43>
|
<Unit43>
|
||||||
<Filename Value="httpd_2_2\httpd.inc"/>
|
<Filename Value="httpd_2_2/httpd.inc"/>
|
||||||
<CursorPos X="10" Y="975"/>
|
<CursorPos X="1" Y="326"/>
|
||||||
<TopLine Value="959"/>
|
<TopLine Value="316"/>
|
||||||
<EditorIndex Value="3"/>
|
<UsageCount Value="13"/>
|
||||||
<UsageCount Value="11"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit43>
|
</Unit43>
|
||||||
<Unit44>
|
<Unit44>
|
||||||
<Filename Value="httpd_2_2\httpd.pas"/>
|
<Filename Value="httpd_2_2/httpd.pas"/>
|
||||||
<UnitName Value="httpd"/>
|
<UnitName Value="httpd"/>
|
||||||
<CursorPos X="81" Y="89"/>
|
<CursorPos X="8" Y="50"/>
|
||||||
<TopLine Value="82"/>
|
<TopLine Value="32"/>
|
||||||
<EditorIndex Value="11"/>
|
<EditorIndex Value="9"/>
|
||||||
<UsageCount Value="11"/>
|
<UsageCount Value="18"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit44>
|
</Unit44>
|
||||||
<Unit45>
|
<Unit45>
|
||||||
<Filename Value="httpd_2_2\http_log.inc"/>
|
<Filename Value="httpd_2_2/http_log.inc"/>
|
||||||
<CursorPos X="1" Y="15"/>
|
<CursorPos X="1" Y="15"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="12"/>
|
<UsageCount Value="9"/>
|
||||||
<UsageCount Value="11"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit45>
|
</Unit45>
|
||||||
<Unit46>
|
<Unit46>
|
||||||
<Filename Value="httpd_2_2\http_protocol.inc"/>
|
<Filename Value="httpd_2_2/http_protocol.inc"/>
|
||||||
<CursorPos X="1" Y="15"/>
|
<CursorPos X="1" Y="15"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="13"/>
|
<UsageCount Value="13"/>
|
||||||
<UsageCount Value="11"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit46>
|
</Unit46>
|
||||||
<Unit47>
|
<Unit47>
|
||||||
<Filename Value="httpd_2_2\http_vhost.inc"/>
|
<Filename Value="httpd_2_2/http_vhost.inc"/>
|
||||||
<CursorPos X="30" Y="52"/>
|
<CursorPos X="30" Y="52"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<EditorIndex Value="14"/>
|
<UsageCount Value="13"/>
|
||||||
<UsageCount Value="11"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit47>
|
</Unit47>
|
||||||
<Unit48>
|
<Unit48>
|
||||||
<Filename Value="httpd_2_2\apr\apr_network_io.inc"/>
|
<Filename Value="httpd_2_2/apr/apr_network_io.inc"/>
|
||||||
<CursorPos X="14" Y="197"/>
|
<CursorPos X="55" Y="830"/>
|
||||||
<TopLine Value="178"/>
|
<TopLine Value="814"/>
|
||||||
<UsageCount Value="10"/>
|
<EditorIndex Value="6"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
</Unit48>
|
</Unit48>
|
||||||
<Unit49>
|
<Unit49>
|
||||||
<Filename Value="httpd_2_2\apr\apr.pas"/>
|
<Filename Value="httpd_2_2/apr/apr.pas"/>
|
||||||
<UnitName Value="apr"/>
|
<UnitName Value="apr"/>
|
||||||
<CursorPos X="15" Y="137"/>
|
<CursorPos X="14" Y="92"/>
|
||||||
<TopLine Value="52"/>
|
<TopLine Value="82"/>
|
||||||
<UsageCount Value="10"/>
|
<EditorIndex Value="1"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
</Unit49>
|
</Unit49>
|
||||||
<Unit50>
|
<Unit50>
|
||||||
<Filename Value="..\..\httpd-2.2.3\srclib\apr\include\apr_ring.h"/>
|
<Filename Value="../../httpd-2.2.3/srclib/apr/include/apr_ring.h"/>
|
||||||
<CursorPos X="9" Y="70"/>
|
<CursorPos X="9" Y="70"/>
|
||||||
<TopLine Value="52"/>
|
<TopLine Value="52"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit50>
|
</Unit50>
|
||||||
<Unit51>
|
<Unit51>
|
||||||
<Filename Value="..\..\httpd-2.2.3\srclib\apr\include\apr_mmap.h"/>
|
<Filename Value="../../httpd-2.2.3/srclib/apr/include/apr_mmap.h"/>
|
||||||
<CursorPos X="5" Y="85"/>
|
<CursorPos X="5" Y="85"/>
|
||||||
<TopLine Value="67"/>
|
<TopLine Value="67"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit51>
|
</Unit51>
|
||||||
<Unit52>
|
<Unit52>
|
||||||
<Filename Value="httpd_2_0\apr\apr_poll.inc"/>
|
<Filename Value="httpd_2_2/apr/apr_poll.inc"/>
|
||||||
<CursorPos X="84" Y="212"/>
|
<CursorPos X="16" Y="84"/>
|
||||||
<TopLine Value="196"/>
|
<TopLine Value="161"/>
|
||||||
<EditorIndex Value="4"/>
|
<UsageCount Value="15"/>
|
||||||
<UsageCount Value="10"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit52>
|
</Unit52>
|
||||||
<Unit53>
|
<Unit53>
|
||||||
<Filename Value="..\..\httpd-2.0.58\include\http_config.h"/>
|
<Filename Value="../../httpd-2.0.58/include/http_config.h"/>
|
||||||
<CursorPos X="1" Y="75"/>
|
<CursorPos X="1" Y="75"/>
|
||||||
<TopLine Value="57"/>
|
<TopLine Value="57"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit53>
|
</Unit53>
|
||||||
<Unit54>
|
<Unit54>
|
||||||
<Filename Value="..\..\httpd-2.0.58\include\http_core.h"/>
|
<Filename Value="../../httpd-2.0.58/include/http_core.h"/>
|
||||||
<CursorPos X="10" Y="585"/>
|
<CursorPos X="10" Y="585"/>
|
||||||
<TopLine Value="570"/>
|
<TopLine Value="570"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
<SyntaxHighlighter Value="C++"/>
|
<SyntaxHighlighter Value="C++"/>
|
||||||
</Unit54>
|
</Unit54>
|
||||||
<Unit55>
|
<Unit55>
|
||||||
<Filename Value="httpd_2_0\http_core.inc"/>
|
<Filename Value="httpd_2_0/http_core.inc"/>
|
||||||
<CursorPos X="16" Y="650"/>
|
<CursorPos X="16" Y="650"/>
|
||||||
<TopLine Value="634"/>
|
<TopLine Value="634"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit55>
|
</Unit55>
|
||||||
<Unit56>
|
<Unit56>
|
||||||
<Filename Value="httpd_2_0\apr\apr_dso.inc"/>
|
<Filename Value="httpd_2_0/apr/apr_dso.inc"/>
|
||||||
<CursorPos X="1" Y="81"/>
|
<CursorPos X="1" Y="81"/>
|
||||||
<TopLine Value="63"/>
|
<TopLine Value="60"/>
|
||||||
<EditorIndex Value="9"/>
|
<UsageCount Value="12"/>
|
||||||
<UsageCount Value="10"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit56>
|
</Unit56>
|
||||||
<Unit57>
|
<Unit57>
|
||||||
<Filename Value="..\..\..\lazarus16\fpcsrc\rtl\win32\winsock.pp"/>
|
<Filename Value="../../../lazarus16/fpcsrc/rtl/win32/winsock.pp"/>
|
||||||
<UnitName Value="winsock"/>
|
<UnitName Value="winsock"/>
|
||||||
<CursorPos X="14" Y="220"/>
|
<CursorPos X="14" Y="220"/>
|
||||||
<TopLine Value="210"/>
|
<TopLine Value="210"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit57>
|
</Unit57>
|
||||||
<Unit58>
|
<Unit58>
|
||||||
<Filename Value="..\..\..\lazarus16\fpcsrc\rtl\win32\wininc\struct.inc"/>
|
<Filename Value="../../../lazarus16/fpcsrc/rtl/win32/wininc/struct.inc"/>
|
||||||
<CursorPos X="14" Y="6"/>
|
<CursorPos X="14" Y="6"/>
|
||||||
<TopLine Value="1"/>
|
<TopLine Value="1"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="8"/>
|
||||||
</Unit58>
|
</Unit58>
|
||||||
<Unit59>
|
<Unit59>
|
||||||
<Filename Value="httpd_2_0\util_cfgtree.inc"/>
|
<Filename Value="httpd_2_0/util_cfgtree.inc"/>
|
||||||
<CursorPos X="13" Y="24"/>
|
<CursorPos X="13" Y="24"/>
|
||||||
<TopLine Value="9"/>
|
<TopLine Value="9"/>
|
||||||
<EditorIndex Value="10"/>
|
<UsageCount Value="12"/>
|
||||||
<UsageCount Value="10"/>
|
|
||||||
<Loaded Value="True"/>
|
|
||||||
</Unit59>
|
</Unit59>
|
||||||
<Unit60>
|
<Unit60>
|
||||||
<Filename Value="httpd_2_0\util_filter.inc"/>
|
<Filename Value="httpd_2_0/util_filter.inc"/>
|
||||||
<CursorPos X="11" Y="95"/>
|
<CursorPos X="11" Y="95"/>
|
||||||
<TopLine Value="80"/>
|
<TopLine Value="80"/>
|
||||||
|
<UsageCount Value="8"/>
|
||||||
|
</Unit60>
|
||||||
|
<Unit61>
|
||||||
|
<Filename Value="httpd_2_2/ap_regex.inc"/>
|
||||||
|
<CursorPos X="4" Y="86"/>
|
||||||
|
<TopLine Value="50"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit61>
|
||||||
|
<Unit62>
|
||||||
|
<Filename Value="../../../Apache/httpd-2.2.3/include/httpd.h"/>
|
||||||
|
<CursorPos X="13" Y="59"/>
|
||||||
|
<TopLine Value="41"/>
|
||||||
|
<UsageCount Value="8"/>
|
||||||
|
<SyntaxHighlighter Value="C++"/>
|
||||||
|
</Unit62>
|
||||||
|
<Unit63>
|
||||||
|
<Filename Value="httpd_2_2/pcreposix.inc"/>
|
||||||
|
<CursorPos X="1" Y="1"/>
|
||||||
|
<TopLine Value="53"/>
|
||||||
|
<UsageCount Value="8"/>
|
||||||
|
</Unit63>
|
||||||
|
<Unit64>
|
||||||
|
<Filename Value="httpd_2_2/http_core.inc"/>
|
||||||
|
<CursorPos X="1" Y="15"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit64>
|
||||||
|
<Unit65>
|
||||||
|
<Filename Value="/usr/share/fpcsrc/rtl/linux/ptypes.inc"/>
|
||||||
|
<CursorPos X="5" Y="106"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="8"/>
|
||||||
|
</Unit65>
|
||||||
|
<Unit66>
|
||||||
|
<Filename Value="httpd_2_2/ap_config.inc"/>
|
||||||
|
<CursorPos X="1" Y="16"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit66>
|
||||||
|
<Unit67>
|
||||||
|
<Filename Value="httpd_2_2/util_md5.inc"/>
|
||||||
|
<CursorPos X="1" Y="15"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit67>
|
||||||
|
<Unit68>
|
||||||
|
<Filename Value="httpd_2_2/ap_mmn.inc"/>
|
||||||
|
<CursorPos X="1" Y="15"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit68>
|
||||||
|
<Unit69>
|
||||||
|
<Filename Value="httpd_2_2/http_request.inc"/>
|
||||||
|
<CursorPos X="1" Y="15"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit69>
|
||||||
|
<Unit70>
|
||||||
|
<Filename Value="httpd_2_2/util_script.inc"/>
|
||||||
|
<CursorPos X="2" Y="15"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit70>
|
||||||
|
<Unit71>
|
||||||
|
<Filename Value="httpd_2_2/ap_mpm.inc"/>
|
||||||
|
<CursorPos X="1" Y="144"/>
|
||||||
|
<TopLine Value="130"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit71>
|
||||||
|
<Unit72>
|
||||||
|
<Filename Value="httpd_2_2/util_filter.inc"/>
|
||||||
|
<CursorPos X="1" Y="15"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit72>
|
||||||
|
<Unit73>
|
||||||
|
<Filename Value="httpd_2_2/util_time.inc"/>
|
||||||
|
<CursorPos X="1" Y="15"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit73>
|
||||||
|
<Unit74>
|
||||||
|
<Filename Value="httpd_2_2/ap_provider.inc"/>
|
||||||
|
<CursorPos X="8" Y="6"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit74>
|
||||||
|
<Unit75>
|
||||||
|
<Filename Value="httpd_2_2/ap_release.inc"/>
|
||||||
|
<CursorPos X="1" Y="15"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit75>
|
||||||
|
<Unit76>
|
||||||
|
<Filename Value="httpd_2_2/util_cfgtree.inc"/>
|
||||||
|
<CursorPos X="40" Y="9"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit76>
|
||||||
|
<Unit77>
|
||||||
|
<Filename Value="httpd_2_2/http_connection.inc"/>
|
||||||
|
<CursorPos X="1" Y="15"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="9"/>
|
||||||
|
</Unit77>
|
||||||
|
<Unit78>
|
||||||
|
<Filename Value="httpd_2_2/http_config.inc"/>
|
||||||
|
<CursorPos X="3" Y="168"/>
|
||||||
|
<TopLine Value="152"/>
|
||||||
|
<UsageCount Value="14"/>
|
||||||
|
</Unit78>
|
||||||
|
<Unit79>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_allocator.inc"/>
|
||||||
|
<CursorPos X="1" Y="144"/>
|
||||||
|
<TopLine Value="130"/>
|
||||||
|
<EditorIndex Value="4"/>
|
||||||
|
<UsageCount Value="14"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit79>
|
||||||
|
<Unit80>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_hash.inc"/>
|
||||||
|
<CursorPos X="29" Y="62"/>
|
||||||
|
<TopLine Value="46"/>
|
||||||
|
<UsageCount Value="13"/>
|
||||||
|
</Unit80>
|
||||||
|
<Unit81>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_time.inc"/>
|
||||||
|
<CursorPos X="17" Y="229"/>
|
||||||
|
<TopLine Value="212"/>
|
||||||
|
<UsageCount Value="13"/>
|
||||||
|
</Unit81>
|
||||||
|
<Unit82>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_file_io.inc"/>
|
||||||
|
<CursorPos X="30" Y="113"/>
|
||||||
|
<TopLine Value="97"/>
|
||||||
<EditorIndex Value="8"/>
|
<EditorIndex Value="8"/>
|
||||||
|
<UsageCount Value="13"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit82>
|
||||||
|
<Unit83>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_pools.inc"/>
|
||||||
|
<CursorPos X="19" Y="37"/>
|
||||||
|
<TopLine Value="670"/>
|
||||||
|
<UsageCount Value="13"/>
|
||||||
|
</Unit83>
|
||||||
|
<Unit84>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_tables.inc"/>
|
||||||
|
<CursorPos X="19" Y="437"/>
|
||||||
|
<TopLine Value="415"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit84>
|
||||||
|
<Unit85>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_general.inc"/>
|
||||||
|
<CursorPos X="1" Y="210"/>
|
||||||
|
<TopLine Value="187"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit85>
|
||||||
|
<Unit86>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_portable.inc"/>
|
||||||
|
<CursorPos X="18" Y="227"/>
|
||||||
|
<TopLine Value="258"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit86>
|
||||||
|
<Unit87>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_thread_proc.inc"/>
|
||||||
|
<CursorPos X="1" Y="802"/>
|
||||||
|
<TopLine Value="788"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit87>
|
||||||
|
<Unit88>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_lib.inc"/>
|
||||||
|
<CursorPos X="1" Y="177"/>
|
||||||
|
<TopLine Value="154"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit88>
|
||||||
|
<Unit89>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_errno.inc"/>
|
||||||
|
<CursorPos X="1" Y="1205"/>
|
||||||
|
<TopLine Value="1173"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit89>
|
||||||
|
<Unit90>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_signal.inc"/>
|
||||||
|
<CursorPos X="1" Y="93"/>
|
||||||
|
<TopLine Value="71"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit90>
|
||||||
|
<Unit91>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_user.inc"/>
|
||||||
|
<CursorPos X="1" Y="156"/>
|
||||||
|
<TopLine Value="129"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit91>
|
||||||
|
<Unit92>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_file_info.inc"/>
|
||||||
|
<CursorPos X="1" Y="2"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
</Unit92>
|
||||||
|
<Unit93>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_version.inc"/>
|
||||||
|
<CursorPos X="13" Y="83"/>
|
||||||
|
<TopLine Value="109"/>
|
||||||
|
<EditorIndex Value="2"/>
|
||||||
|
<UsageCount Value="12"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit93>
|
||||||
|
<Unit94>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_strings.inc"/>
|
||||||
|
<CursorPos X="1" Y="339"/>
|
||||||
|
<TopLine Value="312"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit94>
|
||||||
|
<Unit95>
|
||||||
|
<Filename Value="httpd_2_2/aprutil/apr_md5.inc"/>
|
||||||
|
<CursorPos X="1" Y="157"/>
|
||||||
|
<TopLine Value="126"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit95>
|
||||||
|
<Unit96>
|
||||||
|
<Filename Value="httpd_2_2/aprutil/apr_uri.inc"/>
|
||||||
|
<CursorPos X="1" Y="122"/>
|
||||||
|
<TopLine Value="107"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit96>
|
||||||
|
<Unit97>
|
||||||
|
<Filename Value="httpd_2_2/aprutil/apr_xlate.inc"/>
|
||||||
|
<CursorPos X="1" Y="112"/>
|
||||||
|
<TopLine Value="80"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit97>
|
||||||
|
<Unit98>
|
||||||
|
<Filename Value="httpd_2_2/aprutil/apr_xml.inc"/>
|
||||||
|
<CursorPos X="1" Y="365"/>
|
||||||
|
<TopLine Value="335"/>
|
||||||
|
<EditorIndex Value="5"/>
|
||||||
<UsageCount Value="10"/>
|
<UsageCount Value="10"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit60>
|
</Unit98>
|
||||||
|
<Unit99>
|
||||||
|
<Filename Value="httpd_2_2/apriconv/apriconv.pas"/>
|
||||||
|
<UnitName Value="apriconv"/>
|
||||||
|
<CursorPos X="15" Y="54"/>
|
||||||
|
<TopLine Value="27"/>
|
||||||
|
<EditorIndex Value="7"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit99>
|
||||||
|
<Unit100>
|
||||||
|
<Filename Value="httpd_2_2/apriconv/apr_iconv.inc"/>
|
||||||
|
<CursorPos X="1" Y="1"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit100>
|
||||||
|
<Unit101>
|
||||||
|
<Filename Value="httpd_2_2/apriconv/api_version.inc"/>
|
||||||
|
<CursorPos X="1" Y="1"/>
|
||||||
|
<TopLine Value="67"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
</Unit101>
|
||||||
|
<Unit102>
|
||||||
|
<Filename Value="httpd_2_2/apr/apr_buckets.inc"/>
|
||||||
|
<CursorPos X="1" Y="1"/>
|
||||||
|
<TopLine Value="1"/>
|
||||||
|
<EditorIndex Value="3"/>
|
||||||
|
<UsageCount Value="10"/>
|
||||||
|
<Loaded Value="True"/>
|
||||||
|
</Unit102>
|
||||||
</Units>
|
</Units>
|
||||||
<JumpHistory Count="16" HistoryIndex="15">
|
<JumpHistory Count="12" HistoryIndex="11">
|
||||||
<Position1>
|
<Position1>
|
||||||
<Filename Value="httpd_2_0\apr\apr.pas"/>
|
<Filename Value="httpd_2_2/aprutil/apr_xml.inc"/>
|
||||||
<Caret Line="96" Column="34" TopLine="78"/>
|
<Caret Line="24" Column="31" TopLine="1"/>
|
||||||
</Position1>
|
</Position1>
|
||||||
<Position2>
|
<Position2>
|
||||||
<Filename Value="httpd_2_0\apr\apr.pas"/>
|
<Filename Value="httpd_2_2/apriconv/apriconv.pas"/>
|
||||||
<Caret Line="126" Column="8" TopLine="102"/>
|
<Caret Line="53" Column="15" TopLine="27"/>
|
||||||
</Position2>
|
</Position2>
|
||||||
<Position3>
|
<Position3>
|
||||||
<Filename Value="httpd_2_0\apr\apr.pas"/>
|
<Filename Value="httpd_2_2/apriconv/apriconv.pas"/>
|
||||||
<Caret Line="122" Column="7" TopLine="107"/>
|
<Caret Line="54" Column="15" TopLine="27"/>
|
||||||
</Position3>
|
</Position3>
|
||||||
<Position4>
|
<Position4>
|
||||||
<Filename Value="mod_hello.lpr"/>
|
<Filename Value="httpd_2_2/apr/apr_network_io.inc"/>
|
||||||
<Caret Line="18" Column="19" TopLine="32"/>
|
<Caret Line="797" Column="45" TopLine="774"/>
|
||||||
</Position4>
|
</Position4>
|
||||||
<Position5>
|
<Position5>
|
||||||
<Filename Value="httpd_2_0\apr\apr.pas"/>
|
<Filename Value="httpd_2_2/apr/apr_network_io.inc"/>
|
||||||
<Caret Line="119" Column="11" TopLine="17"/>
|
<Caret Line="231" Column="7" TopLine="213"/>
|
||||||
</Position5>
|
</Position5>
|
||||||
<Position6>
|
<Position6>
|
||||||
<Filename Value="httpd_2_0\apr\apr.pas"/>
|
<Filename Value="httpd_2_2/apr/apr_network_io.inc"/>
|
||||||
<Caret Line="113" Column="8" TopLine="98"/>
|
<Caret Line="223" Column="1" TopLine="213"/>
|
||||||
</Position6>
|
</Position6>
|
||||||
<Position7>
|
<Position7>
|
||||||
<Filename Value="httpd_2_0\util_cfgtree.inc"/>
|
<Filename Value="httpd_2_2/apr/apr_network_io.inc"/>
|
||||||
<Caret Line="1" Column="1" TopLine="1"/>
|
<Caret Line="830" Column="61" TopLine="814"/>
|
||||||
</Position7>
|
</Position7>
|
||||||
<Position8>
|
<Position8>
|
||||||
<Filename Value="httpd_2_0\util_cfgtree.inc"/>
|
<Filename Value="mod_hello.lpr"/>
|
||||||
<Caret Line="24" Column="13" TopLine="9"/>
|
<Caret Line="20" Column="45" TopLine="1"/>
|
||||||
</Position8>
|
</Position8>
|
||||||
<Position9>
|
<Position9>
|
||||||
<Filename Value="httpd_2_0\util_filter.inc"/>
|
<Filename Value="httpd_2_2/apr/apr_version.inc"/>
|
||||||
<Caret Line="1" Column="1" TopLine="1"/>
|
<Caret Line="100" Column="3" TopLine="95"/>
|
||||||
</Position9>
|
</Position9>
|
||||||
<Position10>
|
<Position10>
|
||||||
<Filename Value="httpd_2_0\util_filter.inc"/>
|
<Filename Value="httpd_2_2/apr/apr_buckets.inc"/>
|
||||||
<Caret Line="95" Column="11" TopLine="80"/>
|
<Caret Line="16" Column="17" TopLine="1"/>
|
||||||
</Position10>
|
</Position10>
|
||||||
<Position11>
|
<Position11>
|
||||||
<Filename Value="httpd_2_0\httpd.inc"/>
|
<Filename Value="httpd_2_2/apr/apr_buckets.inc"/>
|
||||||
<Caret Line="13" Column="1" TopLine="1"/>
|
<Caret Line="392" Column="26" TopLine="371"/>
|
||||||
</Position11>
|
</Position11>
|
||||||
<Position12>
|
<Position12>
|
||||||
<Filename Value="httpd_2_0\httpd.pas"/>
|
<Filename Value="httpd_2_2/apr/apr_buckets.inc"/>
|
||||||
<Caret Line="163" Column="11" TopLine="136"/>
|
<Caret Line="753" Column="32" TopLine="728"/>
|
||||||
</Position12>
|
</Position12>
|
||||||
<Position13>
|
|
||||||
<Filename Value="httpd_2_0\httpd.pas"/>
|
|
||||||
<Caret Line="156" Column="13" TopLine="138"/>
|
|
||||||
</Position13>
|
|
||||||
<Position14>
|
|
||||||
<Filename Value="httpd_2_0\httpd.pas"/>
|
|
||||||
<Caret Line="163" Column="17" TopLine="138"/>
|
|
||||||
</Position14>
|
|
||||||
<Position15>
|
|
||||||
<Filename Value="mod_hello.lpr"/>
|
|
||||||
<Caret Line="110" Column="25" TopLine="95"/>
|
|
||||||
</Position15>
|
|
||||||
<Position16>
|
|
||||||
<Filename Value="mod_hello.lpr"/>
|
|
||||||
<Caret Line="54" Column="12" TopLine="47"/>
|
|
||||||
</Position16>
|
|
||||||
</JumpHistory>
|
</JumpHistory>
|
||||||
</ProjectOptions>
|
</ProjectOptions>
|
||||||
<CompilerOptions>
|
<CompilerOptions>
|
||||||
<Version Value="5"/>
|
<Version Value="5"/>
|
||||||
<PathDelim Value="\"/>
|
|
||||||
<Target>
|
<Target>
|
||||||
<Filename Value="mod_hello.so"/>
|
<Filename Value="mod_hello.so"/>
|
||||||
</Target>
|
</Target>
|
||||||
<SearchPaths>
|
<SearchPaths>
|
||||||
<OtherUnitFiles Value="httpd_2_0\;httpd_2_0\apr\;httpd_2_0\aprutil\"/>
|
<OtherUnitFiles Value="httpd_2_2/;httpd_2_2/apr/;httpd_2_2/aprutil/"/>
|
||||||
<SrcPath Value="httpd_2_0\;httpd_2_0\apr\;httpd_2_0\aprutil\"/>
|
<SrcPath Value="httpd_2_2/;httpd_2_2/apr/;httpd_2_2/aprutil/"/>
|
||||||
</SearchPaths>
|
</SearchPaths>
|
||||||
<CodeGeneration>
|
<CodeGeneration>
|
||||||
<Generate Value="Faster"/>
|
<Generate Value="Faster"/>
|
||||||
|
Reference in New Issue
Block a user