2 /* include/portable.h.nt -- manually updated of MS NT (MS VC5) */
3 /* synced with portable.h.in 1.24 */
5 * Copyright 1998-2000 The OpenLDAP Foundation, Redwood City, California, USA
8 * Redistribution and use in source and binary forms are permitted only
9 * as authorized by the OpenLDAP Public License. A copy of this
10 * license is available at http://www.OpenLDAP.org/license.html or
11 * in file LICENSE in the top-level directory of the distribution.
14 #ifndef _LDAP_PORTABLE_H
15 #define _LDAP_PORTABLE_H
19 #if !defined( SLAPD_SCHEMA_COMPAT ) && !defined( SLAPD_SCHEMA_NOT_COMPAT )
20 /* use new schema codes */
21 #define SLAPD_SCHEMA_NOT_COMPAT 1
24 /* comment this out if you don't have Cyrus SASL */
25 #define HAVE_CYRUS_SASL 1
27 /* --------------------------------------------------- */
28 /* begin of MSVC5 specific entries */
30 #define OPENLDAP_PACKAGE "OpenLDAP"
31 #define OPENLDAP_VERSION "-devel"
34 /* don't suck in all of the win32 api */
35 #define WIN32_LEAN_AND_MEAN
37 #if defined(_WIN32) && !defined(_WINNT) && !defined(_WIN95)
41 #if defined( _MT ) && defined( _WINNT )
42 #define HAVE_NT_THREADS 1
47 #ifdef HAVE_NT_THREADS
48 /* enable WINNT specific features only if we have NT THREADS */
49 #define HAVE_NT_SERVICE_MANAGER 1
50 #define HAVE_NT_EVENT_LOG 1
53 #if defined( _DEBUG ) && !defined( LDAP_DEBUG )
54 /* #define LDAP_MEMORY_DEBUG 1 */
58 /* we installed Henry Spencer's REGEX */
59 #define HAVE_REGEX_H 1
61 /* win32 specific stuff */
64 #define strcasecmp stricmp
65 #define strncasecmp strnicmp
67 #define snprintf _snprintf
68 #define vsnprintf _vsnprintf
69 /* #define vsprintf _vsprintf */
71 /* define type for caddr_t */
72 typedef char * caddr_t;
74 /* define type for ssize_t */
75 typedef signed int ssize_t;
77 /* we have spawnlp instead of fork/execlp */
78 #define HAVE_SPAWNLP 1
80 /* we have winsock2 */
81 #define HAVE_WINSOCK2 1
84 #define HAVE_WINSOCK 1
86 /* we have <conio.h> */
87 #define HAVE_CONIO_H 1
89 /* we have <direct.h> */
90 #define HAVE_DIRECT_H 1
95 /* we have <process.h> */
96 #define HAVE_PROCESS_H 1
98 /* we have <wincrypt.h> */
99 #define HAVE_WINCRYPT_H 1
101 #define MAXPATHLEN _MAX_PATH
103 /* end of MSVC5 specific entries */
104 /* --------------------------------------------------- */
106 /* Define if on AIX 3.
107 System headers sometimes define this.
108 We just want to avoid a redefinition error message. */
110 /* #undef _ALL_SOURCE */
113 /* Define to empty if the keyword does not work. */
116 /* Define to the type of elements in the array set by `getgroups'.
117 Usually this is either `int' or `gid_t'. */
118 /* #undef GETGROUPS_T */
120 /* Define to `int' if <sys/types.h> doesn't define. */
123 /* Define if you don't have vprintf but do have _doprnt. */
124 /* #undef HAVE_DOPRNT */
126 /* Define if your struct stat has st_blksize. */
127 /* #undef HAVE_ST_BLKSIZE */
129 /* Define if you have the strftime function. */
130 #define HAVE_STRFTIME 1
132 /* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
133 /* #undef HAVE_SYS_WAIT_H */
135 /* Define if you have the vprintf function. */
136 #define HAVE_VPRINTF 1
138 /* Define if on MINIX. */
141 /* Define to `int' if <sys/types.h> doesn't define. */
144 /* Define to `long' if <sys/types.h> doesn't define. */
147 /* Define to `int' if <sys/types.h> doesn't define. */
150 /* Define if the system does not provide POSIX.1 features except
151 with this defined. */
152 /* #undef _POSIX_1_SOURCE */
154 /* Define if you need to in order for stat and other things to work. */
155 /* #undef _POSIX_SOURCE */
157 /* Define as the return type of signal handlers (int or void). */
158 #define RETSIGTYPE void
160 /* Define to `unsigned' if <sys/types.h> doesn't define. */
163 /* Define if you have the ANSI C header files. */
164 #define STDC_HEADERS 1
166 /* Define if you can safely include both <sys/time.h> and <time.h>. */
167 /* #undef TIME_WITH_SYS_TIME */
169 /* Define if your <sys/time.h> declares struct tm. */
170 /* #undef TM_IN_SYS_TIME */
172 /* Define to `int' if <sys/types.h> doesn't define. */
175 /* Define if your processor stores words with the most significant
176 byte first (like Motorola and SPARC, unlike Intel and VAX). */
177 /* #undef WORDS_BIGENDIAN */
179 /* define this if needed to get reentrant functions */
181 /* #undef REENTRANT */
184 /* #undef _REENTRANT */
187 /* define this if needed to get threadsafe functions */
189 /* #undef THREADSAFE */
192 /* #undef _THREADSAFE */
195 /* #undef THREAD_SAFE */
198 /* #undef _THREAD_SAFE */
201 /* define this if toupper() requires tolower() */
202 #define C_UPPER_LOWER 1
204 /* define this to the number of arguments ctime_r() expects */
205 /* #undef CTIME_R_NARGS */
207 /* define this if sys_errlist is not defined in stdio.h or errno.h */
208 /* #undef DECL_SYS_ERRLIST */
210 /* define this if sys_errlist is available */
211 #define HAVE_SYS_ERRLIST 1
213 /* define if you have berkeley db */
214 #define HAVE_BERKELEY_DB 1
216 /* define if you have crypt */
217 /* #undef HAVE_CRYPT */
219 /* define if you have GDBM */
220 /* #undef HAVE_GDBM */
222 /* define if you have NDBM */
223 /* #undef HAVE_NDBM */
225 /* define if you have res_search() */
227 /* see second res_search define */
228 /* #undef HAVE_RES_SEARCH */
231 /* define if you have sched_yield() */
233 /* see second sched_yield define */
234 /* #undef HAVE_SCHED_YIELD */
237 /* define if you have setproctitle() */
238 /* #undef HAVE_SETPROCTITLE */
240 /* define this for connectionless LDAP support */
241 /* #undef LDAP_CONNECTIONLESS */
243 /* define this to add debugging code */
244 /* #undef LDAP_DEBUG */
246 /* define this to remove -lldap cache support */
247 /* #undef LDAP_NOCACHE */
249 /* define this for LDAP process title support */
250 /* #undef LDAP_PROCTITLE */
252 /* define this for LDAP User Interface support */
253 /* #undef LDAP_LIBUI */
255 /* define this to add syslog code */
256 /* #undef LDAP_SYSLOG */
258 /* define this to use DBBTREE w/ LDBM backend */
259 #define LDBM_USE_DBBTREE 1
261 /* define this to use DBHASH w/ LDBM backend */
262 /* #undef LDBM_USE_DBHASH */
264 /* define this for ACL Group support */
265 #define SLAPD_ACLGROUPS 1
267 /* define this to use SLAPD Berkeley DB2 backend */
268 /* #define SLAPD_BDB2 1 */
270 /* define this for ClearText password support */
271 #define SLAPD_CLEARTEXT 1
273 /* define this for crypt(3) password support */
274 /* #undef SLAPD_CRYPT */
276 /* define this to use SLAPD LDAP backend */
277 /* #undef SLAPD_LDAP */
279 /* define this to use SLAPD LDBM backend */
282 /* define this to use SLAPD SQL backend */
283 /* #undef SLAPD_SQL */
285 /* define this to use SLAPD passwd backend */
286 /* #undef SLAPD_PASSWD */
288 /* define this to use SLAPD perl backend */
289 /* #undef SLAPD_PERL */
291 /* define this for phonetic support */
292 /* #undef SLAPD_PHONETIC */
294 /* define this for Reverse Lookup support */
295 #define SLAPD_RLOOKUPS 1
297 /* define this for per-object ACIs */
298 /* #undef SLAPD_ACI_ENABLED */
300 /* define this to use SLAPD shell backend */
301 /* #undef SLAPD_SHELL */
303 /* define this to be empty if your compiler doesn't support volatile */
304 /* #undef volatile */
306 /* define this if sig_atomic_t isn't defined in signal.h */
307 /* #undef sig_atomic_t */
309 /* define this if socklen_t isn't defined in sys/types.h or sys/socket.h */
310 #define socklen_t int
312 /* These are defined in ldap_features.h */
314 LDAP_API_FEATURE_X_OPENLDAP_REENTRANT
315 LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE
316 LDAP_API_FEATURE_X_OPENLDAP_V2_DNS
317 LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS
320 /* The number of bytes in a int. */
323 /* The number of bytes in a long. */
324 #define SIZEOF_LONG 4
326 /* The number of bytes in a short. */
327 #define SIZEOF_SHORT 2
329 /* Define if you have the bcopy function. */
330 /* #undef HAVE_BCOPY */
332 /* Define if you have the ctime_r function. */
333 /* #undef HAVE_CTIME_R */
335 /* Define if you have the flock function. */
336 /* #undef HAVE_FLOCK */
338 /* Define if you have the getdtablesize function. */
339 /* #undef HAVE_GETDTABLESIZE */
341 /* Define if you have the gethostbyaddr_r function. */
342 /* #undef HAVE_GETHOSTBYADDR_R */
344 /* Define if you have the gethostbyname_r function. */
345 /* #undef HAVE_GETHOSTBYNAME_R */
347 /* Define if you have the gethostname function. */
348 #define HAVE_GETHOSTNAME 1
350 /* define if you have the getopt function */
351 /* #undef HAVE_GETOPT */
353 /* Define if you have the getpwuid function. */
354 /* #undef HAVE_GETPWUID */
356 /* Define if you have the gettimeofday function. */
357 /* #undef HAVE_GETTIMEOFDAY */
359 /* Define if you have the lockf function. */
360 /* #undef HAVE_LOCKF */
362 /* Define if you have the memcpy function. */
363 #define HAVE_MEMCPY 1
365 /* Define if you have the memmove function. */
366 #define HAVE_MEMMOVE 1
368 /* Define if you have the mkstemp function. */
369 /* #undef HAVE_MKSTEMP */
371 /* Define if you have the pthread_getconcurrency function. */
372 /* #undef HAVE_PTHREAD_GETCONCURRENCY */
374 /* Define if you have the pthread_kill function. */
375 /* #undef HAVE_PTHREAD_KILL */
377 /* Define if you have the pthread_setconcurrency function. */
378 /* #undef HAVE_PTHREAD_SETCONCURRENCY */
380 /* Define if you have the pthread_yield function. */
381 /* #undef HAVE_PTHREAD_YIELD */
383 /* Define if you have the res_search function. */
384 /* #undef HAVE_RES_SEARCH */
386 /* Define if you have the sched_yield function. */
387 /* #undef HAVE_SCHED_YIELD */
389 /* Define if you have the select function. */
390 #define HAVE_SELECT 1
392 /* Define if you have the setpwfile function. */
393 /* #undef HAVE_SETPWFILE */
395 /* Define if you have the setsid function. */
396 /* #undef HAVE_SETSID */
398 /* Define if you have the signal function. */
399 #define HAVE_SIGNAL 1
401 /* Define if you have the sigset function. */
402 /* #undef HAVE_SIGSET */
404 /* Define if you have the socket function. */
405 #define HAVE_SOCKET 1
407 /* Define if you have the snprintf function. */
408 #define HAVE_SNPRINTF 1
410 /* Define if you have the strdup function. */
411 #define HAVE_STRDUP 1
413 /* Define if you have the strerror function. */
414 #define HAVE_STRERROR 1
416 /* Define if you have the strpbrk function. */
417 #define HAVE_STRPBRK 1
419 /* Define if you have the strrchr function. */
420 #define HAVE_STRRCHR 1
422 /* Define if you have the strsep function. */
423 /* #undef HAVE_STRSEP */
425 /* Define if you have the strspn function. */
426 #define HAVE_STRSPN 1
428 /* Define if you have the strstr function. */
429 #define HAVE_STRSTR 1
431 /* Define if you have the strtok function. */
432 #define HAVE_STRTOK 1
434 /* Define if you have the strtok_r function. */
435 /* #undef HAVE_STRTOK_R */
437 /* Define if you have the strtol function. */
438 #define HAVE_STRTOL 1
440 /* Define if you have the strtoul function. */
441 #define HAVE_STRTOUL 1
443 /* Define if you have the sysconf function. */
444 /* #undef HAVE_SYSCONF */
446 /* Define if you have the tempnam function. */
447 #define HAVE_TEMPNAM 1
449 /* Define if you have the thr_getconcurrency function. */
450 /* #undef HAVE_THR_GETCONCURRENCY */
452 /* Define if you have the thr_setconcurrency function. */
453 /* #undef HAVE_THR_SETCONCURRENCY */
455 /* Define if you have the thr_yield function. */
456 /* #undef HAVE_THR_YIELD */
458 /* Define if you have the vsnprintf function. */
459 #define HAVE_VSNPRINTF 1
461 /* Define if you have the vsprintf function. */
462 #define HAVE_VSPRINTF 1
464 /* Define if you have the waitpid function. */
465 /* #undef HAVE_WAITPID 1 */
467 /* Define if you have the <arpa/nameser.h> header file. */
468 /* #undef HAVE_ARPA_NAMESER_H */
470 /* Define if you have the <crypt.h> header file. */
471 /* #undef HAVE_CRYPT_H */
473 /* Define if you have the <db.h> header file. */
476 /* Define if you have the <db_185.h> header file. */
477 /* #undef HAVE_DB_185_H */
479 /* Define if you have the <des.h> header file. */
480 /* #undef HAVE_DES_H */
482 /* Define if you have the <dirent.h> header file. */
483 /* #undef HAVE_DIRENT_H */
485 /* Define if you have the <dmalloc.h> header file. */
486 /* #undef HAVE_DMALLOC_H */
488 /* Define if you have the <errno.h> header file. */
489 #define HAVE_ERRNO_H 1
491 /* Define if you have the <fcntl.h> header file. */
492 #define HAVE_FCNTL_H 1
494 /* Define if you have the <filio.h> header file. */
495 /* #undef HAVE_FILIO_H */
497 /* Define if you have the <gdbm.h> header file. */
498 /* #undef HAVE_GDBM_H */
500 /* Define if you have the <getopt.h> header file. */
501 /* #undef HAVE_GETOPT_H */
503 /* Define if you have the <kerberosIV/des.h> header file. */
504 /* #undef HAVE_KERBEROSIV_DES_H */
506 /* Define if you have the <kerberosIV/krb.h> header file. */
507 /* #undef HAVE_KERBEROSIV_KRB_H */
509 /* Define if you have the <krb.h> header file. */
510 /* #undef HAVE_KRB_H */
512 /* Define if you have the <libutil.h> header file. */
513 /* #undef HAVE_LIBUTIL_H */
515 /* Define if you have the <limits.h> header file. */
516 #define HAVE_LIMITS_H 1
518 /* Define if you have the <lwp/lwp.h> header file. */
519 /* #undef HAVE_LWP_LWP_H */
521 /* Define if you have the <mach/cthreads.h> header file. */
522 /* #undef HAVE_MACH_CTHREADS_H */
524 /* Define if you have the <malloc.h> header file. */
525 #define HAVE_MALLOC_H 1
527 /* Define if you have the <memory.h> header file. */
528 #define HAVE_MEMORY_H 1
530 /* Define if you have the <ncurses.h> header file. */
531 /* #undef HAVE_NCURSES_H */
533 /* Define if you have the <ndbm.h> header file. */
534 /* #undef HAVE_NDBM_H */
536 /* Define if you have the <ndir.h> header file. */
537 /* #undef HAVE_NDIR_H */
539 /* Define if you have the <psap.h> header file. */
540 /* #undef HAVE_PSAP_H */
542 /* Define if you have the <pthread.h> header file. */
543 /* #undef HAVE_PTHREAD_H */
545 /* Define if you have the <pwd.h> header file. */
546 /* #undef HAVE_PWD_H */
548 /* Define if you have the <regex.h> header file. */
549 /* #undef HAVE_REGEX_H */
551 /* Define if you have the <resolv.h> header file. */
552 /* #undef HAVE_RESOLV_H */
554 /* Define if you have the <sched.h> header file. */
555 /* #undef HAVE_SCHED_H */
557 /* Define if you have the <sgtty.h> header file. */
558 /* #undef HAVE_SGTTY_H */
560 /* Define if you have the <stdarg.h> header file. */
561 #define HAVE_STDARG_H 1
563 /* Define if you have the <stddef.h> header file. */
564 #define HAVE_STDDEF_H 1
566 /* Define if you have the <string.h> header file. */
567 #define HAVE_STRING_H 1
569 /* Define if you have the <strings.h> header file. */
570 /* #undef HAVE_STRINGS_H */
572 /* Define if you have the <synch.h> header file. */
573 /* #undef HAVE_SYNCH_H */
575 /* Define if you have the <sys/dir.h> header file. */
576 /* #undef HAVE_SYS_DIR_H */
578 /* Define if you have the <sys/errno.h> header file. */
579 /* #undef HAVE_SYS_ERRNO_H */
581 /* Define if you have the <sys/file.h> header file. */
582 /* #undef HAVE_SYS_FILE_H */
584 /* Define if you have the <sys/filio.h> header file. */
585 /* #undef HAVE_SYS_FILIO_H */
587 /* Define if you have the <sys/ioctl.h> header file. */
588 /* #undef HAVE_SYS_IOCTL_H */
590 /* Define if you have the <sys/ndir.h> header file. */
591 /* #undef HAVE_SYS_NDIR_H */
593 /* Define if you have the <sys/param.h> header file. */
594 /* #undef HAVE_SYS_PARAM_H */
596 /* Define if you have the <sys/resource.h> header file. */
597 /* #undef HAVE_SYS_RESOURCE_H */
599 /* Define if you have the <sys/socket.h> header file. */
600 /* #undef HAVE_SYS_SOCKET_H */
602 /* Define if you have the <sys/syslog.h> header file. */
603 /* #undef HAVE_SYS_SYSLOG_H */
605 /* Define if you have the <sys/time.h> header file. */
606 /* #undef HAVE_SYS_TIME_H */
608 /* Define if you have the <sys/types.h> header file. */
609 #define HAVE_SYS_TYPES_H 1
611 /* Define if you have the <sysexits.h> header file. */
612 /* #undef HAVE_SYSEXITS_H */
614 /* Define if you have the <syslog.h> header file. */
615 /* #undef HAVE_SYSLOG_H */
617 /* Define if you have the <tcpd.h> header file. */
618 /* #undef HAVE_TCPD_H */
620 /* Define if you have the <termcap.h> header file. */
621 /* #undef HAVE_TERMCAP_H */
623 /* Define if you have the <termios.h> header file. */
624 /* #undef HAVE_TERMIOS_H */
626 /* Define if you have the <thread.h> header file. */
627 /* #undef HAVE_THREAD_H */
629 /* Define if you have the <unistd.h> header file. */
630 /* #undef HAVE_UNISTD_H */
632 /* Define if you have the V3 library (-lV3). */
633 /* #undef HAVE_LIBV3 */
635 /* Define if you have the bind library (-lbind). */
636 /* #undef HAVE_LIBBIND */
638 /* Define if you have the dmalloc library (-ldmalloc). */
639 /* #undef HAVE_LIBDMALLOC */
641 /* Define if you have the gen library (-lgen). */
642 /* #undef HAVE_LIBGEN */
644 /* Define if you have the inet library (-linet). */
645 /* #undef HAVE_LIBINET */
647 /* Define if you have the net library (-lnet). */
648 /* #undef HAVE_LIBNET */
650 /* Define if you have the nsl library (-lnsl). */
651 /* #undef HAVE_LIBNSL */
653 /* Define if you have the nsl_s library (-lnsl_s). */
654 /* #undef HAVE_LIBNSL_S */
656 /* Define if you have the resolv library (-lresolv). */
657 /* #undef HAVE_LIBRESOLV */
659 /* Define if you have the socket library (-lsocket). */
660 /* #undef HAVE_LIBSOCKET */
662 /* define if you have -lxtpp */
663 /* #undef HAVE_XTPP */
665 /* define if you have -ldsap */
666 /* #undef HAVE_DSAP */
668 /* define if you have -lisode */
669 /* #undef HAVE_ISODE */
671 /* define if you have -lpp */
674 /* define if you have Kerberos des_debug */
675 /* #undef HAVE_DES_DEBUG */
677 /* define if you have Kerberos */
678 /* #undef HAVE_KERBEROS */
680 /* define if pthreads API compatible with final spec */
681 /* #undef HAVE_PTHREADS_FINAL */
683 /* define if pthreads API compatible with draft4 spec */
684 /* #undef HAVE_PTHREADS_D4 */
686 /* define if you have LinuxThreads */
687 /* #undef HAVE_LINUX_THREADS */
689 /* define if you have POSIX Threads */
690 /* #undef HAVE_PTHREADS */
692 /* define if you have pthread_detach function */
693 /* #undef HAVE_PTHREAD_DETACH */
695 /* define if you have Mach Cthreads */
696 /* #undef HAVE_MACH_CTHREADS */
698 /* if you have Solaris LWP (thr) package */
699 /* #undef HAVE_THR */
701 /* if you have SunOS LWP package */
702 /* #undef HAVE_LWP */
704 /* define if select implicitly yields */
705 #define HAVE_YIELDING_SELECT 1
707 /* define if you have (or want) no threads */
708 /* #undef NO_THREADS */
710 /* define if you have -lwrap */
711 /* #undef HAVE_TCPD */
713 /* define if you have -ltermcap */
714 /* #undef HAVE_TERMCAP */
716 /* define if you have -lncurses */
717 /* #undef HAVE_NCURSES */
719 /* define if you have no termcap support */
722 /* Define if TIOCGWINSZ requires sys/ioctl.h */
723 /* #undef GWINSZ_IN_SYS_IOCTL */
725 /* define if you have POSIX termios */
726 /* #undef HAVE_POSIX_TERMIOS */
728 /* Define if system has ptrdiff_t type */
729 #define HAVE_PTRDIFF_T 1
731 /* define if cross compiling */
732 /* #undef CROSS_COMPILING */
734 /* begin of postamble */
736 #ifndef __NEED_PROTOTYPES
737 /* force LDAP_P to always include prototypes */
738 #define __NEED_PROTOTYPES 1
745 #if defined(LDAP_DEVEL) && !defined(LDAP_TEST)
748 #if defined(LDAP_TEST) && !defined(LDAP_DEBUG)
752 #include "ldap_cdefs.h"
753 #include "ldap_features.h"
755 #include <ac/assert.h>
757 #endif /* _LDAP_PORTABLE_H */