1 | /* acconfig.h - autoheader configuration input |
---|
2 | * Rob Earhart |
---|
3 | */ |
---|
4 | /* |
---|
5 | * Copyright (c) 2001 Carnegie Mellon University. All rights reserved. |
---|
6 | * |
---|
7 | * Redistribution and use in source and binary forms, with or without |
---|
8 | * modification, are permitted provided that the following conditions |
---|
9 | * are met: |
---|
10 | * |
---|
11 | * 1. Redistributions of source code must retain the above copyright |
---|
12 | * notice, this list of conditions and the following disclaimer. |
---|
13 | * |
---|
14 | * 2. Redistributions in binary form must reproduce the above copyright |
---|
15 | * notice, this list of conditions and the following disclaimer in |
---|
16 | * the documentation and/or other materials provided with the |
---|
17 | * distribution. |
---|
18 | * |
---|
19 | * 3. The name "Carnegie Mellon University" must not be used to |
---|
20 | * endorse or promote products derived from this software without |
---|
21 | * prior written permission. For permission or any other legal |
---|
22 | * details, please contact |
---|
23 | * Office of Technology Transfer |
---|
24 | * Carnegie Mellon University |
---|
25 | * 5000 Forbes Avenue |
---|
26 | * Pittsburgh, PA 15213-3890 |
---|
27 | * (412) 268-4387, fax: (412) 268-7395 |
---|
28 | * tech-transfer@andrew.cmu.edu |
---|
29 | * |
---|
30 | * 4. Redistributions of any form whatsoever must retain the following |
---|
31 | * acknowledgment: |
---|
32 | * "This product includes software developed by Computing Services |
---|
33 | * at Carnegie Mellon University (http://www.cmu.edu/computing/)." |
---|
34 | * |
---|
35 | * CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO |
---|
36 | * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY |
---|
37 | * AND FITNESS, IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY BE LIABLE |
---|
38 | * FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
---|
39 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN |
---|
40 | * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING |
---|
41 | * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
---|
42 | */ |
---|
43 | |
---|
44 | #ifndef CONFIG_H |
---|
45 | #define CONFIG_H |
---|
46 | |
---|
47 | @TOP@ |
---|
48 | |
---|
49 | /* Our package */ |
---|
50 | #undef PACKAGE |
---|
51 | |
---|
52 | /* Our version */ |
---|
53 | #undef VERSION |
---|
54 | |
---|
55 | /* Set to the database name you want SASL to use for |
---|
56 | * username->secret lookups */ |
---|
57 | #undef SASL_DB_PATH |
---|
58 | |
---|
59 | /* what db package are we using? */ |
---|
60 | #undef SASL_GDBM |
---|
61 | #undef SASL_NDBM |
---|
62 | #undef SASL_BERKELEYDB |
---|
63 | |
---|
64 | /* which mechs can we link staticly? */ |
---|
65 | #undef STATIC_ANONYMOUS |
---|
66 | #undef STATIC_CRAMMD5 |
---|
67 | #undef STATIC_DIGESTMD5 |
---|
68 | #undef STATIC_GSSAPIV2 |
---|
69 | #undef STATIC_KERBEROS4 |
---|
70 | #undef STATIC_LOGIN |
---|
71 | #undef STATIC_MYSQL |
---|
72 | #undef STATIC_NTLM |
---|
73 | #undef STATIC_OTP |
---|
74 | #undef STATIC_PLAIN |
---|
75 | #undef STATIC_SASLDB |
---|
76 | #undef STATIC_SRP |
---|
77 | |
---|
78 | /* This is where plugins will live at runtime */ |
---|
79 | #undef PLUGINDIR |
---|
80 | |
---|
81 | /* Make autoheader happy */ |
---|
82 | #undef WITH_SYMBOL_UNDERSCORE |
---|
83 | |
---|
84 | /* should we use the internal rc4 library? */ |
---|
85 | #undef WITH_RC4 |
---|
86 | |
---|
87 | /* do we have des available? */ |
---|
88 | #undef WITH_DES |
---|
89 | #undef WITH_SSL_DES |
---|
90 | |
---|
91 | /* what about OpenSSL? */ |
---|
92 | #undef HAVE_OPENSSL |
---|
93 | |
---|
94 | /* should we support srp_setpass */ |
---|
95 | #undef DO_SRP_SETPASS |
---|
96 | |
---|
97 | /* do we have OPIE for server-side OTP support? */ |
---|
98 | #undef HAVE_OPIE |
---|
99 | |
---|
100 | /* Do we have kerberos for plaintext password checking? */ |
---|
101 | #undef HAVE_KRB |
---|
102 | |
---|
103 | /* do we have SIA for plaintext password checking? */ |
---|
104 | #undef HAVE_SIA |
---|
105 | |
---|
106 | /* do we have PAM for plaintext password checking? */ |
---|
107 | #undef HAVE_PAM |
---|
108 | |
---|
109 | /* what flavor of GSSAPI are we using? */ |
---|
110 | #undef HAVE_GSS_C_NT_HOSTBASED_SERVICE |
---|
111 | |
---|
112 | /* do we have gssapi.h or gssapi/gssapi.h? */ |
---|
113 | #undef HAVE_GSSAPI_H |
---|
114 | |
---|
115 | /* do we have getsubopt()? */ |
---|
116 | #undef HAVE_GETSUBOPT |
---|
117 | |
---|
118 | /* Does your system have the snprintf() call? */ |
---|
119 | #undef HAVE_SNPRINTF |
---|
120 | |
---|
121 | /* Does your system have the vsnprintf() call? */ |
---|
122 | #undef HAVE_VSNPRINTF |
---|
123 | |
---|
124 | /* does your system have gettimeofday()? */ |
---|
125 | #undef HAVE_GETTIMEOFDAY |
---|
126 | |
---|
127 | /* should we include support for the pwcheck daemon? */ |
---|
128 | #undef HAVE_PWCHECK |
---|
129 | |
---|
130 | /* where do we look for the pwcheck daemon? */ |
---|
131 | #undef PWCHECKDIR |
---|
132 | |
---|
133 | /* should we include support for the saslauth daemon? */ |
---|
134 | #undef HAVE_SASLAUTHD |
---|
135 | |
---|
136 | /* where does saslauthd look for the communication socket? */ |
---|
137 | #undef PATH_SASLAUTHD_RUNDIR |
---|
138 | |
---|
139 | /* do we want alwaystrue (discouraged)? */ |
---|
140 | #undef HAVE_ALWAYSTRUE |
---|
141 | |
---|
142 | /* are we linking against DMALLOC? */ |
---|
143 | #undef WITH_DMALLOC |
---|
144 | |
---|
145 | /* should we support sasl_checkapop */ |
---|
146 | #undef DO_SASL_CHECKAPOP |
---|
147 | |
---|
148 | /* do we pay attention to IP addresses in the kerberos 4 tickets? */ |
---|
149 | #undef KRB4_IGNORE_IP_ADDRESS |
---|
150 | |
---|
151 | /* do we have a preferred mechanism, or should we just pick the highest ssf? */ |
---|
152 | #undef PREFER_MECH |
---|
153 | |
---|
154 | /* define if your compile has __attribute__ */ |
---|
155 | #undef HAVE___ATTRIBUTE__ |
---|
156 | |
---|
157 | /* define if you have unistd.h */ |
---|
158 | #undef HAVE_UNISTD_H |
---|
159 | |
---|
160 | /* define if your system has getpid() */ |
---|
161 | #undef HAVE_GETPID |
---|
162 | |
---|
163 | /* do we have an inttypes.h? */ |
---|
164 | #undef HAVE_INTTYPES_H |
---|
165 | |
---|
166 | /* do we have sys/uio.h? */ |
---|
167 | #undef HAVE_SYS_UIO_H |
---|
168 | |
---|
169 | /* do we have sys/param.h? */ |
---|
170 | #undef HAVE_SYS_PARAM_H |
---|
171 | |
---|
172 | /* do we have sysexits.h? */ |
---|
173 | #undef HAVE_SYSEXITS_H |
---|
174 | |
---|
175 | /* stdarg.h? varargs.h? */ |
---|
176 | #undef HAVE_STDARG_H |
---|
177 | #undef HAVE_VARARGS_H |
---|
178 | |
---|
179 | /* Do we need a leading _ for dlsym? */ |
---|
180 | #undef DLSYM_NEEDS_UNDERSCORE |
---|
181 | |
---|
182 | /* Does libtool support shared libs on this system? */ |
---|
183 | #undef HAVE_DLFCN_H |
---|
184 | #undef DO_DLOPEN |
---|
185 | |
---|
186 | /* Should we try to dlopen stuff when we are staticly compiled? */ |
---|
187 | #undef TRY_DLOPEN_WHEN_STATIC |
---|
188 | |
---|
189 | /* define if your system has getaddrinfo() */ |
---|
190 | #undef HAVE_GETADDRINFO |
---|
191 | |
---|
192 | /* define if your system has getnameinfo() */ |
---|
193 | #undef HAVE_GETNAMEINFO |
---|
194 | |
---|
195 | /* define if your system has struct sockaddr_storage */ |
---|
196 | #undef HAVE_STRUCT_SOCKADDR_STORAGE |
---|
197 | |
---|
198 | /* Define if you have ss_family in struct sockaddr_storage. */ |
---|
199 | #undef HAVE_SS_FAMILY |
---|
200 | |
---|
201 | /* do we have socklen_t? */ |
---|
202 | #undef HAVE_SOCKLEN_T |
---|
203 | #undef HAVE_SOCKADDR_SA_LEN |
---|
204 | |
---|
205 | /* do we use doors for IPC? */ |
---|
206 | #undef USE_DOORS |
---|
207 | |
---|
208 | @BOTTOM@ |
---|
209 | |
---|
210 | /* Create a struct iovec if we need one */ |
---|
211 | #if !defined(_WIN32) && !defined(HAVE_SYS_UIO_H) |
---|
212 | /* (win32 is handled in sasl.h) */ |
---|
213 | struct iovec { |
---|
214 | char *iov_base; |
---|
215 | long iov_len; |
---|
216 | }; |
---|
217 | #else |
---|
218 | #include <sys/types.h> |
---|
219 | #include <sys/uio.h> |
---|
220 | #endif |
---|
221 | |
---|
222 | /* location of the random number generator */ |
---|
223 | #ifndef DEV_RANDOM |
---|
224 | #define DEV_RANDOM "/dev/random" |
---|
225 | #endif |
---|
226 | |
---|
227 | /* if we've got krb_get_err_txt, we might as well use it; |
---|
228 | especially since krb_err_txt isn't in some newer distributions |
---|
229 | (MIT Kerb for Mac 4 being a notable example). If we don't have |
---|
230 | it, we fall back to the krb_err_txt array */ |
---|
231 | #ifdef HAVE_KRB_GET_ERR_TEXT |
---|
232 | #define get_krb_err_txt krb_get_err_text |
---|
233 | #else |
---|
234 | #define get_krb_err_txt(X) (krb_err_txt[(X)]) |
---|
235 | #endif |
---|
236 | |
---|
237 | /* Make Solaris happy... */ |
---|
238 | #ifndef __EXTENSIONS__ |
---|
239 | #define __EXTENSIONS__ |
---|
240 | #endif |
---|
241 | |
---|
242 | /* Make Linux happy... */ |
---|
243 | #ifndef _GNU_SOURCE |
---|
244 | #define _GNU_SOURCE |
---|
245 | #endif |
---|
246 | |
---|
247 | #ifndef HAVE___ATTRIBUTE__ |
---|
248 | /* Can't use attributes... */ |
---|
249 | #define __attribute__(foo) |
---|
250 | #endif |
---|
251 | |
---|
252 | #define SASL_PATH_ENV_VAR "SASL_PATH" |
---|
253 | |
---|
254 | #include <stdlib.h> |
---|
255 | #include <sys/types.h> |
---|
256 | #include <sys/socket.h> |
---|
257 | #ifndef WIN32 |
---|
258 | # include <netdb.h> |
---|
259 | # ifdef HAVE_SYS_PARAM_H |
---|
260 | # include <sys/param.h> |
---|
261 | # endif |
---|
262 | #else /* WIN32 */ |
---|
263 | # include <winsock.h> |
---|
264 | #endif /* WIN32 */ |
---|
265 | #include <string.h> |
---|
266 | |
---|
267 | #include <netinet/in.h> |
---|
268 | |
---|
269 | #ifndef HAVE_SOCKLEN_T |
---|
270 | typedef unsigned int socklen_t; |
---|
271 | #endif /* HAVE_SOCKLEN_T */ |
---|
272 | |
---|
273 | #ifndef HAVE_STRUCT_SOCKADDR_STORAGE |
---|
274 | #define _SS_MAXSIZE 128 /* Implementation specific max size */ |
---|
275 | #define _SS_PADSIZE (_SS_MAXSIZE - sizeof (struct sockaddr)) |
---|
276 | |
---|
277 | struct sockaddr_storage { |
---|
278 | struct sockaddr ss_sa; |
---|
279 | char __ss_pad2[_SS_PADSIZE]; |
---|
280 | }; |
---|
281 | # define ss_family ss_sa.sa_family |
---|
282 | #endif /* !HAVE_STRUCT_SOCKADDR_STORAGE */ |
---|
283 | |
---|
284 | #ifndef AF_INET6 |
---|
285 | /* Define it to something that should never appear */ |
---|
286 | #define AF_INET6 AF_MAX |
---|
287 | #endif |
---|
288 | |
---|
289 | #ifndef HAVE_GETADDRINFO |
---|
290 | #define getaddrinfo sasl_getaddrinfo |
---|
291 | #define freeaddrinfo sasl_freeaddrinfo |
---|
292 | #define getnameinfo sasl_getnameinfo |
---|
293 | #define gai_strerror sasl_gai_strerror |
---|
294 | #include "gai.h" |
---|
295 | #endif |
---|
296 | |
---|
297 | /* Defined in RFC 1035. max strlen is only 253 due to length bytes. */ |
---|
298 | #ifndef MAXHOSTNAMELEN |
---|
299 | #define MAXHOSTNAMELEN 255 |
---|
300 | #endif |
---|
301 | |
---|
302 | #ifndef HAVE_SYSEXITS_H |
---|
303 | #include "exits.h" |
---|
304 | #else |
---|
305 | #include "sysexits.h" |
---|
306 | #endif |
---|
307 | |
---|
308 | #ifndef NI_WITHSCOPEID |
---|
309 | #define NI_WITHSCOPEID 0 |
---|
310 | #endif |
---|
311 | |
---|
312 | /* Get the correct time.h */ |
---|
313 | #if TIME_WITH_SYS_TIME |
---|
314 | # include <sys/time.h> |
---|
315 | # include <time.h> |
---|
316 | #else |
---|
317 | # if HAVE_SYS_TIME_H |
---|
318 | # include <sys/time.h> |
---|
319 | # else |
---|
320 | # include <time.h> |
---|
321 | # endif |
---|
322 | #endif |
---|
323 | |
---|
324 | #endif /* CONFIG_H */ |
---|