1/* config.h.in.  Generated from configure.in by autoheader.  */
2
3
4/* acconfig.h - autoheader configuration input */
5/*
6 * Copyright (c) 1998-2003 Carnegie Mellon University.  All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
10 * are met:
11 *
12 * 1. Redistributions of source code must retain the above copyright
13 *    notice, this list of conditions and the following disclaimer.
14 *
15 * 2. Redistributions in binary form must reproduce the above copyright
16 *    notice, this list of conditions and the following disclaimer in
17 *    the documentation and/or other materials provided with the
18 *    distribution.
19 *
20 * 3. The name "Carnegie Mellon University" must not be used to
21 *    endorse or promote products derived from this software without
22 *    prior written permission. For permission or any other legal
23 *    details, please contact
24 *      Office of Technology Transfer
25 *      Carnegie Mellon University
26 *      5000 Forbes Avenue
27 *      Pittsburgh, PA  15213-3890
28 *      (412) 268-4387, fax: (412) 268-7395
29 *      tech-transfer@andrew.cmu.edu
30 *
31 * 4. Redistributions of any form whatsoever must retain the following
32 *    acknowledgment:
33 *    "This product includes software developed by Computing Services
34 *     at Carnegie Mellon University (http://www.cmu.edu/computing/)."
35 *
36 * CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO
37 * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
38 * AND FITNESS, IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY BE LIABLE
39 * FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
40 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
41 * AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
42 * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
43 */
44
45#ifndef CONFIG_H
46#define CONFIG_H
47
48
49/* Runtime config file location */
50#undef CONFIGDIR
51
52/* Do we need a leading _ for dlsym? */
53#undef DLSYM_NEEDS_UNDERSCORE
54
55/* Should we build a shared plugin (via dlopen) library? */
56#undef DO_DLOPEN
57
58/* should we support sasl_checkapop? */
59#undef DO_SASL_CHECKAPOP
60
61/* should we support setpass() for SRP? */
62#undef DO_SRP_SETPASS
63
64/* should we mutex-wrap calls into the GSS library? */
65#undef GSS_USE_MUTEXES
66
67/* Enable 'alwaystrue' password verifier? */
68#undef HAVE_ALWAYSTRUE
69
70/* Include support for Courier's authdaemond? */
71#undef HAVE_AUTHDAEMON
72
73/* Define to 1 if you have the <des.h> header file. */
74#undef HAVE_DES_H
75
76/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
77   */
78#undef HAVE_DIRENT_H
79
80/* Define to 1 if you have the <dlfcn.h> header file. */
81#undef HAVE_DLFCN_H
82
83/* Define to 1 if you have the `dns_lookup' function. */
84#undef HAVE_DNS_LOOKUP
85
86/* Define to 1 if you have the `dn_expand' function. */
87#undef HAVE_DN_EXPAND
88
89/* Define to 1 if you have the <fcntl.h> header file. */
90#undef HAVE_FCNTL_H
91
92/* Do we have a getaddrinfo? */
93#undef HAVE_GETADDRINFO
94
95/* Define to 1 if you have the `getdomainname' function. */
96#undef HAVE_GETDOMAINNAME
97
98/* Define to 1 if you have the `gethostname' function. */
99#undef HAVE_GETHOSTNAME
100
101/* Do we have a getnameinfo() function? */
102#undef HAVE_GETNAMEINFO
103
104/* Define to 1 if you have the `getpassphrase' function. */
105#undef HAVE_GETPASSPHRASE
106
107/* Define to 1 if you have the `getpwnam' function. */
108#undef HAVE_GETPWNAM
109
110/* Define to 1 if you have the `getspnam' function. */
111#undef HAVE_GETSPNAM
112
113/* do we have getsubopt()? */
114#undef HAVE_GETSUBOPT
115
116/* Define to 1 if you have the `gettimeofday' function. */
117#undef HAVE_GETTIMEOFDAY
118
119/* Define to 1 if you have the <gssapi/gssapi_ext.h> header file. */
120#undef HAVE_GSSAPI_GSSAPI_EXT_H
121
122/* Define if you have the gssapi.h header file */
123#undef HAVE_GSSAPI_H
124
125/* Define to 1 if you have the `gsskrb5_register_acceptor_identity' function.
126   */
127#undef HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY
128
129/* Define if your GSSAPI implementation defines GSS_C_NT_HOSTBASED_SERVICE */
130#undef HAVE_GSS_C_NT_HOSTBASED_SERVICE
131
132/* Define if your GSSAPI implementation defines GSS_C_NT_USER_NAME */
133#undef HAVE_GSS_C_NT_USER_NAME
134
135/* Define to 1 if you have the `gss_decapsulate_token' function. */
136#undef HAVE_GSS_DECAPSULATE_TOKEN
137
138/* Define to 1 if you have the `gss_encapsulate_token' function. */
139#undef HAVE_GSS_ENCAPSULATE_TOKEN
140
141/* Define to 1 if you have the `gss_get_name_attribute' function. */
142#undef HAVE_GSS_GET_NAME_ATTRIBUTE
143
144/* Define to 1 if you have the `gss_oid_equal' function. */
145#undef HAVE_GSS_OID_EQUAL
146
147/* Define if your GSSAPI implementation supports SPNEGO */
148#undef HAVE_GSS_SPNEGO
149
150/* Define to 1 if you have the `inet_aton' function. */
151#undef HAVE_INET_ATON
152
153/* Define to 1 if you have the <inttypes.h> header file. */
154#undef HAVE_INTTYPES_H
155
156/* Define to 1 if you have the `jrand48' function. */
157#undef HAVE_JRAND48
158
159/* Do we have Kerberos 4 Support? */
160#undef HAVE_KRB
161
162/* Define to 1 if you have the `krb_get_err_text' function. */
163#undef HAVE_KRB_GET_ERR_TEXT
164
165/* Define to 1 if you have the <lber.h> header file. */
166#undef HAVE_LBER_H
167
168/* Define to 1 if you have the <ldap.h> header file. */
169#undef HAVE_LDAP_H
170
171/* Define to 1 if you have the `resolv' library (-lresolv). */
172#undef HAVE_LIBRESOLV
173
174/* Define to 1 if you have the <limits.h> header file. */
175#undef HAVE_LIMITS_H
176
177/* Define to 1 if you have the <malloc.h> header file. */
178#undef HAVE_MALLOC_H
179
180/* Define to 1 if you have the `memcpy' function. */
181#undef HAVE_MEMCPY
182
183/* Define to 1 if you have the <memory.h> header file. */
184#undef HAVE_MEMORY_H
185
186/* Define to 1 if you have the `mkdir' function. */
187#undef HAVE_MKDIR
188
189/* Do we have mysql support? */
190#undef HAVE_MYSQL
191
192/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
193#undef HAVE_NDIR_H
194
195/* Do we have OpenSSL? */
196#undef HAVE_OPENSSL
197
198/* Use OPIE for server-side OTP? */
199#undef HAVE_OPIE
200
201/* Define to 1 if you have the <pam/pam_appl.h> header file. */
202#undef HAVE_PAM_PAM_APPL_H
203
204/* Define to 1 if you have the <paths.h> header file. */
205#undef HAVE_PATHS_H
206
207/* Do we have Postgres support? */
208#undef HAVE_PGSQL
209
210/* Include Support for pwcheck daemon? */
211#undef HAVE_PWCHECK
212
213/* Include support for saslauthd? */
214#undef HAVE_SASLAUTHD
215
216/* Define to 1 if you have the <security/pam_appl.h> header file. */
217#undef HAVE_SECURITY_PAM_APPL_H
218
219/* Define to 1 if you have the `select' function. */
220#undef HAVE_SELECT
221
222/* Does the system have snprintf()? */
223#undef HAVE_SNPRINTF
224
225/* Does sockaddr have an sa_len? */
226#undef HAVE_SOCKADDR_SA_LEN
227
228/* Define to 1 if you have the `socket' function. */
229#undef HAVE_SOCKET
230
231/* Do we have a socklen_t? */
232#undef HAVE_SOCKLEN_T
233
234/* Do we have SQLite support? */
235#undef HAVE_SQLITE
236
237/* Do we have SQLite3 support? */
238#undef HAVE_SQLITE3
239
240/* Is there an ss_family in sockaddr_storage? */
241#undef HAVE_SS_FAMILY
242
243/* Define to 1 if you have the <stdarg.h> header file. */
244#undef HAVE_STDARG_H
245
246/* Define to 1 if you have the <stdint.h> header file. */
247#undef HAVE_STDINT_H
248
249/* Define to 1 if you have the <stdlib.h> header file. */
250#undef HAVE_STDLIB_H
251
252/* Define to 1 if you have the `strchr' function. */
253#undef HAVE_STRCHR
254
255/* Define to 1 if you have the `strdup' function. */
256#undef HAVE_STRDUP
257
258/* Define to 1 if you have the `strerror' function. */
259#undef HAVE_STRERROR
260
261/* Define to 1 if you have the <strings.h> header file. */
262#undef HAVE_STRINGS_H
263
264/* Define to 1 if you have the <string.h> header file. */
265#undef HAVE_STRING_H
266
267/* Define to 1 if you have the `strspn' function. */
268#undef HAVE_STRSPN
269
270/* Define to 1 if you have the `strstr' function. */
271#undef HAVE_STRSTR
272
273/* Define to 1 if you have the `strtol' function. */
274#undef HAVE_STRTOL
275
276/* Do we have struct sockaddr_stroage? */
277#undef HAVE_STRUCT_SOCKADDR_STORAGE
278
279/* Define to 1 if you have the <sysexits.h> header file. */
280#undef HAVE_SYSEXITS_H
281
282/* Define to 1 if you have the `syslog' function. */
283#undef HAVE_SYSLOG
284
285/* Define to 1 if you have the <syslog.h> header file. */
286#undef HAVE_SYSLOG_H
287
288/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
289   */
290#undef HAVE_SYS_DIR_H
291
292/* Define to 1 if you have the <sys/file.h> header file. */
293#undef HAVE_SYS_FILE_H
294
295/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
296   */
297#undef HAVE_SYS_NDIR_H
298
299/* Define to 1 if you have the <sys/param.h> header file. */
300#undef HAVE_SYS_PARAM_H
301
302/* Define to 1 if you have the <sys/stat.h> header file. */
303#undef HAVE_SYS_STAT_H
304
305/* Define to 1 if you have the <sys/time.h> header file. */
306#undef HAVE_SYS_TIME_H
307
308/* Define to 1 if you have the <sys/types.h> header file. */
309#undef HAVE_SYS_TYPES_H
310
311/* Define to 1 if you have the <sys/uio.h> header file. */
312#undef HAVE_SYS_UIO_H
313
314/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
315#undef HAVE_SYS_WAIT_H
316
317/* Define to 1 if you have the <unistd.h> header file. */
318#undef HAVE_UNISTD_H
319
320/* Define to 1 if you have the <varargs.h> header file. */
321#undef HAVE_VARARGS_H
322
323/* Does the system have vsnprintf()? */
324#undef HAVE_VSNPRINTF
325
326/* define if your compiler has __attribute__ */
327#undef HAVE___ATTRIBUTE__
328
329/* Should we keep handle to Berkeley DB open in SASLDB plugin? */
330#undef KEEP_DB_OPEN
331
332/* Ignore IP Address in Kerberos 4 tickets? */
333#undef KRB4_IGNORE_IP_ADDRESS
334
335/* Name of package */
336#undef PACKAGE
337
338/* Define to the address where bug reports for this package should be sent. */
339#undef PACKAGE_BUGREPORT
340
341/* Define to the full name of this package. */
342#undef PACKAGE_NAME
343
344/* Define to the full name and version of this package. */
345#undef PACKAGE_STRING
346
347/* Define to the one symbol short name of this package. */
348#undef PACKAGE_TARNAME
349
350/* Define to the version of this package. */
351#undef PACKAGE_VERSION
352
353/* Where do we look for Courier authdaemond's socket? */
354#undef PATH_AUTHDAEMON_SOCKET
355
356/* Where do we look for saslauthd's socket? */
357#undef PATH_SASLAUTHD_RUNDIR
358
359/* Runtime plugin location */
360#undef PLUGINDIR
361
362/* Force a preferred mechanism */
363#undef PREFER_MECH
364
365/* Location of pwcheck socket */
366#undef PWCHECKDIR
367
368/* Define as the return type of signal handlers (`int' or `void'). */
369#undef RETSIGTYPE
370
371/* Use BerkeleyDB for SASLdb */
372#undef SASL_BERKELEYDB
373
374/* Path to default SASLdb database */
375#undef SASL_DB_PATH
376
377/* File to use for source of randomness */
378#undef SASL_DEV_RANDOM
379
380/* Use GDBM for SASLdb */
381#undef SASL_GDBM
382
383/* Use NDBM for SASLdb */
384#undef SASL_NDBM
385
386/* The size of `long', as computed by sizeof. */
387#undef SIZEOF_LONG
388
389/* Link ANONYMOUS Statically */
390#undef STATIC_ANONYMOUS
391
392/* Link CRAM-MD5 Statically */
393#undef STATIC_CRAMMD5
394
395/* Link DIGEST-MD5 Statically */
396#undef STATIC_DIGESTMD5
397
398/* Link GSSAPI Statically */
399#undef STATIC_GSSAPIV2
400
401/* User KERBEROS_V4 Staticly */
402#undef STATIC_KERBEROS4
403
404/* Link ldapdb plugin Statically */
405#undef STATIC_LDAPDB
406
407/* Link LOGIN Statically */
408#undef STATIC_LOGIN
409
410/* Link NTLM Statically */
411#undef STATIC_NTLM
412
413/* Link OTP Statically */
414#undef STATIC_OTP
415
416/* Link PASSDSS Statically */
417#undef STATIC_PASSDSS
418
419/* Link PLAIN Staticly */
420#undef STATIC_PLAIN
421
422/* Link SASLdb Staticly */
423#undef STATIC_SASLDB
424
425/* Link SCRAM Statically */
426#undef STATIC_SCRAM
427
428/* Link SQL plugin statically */
429#undef STATIC_SQL
430
431/* Link SRP Statically */
432#undef STATIC_SRP
433
434/* Define to 1 if you have the ANSI C header files. */
435#undef STDC_HEADERS
436
437/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
438#undef TIME_WITH_SYS_TIME
439
440/* Should we try to dlopen() plugins while statically compiled? */
441#undef TRY_DLOPEN_WHEN_STATIC
442
443/* use the doors IPC API for saslauthd? */
444#undef USE_DOORS
445
446/* Version number of package */
447#undef VERSION
448
449/* Use DES */
450#undef WITH_DES
451
452/* Linking against dmalloc? */
453#undef WITH_DMALLOC
454
455/* Use internal RC4 implementation? */
456#undef WITH_RC4
457
458/* Use OpenSSL DES Implementation */
459#undef WITH_SSL_DES
460
461/* Define to empty if `const' does not conform to ANSI C. */
462#undef const
463
464/* Define to `__inline__' or `__inline' if that's what the C compiler
465   calls it, or to nothing if 'inline' is not supported under any name.  */
466#ifndef __cplusplus
467#undef inline
468#endif
469
470/* Define to `int' if <sys/types.h> does not define. */
471#undef mode_t
472
473/* Define to `int' if <sys/types.h> does not define. */
474#undef pid_t
475
476
477
478
479/* Create a struct iovec if we need one */
480#if !defined(_WIN32)
481#if !defined(HAVE_SYS_UIO_H)
482/* (win32 is handled in sasl.h) */
483struct iovec {
484    char *iov_base;
485    long iov_len;
486};
487#else
488#include <sys/types.h>
489#include <sys/uio.h>
490#endif
491#endif
492
493/* location of the random number generator */
494#ifdef DEV_RANDOM
495#undef DEV_RANDOM
496#endif
497#define DEV_RANDOM SASL_DEV_RANDOM
498
499/* if we've got krb_get_err_txt, we might as well use it;
500   especially since krb_err_txt isn't in some newer distributions
501   (MIT Kerb for Mac 4 being a notable example). If we don't have
502   it, we fall back to the krb_err_txt array */
503#ifdef HAVE_KRB_GET_ERR_TEXT
504#define get_krb_err_txt krb_get_err_text
505#else
506#define get_krb_err_txt(X) (krb_err_txt[(X)])
507#endif
508
509/* Make Solaris happy... */
510#ifndef __EXTENSIONS__
511#define __EXTENSIONS__
512#endif
513
514/* Make Linux happy... */
515#ifndef _GNU_SOURCE
516#define _GNU_SOURCE
517#endif
518
519#ifndef HAVE___ATTRIBUTE__
520/* Can't use attributes... */
521#define __attribute__(foo)
522#endif
523
524#define SASL_PATH_ENV_VAR "SASL_PATH"
525#define SASL_CONF_PATH_ENV_VAR "SASL_CONF_PATH"
526
527#include <stdlib.h>
528#include <sys/types.h>
529#ifndef WIN32
530# include <sys/socket.h>
531# include <netdb.h>
532# include <netinet/in.h>
533# ifdef HAVE_SYS_PARAM_H
534#  include <sys/param.h>
535# endif
536#else /* WIN32 */
537# include <winsock2.h>
538#endif /* WIN32 */
539#include <string.h>
540
541#ifndef HAVE_SOCKLEN_T
542typedef unsigned int socklen_t;
543#endif /* HAVE_SOCKLEN_T */
544
545#if !defined(HAVE_STRUCT_SOCKADDR_STORAGE) && !defined(WIN32)
546#define	_SS_MAXSIZE	128	/* Implementation specific max size */
547#define	_SS_PADSIZE	(_SS_MAXSIZE - sizeof (struct sockaddr))
548
549struct sockaddr_storage {
550	struct	sockaddr ss_sa;
551	char		__ss_pad2[_SS_PADSIZE];
552};
553# define ss_family ss_sa.sa_family
554#endif /* !HAVE_STRUCT_SOCKADDR_STORAGE */
555
556#ifndef AF_INET6
557/* Define it to something that should never appear */
558#define	AF_INET6	AF_MAX
559#endif
560
561#ifndef HAVE_GETADDRINFO
562#define	getaddrinfo	sasl_getaddrinfo
563#define	freeaddrinfo	sasl_freeaddrinfo
564#define	gai_strerror	sasl_gai_strerror
565#endif
566
567#ifndef HAVE_GETNAMEINFO
568#define	getnameinfo	sasl_getnameinfo
569#endif
570
571#if !defined(HAVE_GETNAMEINFO) || !defined(HAVE_GETADDRINFO)
572#include "gai.h"
573#endif
574
575#ifndef AI_NUMERICHOST   /* support glibc 2.0.x */
576#define AI_NUMERICHOST  4
577#define NI_NUMERICHOST  2
578#define NI_NAMEREQD     4
579#define NI_NUMERICSERV  8
580#endif
581
582/* Defined in RFC 1035. max strlen is only 253 due to length bytes. */
583#ifndef MAXHOSTNAMELEN
584#define        MAXHOSTNAMELEN  255
585#endif
586
587#ifndef HAVE_SYSEXITS_H
588#include "exits.h"
589#else
590#include "sysexits.h"
591#endif
592
593/* Get the correct time.h */
594#if TIME_WITH_SYS_TIME
595# include <sys/time.h>
596# include <time.h>
597#else
598# if HAVE_SYS_TIME_H
599#  include <sys/time.h>
600# else
601#  include <time.h>
602# endif
603#endif
604
605#ifndef HIER_DELIMITER
606#define HIER_DELIMITER '/'
607#endif
608
609#ifdef WIN32
610#define SASL_ROOT_KEY "SOFTWARE\\Carnegie Mellon\\Project Cyrus\\SASL Library"
611#define SASL_PLUGIN_PATH_ATTR "SearchPath"
612#define SASL_CONF_PATH_ATTR "ConfFile"
613
614#include <windows.h>
615inline static unsigned int sleep(unsigned int seconds) {
616       Sleep(seconds * 1000);
617       return 0;
618}
619#endif
620
621#endif /* CONFIG_H */
622
623