upload http
[bottlenecks.git] / rubbos / app / httpd-2.0.64 / srclib / apr / include / arch / netware / apr_private.h
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 windows specific autoconf-like config file
20  * which unix would create at build time.
21  */
22
23 #ifdef NETWARE
24
25 #ifndef APR_PRIVATE_H
26 #define APR_PRIVATE_H
27
28 /* Include the public APR symbols, include our idea of the 'right'
29  * subset of the Windows.h header.  This saves us repetition.
30  */
31 #include "apr.h"
32
33 #include <sys/types.h>
34 #include <stddef.h>
35 #include <stdio.h>
36 #include <stdlib.h>
37 #include <time.h>
38 #include <library.h>
39 #include <netware.h>
40
41 /* Use this section to define all of the HAVE_FOO_H
42  * that are required to build properly.
43  */
44 #define HAVE_DLFCN_H    1
45 #define HAVE_LIMITS_H   1
46 #define HAVE_SIGNAL_H   1
47 #define HAVE_STDDEF_H   1
48 #define HAVE_STDLIB_H   1
49 #define HAVE_SYS_STAT_H 1
50 #define HAVE_SYS_MMAN_H 1
51 #define HAVE_FCNTL_H    1
52 #define HAVE_ICONV_H    1
53 #define HAVE_UTIME_H    1
54
55 #define HAVE_STRICMP    1
56 #define HAVE_STRNICMP   1
57 #define HAVE_STRDUP     1
58 #define HAVE_STRSTR     1
59 #define HAVE_MEMCHR     1
60 #define HAVE_CALLOC     1
61 #define HAVE_UTIME      1
62
63 #define HAVE_GETENV     1
64 #define HAVE_SETENV     1
65 #define HAVE_UNSETENV   1
66
67 #define HAVE_WRITEV     1
68
69 /*#define DSO_USE_DLFCN */
70
71 #ifdef NW_BUILD_IPV6
72 #define HAVE_GETADDRINFO 1
73 #define HAVE_GETNAMEINFO 1
74 #endif
75
76 /* 1 is used for SIGABRT on netware */
77 /* 2 is used for SIGFPE on netware */
78 /* 3 is used for SIGILL on netware */
79 /* 4 is used for SIGINT on netware */
80 /* 5 is used for SIGSEGV on netware */
81 /* 6 is used for SIGTERM on netware */
82 /* 7 is used for SIGPOLL on netware */
83
84 #define SIGKILL         11
85 #define SA_NOCLDSTOP    12
86 #define SIGALRM         13
87 #define SIGCHLD         14 
88 #define SIGCONT         15
89 #define SIGHUP          16
90 #define SIGPIPE         17
91 #define SIGQUIT         18
92 #define SIGSTOP         19
93 #define SIGTSTP         20
94 #define SIGTTIN         21
95 #define SIGTTOU         22
96 #define SIGUSR1         23
97 #define SIGUSR2         24
98     
99 #define SIGTRAP         25
100 #define SIGIOT          26
101 #define SIGBUS          27
102 #define SIGSTKFLT       28
103 #define SIGURG          29
104 #define SIGXCPU         30
105 #define SIGXFSZ         31
106 #define SIGVTALRM       32
107 #define SIGPROF         33
108 #define SIGWINCH        34
109 #define SIGIO           35
110
111 #if 0
112 #define __attribute__(__x) 
113
114 /* APR COMPATABILITY FUNCTIONS
115  * This section should be used to define functions and
116  * macros which are need to make Windows features look
117  * like POSIX features.
118  */
119 typedef void (Sigfunc)(int);
120 #endif
121
122 #define strcasecmp(s1, s2)       stricmp(s1, s2)
123 #define Sleep(t)                 delay(t)
124 #define lstat(a,b)               stat(a,b)
125 #define _getch()                 getcharacter()
126
127 #define SIZEOF_SHORT           2
128 #define SIZEOF_INT             4
129 #define SIZEOF_LONGLONG        8
130 #define SIZEOF_CHAR            1
131 #define SIZEOF_SSIZE_T         SIZEOF_INT
132
133 void netware_pool_proc_cleanup ();
134
135 /* NLM registration routines for managing which NLMs
136     are using the library. */
137 int register_NLM(void *NLMHandle);
138 int unregister_NLM(void *NLMHandle);
139
140 /* Application global data management */
141 extern int  gLibId;
142 extern void *gLibHandle;
143
144 typedef struct app_data {
145     int     initialized;
146     void*   gPool;
147     void*   gs_aHooksToSort;
148     void*   gs_phOptionalHooks;
149     void*   gs_phOptionalFunctions;
150     void*   gs_nlmhandle;
151     rtag_t  gs_startup_rtag;
152     rtag_t  gs_socket_rtag;
153     rtag_t  gs_lookup_rtag;
154     rtag_t  gs_event_rtag;
155     rtag_t  gs_pcp_rtag;
156 } APP_DATA;
157
158 int setGlobalPool(void *data);
159 void* getGlobalPool();
160 int setStatCache(void *data);
161 void* getStatCache();
162
163 /* Redefine malloc to use the library malloc call so 
164     that all of the memory resources will be owned
165     and can be shared by the library. */
166 #undef malloc
167 #define malloc(x) library_malloc(gLibHandle,x)
168
169 /*
170  * Include common private declarations.
171  */
172 #include "../apr_private_common.h"
173
174 #endif  /*APR_PRIVATE_H*/
175 #endif  /*NETWARE*/