37 #if APR_HAVE_PTHREAD_H
48 #if defined(HAVE_IF_INDEXTONAME) && defined(_MSC_VER)
71 wchar_t const *
const *arr,
int args);
121 #if defined(_MSC_VER)
124 static APR_INLINE void* apr_malloc_dbg(
size_t size,
const char* filename,
127 return _malloc_dbg(
size, _CRT_BLOCK, filename, linenumber);
130 static APR_INLINE void* apr_realloc_dbg(
void* userData,
size_t newSize,
131 const char* filename,
int linenumber)
133 return _realloc_dbg(userData, newSize, _CRT_BLOCK, filename, linenumber);
138 static APR_INLINE void* apr_malloc_dbg(
size_t size,
const char* filename,
144 static APR_INLINE void* apr_realloc_dbg(
void* userData,
size_t newSize,
145 const char* filename,
int linenumber)
147 return realloc(userData, newSize);
176 #define APR_DECLARE_LATE_DLL_FUNC(lib, rettype, calltype, fn, ord, args, names) \
177 typedef rettype (calltype *apr_winapi_fpt_##fn) args; \
178 static volatile apr_winapi_fpt_##fn apr_winapi_pfn_##fn = (apr_winapi_fpt_##fn) (ULONG_PTR) (-1); \
179 static APR_INLINE int apr_winapi_ld_##fn(void) \
181 apr_winapi_fpt_##fn cached_func = apr_winapi_pfn_##fn; \
182 if (cached_func == (apr_winapi_fpt_##fn) (ULONG_PTR) (-1)) { \
183 cached_func = (apr_winapi_fpt_##fn) apr_load_dll_func(lib, #fn, ord); \
185 apr_winapi_pfn_##fn = cached_func; \
187 if (cached_func) return 1; else return 0; }; \
188 static APR_INLINE rettype apr_winapi_##fn args \
189 { if (apr_winapi_ld_##fn()) \
190 return (*(apr_winapi_pfn_##fn)) names; \
191 else { SetLastError(ERROR_INVALID_FUNCTION); return 0;} }; \
193 #define APR_HAVE_LATE_DLL_FUNC(fn) apr_winapi_ld_##fn()
222 (pMaxRes, pMinRes, pCurRes));
223 #define QueryTimerResolution apr_winapi_NtQueryTimerResolution
229 (ReqRes, Acquire, pNewRes));
230 #define SetTimerResolution apr_winapi_NtSetTimerResolution
237 PLARGE_INTEGER Timeout),
239 (Handle, Alertable, Timeout));
241 #ifdef CreateToolhelp32Snapshot
242 #undef CreateToolhelp32Snapshot
246 DWORD th32ProcessID),
247 (dwFlags, th32ProcessID));
248 #define CreateToolhelp32Snapshot apr_winapi_CreateToolhelp32Snapshot
250 #ifdef Process32FirstW
251 #undef Process32FirstW
255 LPPROCESSENTRY32W lppe),
257 #define Process32FirstW apr_winapi_Process32FirstW
259 #ifdef Process32NextW
260 #undef Process32NextW
264 LPPROCESSENTRY32W lppe),
266 #define Process32NextW apr_winapi_Process32NextW
270 #if HAVE_IF_NAMETOINDEX
271 #ifdef if_nametoindex
272 #undef if_nametoindex
275 IN PCSTR InterfaceName),
277 #define if_nametoindex apr_winapi_if_nametoindex
280 #if HAVE_IF_INDEXTONAME
281 #ifdef if_indextoname
282 #undef if_indextoname
285 NET_IFINDEX InterfaceIndex,
286 PCHAR InterfaceName),
287 (InterfaceIndex, InterfaceName));
288 #define if_indextoname apr_winapi_if_indextoname
292 STDAPICALLTYPE, CommandLineToArgvW, 0,
293 (LPCWSTR lpCmdLine,
int *pNumArgs),
294 (lpCmdLine, pNumArgs));
298 PWSTR *ppszThreadDescription),
299 (hThread, ppszThreadDescription));
303 PCWSTR lpThreadDescription),
304 (hThread, lpThreadDescription));
APR Platform Definitions.
APR Miscellaneous library routines.
APR Command Arguments (getopt)
APR Portability Routines.
APR Thread and Process Library.
dav_buffer apr_size_t size
Definition: mod_dav.h:461
int
Definition: mod_proxy.h:674
int apr_status_t
Definition: apr_errno.h:44
struct apr_pool_t apr_pool_t
Definition: apr_pools.h:60
apr_int64_t apr_interval_time_t
Definition: apr_time.h:55
#define APR_DECLARE_DATA
Definition: macros.h:17
#define BOOL
Definition: macros.h:25
#define malloc(x)
Definition: apr_private.h:170
Definition: apr_arch_misc.h:52
void * data
Definition: apr_arch_misc.h:57
void(* maintenance)(int, void *, int)
Definition: apr_arch_misc.h:56
apr_pool_t * p
Definition: apr_arch_misc.h:53
apr_proc_t * proc
Definition: apr_arch_misc.h:55
struct apr_other_child_rec_t * next
Definition: apr_arch_misc.h:54
Definition: apr_thread_proc.h:134
#define APR_DECLARE_LATE_DLL_FUNC(lib, rettype, calltype, fn, ord, args, names)
Definition: apr_arch_misc.h:176
apr_dlltoken_e
Definition: apr_arch_misc.h:157
@ DLL_NTDLL
Definition: apr_arch_misc.h:163
@ DLL_WINADVAPI
Definition: apr_arch_misc.h:159
@ DLL_WINSOCK2API
Definition: apr_arch_misc.h:161
@ DLL_WINSOCKAPI
Definition: apr_arch_misc.h:160
@ DLL_SHSTDAPI
Definition: apr_arch_misc.h:162
@ DLL_defined
Definition: apr_arch_misc.h:168
@ DLL_API_MS_WIN_DOWNLEVEL_SHELL32_L1_1_0
Definition: apr_arch_misc.h:165
@ DLL_IPHLPAPI
Definition: apr_arch_misc.h:164
@ DLL_WINBASEAPI
Definition: apr_arch_misc.h:158
APR_DECLARE_DATA apr_oslevel_e apr_os_level
apr_oslevel_e
Definition: apr_arch_misc.h:77
@ APR_WIN_ME
Definition: apr_arch_misc.h:85
@ APR_WIN_NT_4_SP4
Definition: apr_arch_misc.h:98
@ APR_WIN_95
Definition: apr_arch_misc.h:80
@ APR_WIN_NT
Definition: apr_arch_misc.h:91
@ APR_WIN_8
Definition: apr_arch_misc.h:112
@ APR_WIN_VISTA
Definition: apr_arch_misc.h:109
@ APR_WIN_2000_SP2
Definition: apr_arch_misc.h:104
@ APR_WIN_95_OSR2
Definition: apr_arch_misc.h:82
@ APR_WIN_8_1
Definition: apr_arch_misc.h:113
@ APR_WIN_NT_4_SP5
Definition: apr_arch_misc.h:99
@ APR_WIN_98
Definition: apr_arch_misc.h:83
@ APR_WIN_NT_4
Definition: apr_arch_misc.h:95
@ APR_WIN_CE_3
Definition: apr_arch_misc.h:89
@ APR_WIN_NT_3_5
Definition: apr_arch_misc.h:92
@ APR_WIN_10
Definition: apr_arch_misc.h:114
@ APR_WIN_7_SP1
Definition: apr_arch_misc.h:111
@ APR_WIN_NT_4_SP2
Definition: apr_arch_misc.h:96
@ APR_WIN_NT_4_SP3
Definition: apr_arch_misc.h:97
@ APR_WIN_2003
Definition: apr_arch_misc.h:108
@ APR_WIN_98_SE
Definition: apr_arch_misc.h:84
@ APR_WIN_2000_SP1
Definition: apr_arch_misc.h:103
@ APR_WIN_7
Definition: apr_arch_misc.h:110
@ APR_WIN_UNICODE
Definition: apr_arch_misc.h:87
@ APR_WIN_UNK
Definition: apr_arch_misc.h:78
@ APR_WIN_XP_SP1
Definition: apr_arch_misc.h:106
@ APR_WIN_2000
Definition: apr_arch_misc.h:102
@ APR_WIN_NT_4_SP6
Definition: apr_arch_misc.h:100
@ APR_WIN_UNSUP
Definition: apr_arch_misc.h:79
@ APR_WIN_95_B
Definition: apr_arch_misc.h:81
@ APR_WIN_XP
Definition: apr_arch_misc.h:105
@ APR_WIN_NT_3_51
Definition: apr_arch_misc.h:93
@ APR_WIN_XP_SP2
Definition: apr_arch_misc.h:107
#define CreateToolhelp32Snapshot
Definition: apr_arch_misc.h:248
DWORD apr_wait_for_single_object(HANDLE handle, apr_interval_time_t timeout)
#define Process32NextW
Definition: apr_arch_misc.h:266
FARPROC apr_load_dll_func(apr_dlltoken_e fnLib, char *fnName, int ordinal)
apr_status_t apr_get_oslevel(apr_oslevel_e *)
#define Process32FirstW
Definition: apr_arch_misc.h:257
int APR_DECLARE_DATA apr_app_init_complete
int apr_wastrtoastr(char const *const **retarr, wchar_t const *const *arr, int args)