Apache HTTPD
apr_private.h
Go to the documentation of this file.
1/* Licensed to the Apache Software Foundation (ASF) under one or more
2 * contributor license agreements. See the NOTICE file distributed with
3 * this work for additional information regarding copyright ownership.
4 * The ASF licenses this file to You under the Apache License, Version 2.0
5 * (the "License"); you may not use this file except in compliance with
6 * the License. You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17/*
18 * Note:
19 * This is the netware-specific autoconf-like config file
20 * which unix creates at ./configure time.
21 */
22
23#ifdef NETWARE
24
25#ifndef APR_PRIVATE_H
26#define APR_PRIVATE_H
27
28/* Pick up publicly advertised headers and symbols before the
29 * APR internal private headers and symbols
30 */
31#include <apr.h>
32
33/* Pick up privately consumed headers */
34#include <ndkvers.h>
35
36/* Include alloca.h to get compiler-dependent defines */
37#include <alloca.h>
38
39#include <sys/types.h>
40#include <stddef.h>
41#include <stdio.h>
42#include <stdlib.h>
43#include <time.h>
44#include <library.h>
45#include <netware.h>
46
47/* Use this section to define all of the HAVE_FOO_H
48 * that are required to build properly.
49 */
50#define HAVE_DLFCN_H 1
51#define HAVE_LIMITS_H 1
52#define HAVE_SIGNAL_H 1
53#define HAVE_STDDEF_H 1
54#define HAVE_STDLIB_H 1
55#ifndef USE_WINSOCK
56#define HAVE_SYS_SELECT_H 1
57#define HAVE_WRITEV 1
58#endif
59#define HAVE_SYS_STAT_H 1
60#define HAVE_SYS_MMAN_H 1
61#define HAVE_FCNTL_H 1
62#define HAVE_ICONV_H 1
63#define HAVE_UTIME_H 1
64
65#define HAVE_STRICMP 1
66#define HAVE_STRNICMP 1
67#define HAVE_STRDUP 1
68#define HAVE_STRSTR 1
69#define HAVE_MEMCHR 1
70#define HAVE_CALLOC 1
71#define HAVE_UTIME 1
72
73#define HAVE_GETENV 1
74#define HAVE_SETENV 1
75#define HAVE_UNSETENV 1
76
77#define HAVE_WRITEV 1
78
79#define HAVE_GETPASS_R 1
80/*
81 * Hack around older NDKs which have only the getpassword() function,
82 * a threadsafe, API-equivalent of getpass_r().
83 */
84#if (CURRENT_NDK_THRESHOLD < 709060000)
85#define getpass_r getpassword
86#endif
87
88/*#define DSO_USE_DLFCN */
89
90#ifdef NW_BUILD_IPV6
91#define HAVE_GETADDRINFO 1
92#define HAVE_GETNAMEINFO 1
93#endif
94
95/* 1 is used for SIGABRT on netware */
96/* 2 is used for SIGFPE on netware */
97/* 3 is used for SIGILL on netware */
98/* 4 is used for SIGINT on netware */
99/* 5 is used for SIGSEGV on netware */
100/* 6 is used for SIGTERM on netware */
101/* 7 is used for SIGPOLL on netware */
102
103#if (CURRENT_NDK_THRESHOLD < 306030000)
104#define SIGKILL 11
105#define SIGALRM 13
106#define SIGCHLD 14
107#define SIGCONT 15
108#define SIGHUP 16
109#define SIGPIPE 17
110#define SIGQUIT 18
111#define SIGSTOP 19
112#define SIGTSTP 20
113#define SIGTTIN 21
114#define SIGTTOU 22
115#define SIGUSR1 23
116#define SIGUSR2 24
117#endif
118
119#define SIGTRAP 25
120#define SIGIOT 26
121#define SIGSTKFLT 28
122#define SIGURG 29
123#define SIGXCPU 30
124#define SIGXFSZ 31
125#define SIGVTALRM 32
126#define SIGPROF 33
127#define SIGWINCH 34
128#define SIGIO 35
129
130#if (CURRENT_NDK_THRESHOLD < 406230000)
131#undef SA_NOCLDSTOP
132#define SA_NOCLDSTOP 0x00000001
133#endif
134#ifndef SIGBUS
135#define SIGBUS SIGSEGV
136#endif
137
138#define _getch getcharacter
139
140#define SIZEOF_SHORT 2
141#define SIZEOF_INT 4
142#define SIZEOF_LONGLONG 8
143#define SIZEOF_CHAR 1
144#define SIZEOF_SSIZE_T SIZEOF_INT
145
147
148/* NLM registration routines for managing which NLMs
149 are using the library. */
150int register_NLM(void *NLMHandle);
151int unregister_NLM(void *NLMHandle);
152
153/* Application global data management */
154extern int gLibId;
155extern void *gLibHandle;
156
157typedef struct app_data {
158 int initialized;
159 void* gPool;
160 void* gs_aHooksToSort;
161 void* gs_phOptionalHooks;
163 void* gs_nlmhandle;
169 void* gs_ldap_xref_lock;
170 void* gs_xref_head;
171} APP_DATA;
172
173int setGlobalPool(void *data);
174void* getGlobalPool();
175int setStatCache(void *data);
176void* getStatCache();
177
178/* Redefine malloc to use the library malloc call so
179 that all of the memory resources will be owned
180 and can be shared by the library. */
181#undef malloc
182#define malloc(x) library_malloc(gLibHandle,x)
183#ifndef __MWERKS__
184#define _alloca alloca
185#endif
186
187/* 64-bit integer conversion function */
188#define APR_INT64_STRFN strtoll
189
190#if APR_HAS_LARGE_FILES
191#define APR_OFF_T_STRFN strtoll
192#else
193#define APR_OFF_T_STRFN strtol
194#endif
195
196/* used to check DWORD overflow for 64bit compiles */
197#define APR_DWORD_MAX 0xFFFFFFFFUL
198
199/*
200 * Include common private declarations.
201 */
203
204#endif /*APR_PRIVATE_H*/
205#endif /*NETWARE*/
apr_size_t size
void * data
static int initialized
Definition md_crypt.c:68
int register_NLM(void *NLMHandle)
Definition libprews.c:113
void * gLibHandle
Definition libprews.c:27
int gLibId
Definition libprews.c:26
void * getGlobalPool()
Definition libprews.c:176
int setGlobalPool(void *data)
Definition libprews.c:162
int unregister_NLM(void *NLMHandle)
Definition libprews.c:138