2004-05-18 03:43:04 +04:00
|
|
|
/*
|
2007-01-28 00:02:43 +03:00
|
|
|
* Copyright (C) 2004, 2006 Internet Systems Consortium, Inc. ("ISC")
|
2005-12-22 02:06:48 +03:00
|
|
|
* Copyright (C) 1999-2001 Internet Software Consortium.
|
2004-05-18 03:43:04 +04:00
|
|
|
*
|
|
|
|
* Permission to use, copy, modify, and distribute this software for any
|
|
|
|
* purpose with or without fee is hereby granted, provided that the above
|
|
|
|
* copyright notice and this permission notice appear in all copies.
|
|
|
|
*
|
2005-12-22 02:06:48 +03:00
|
|
|
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
|
|
|
|
* REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
|
|
* AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
|
|
* INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
|
|
* LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
|
|
|
* OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
|
|
* PERFORMANCE OF THIS SOFTWARE.
|
2004-05-18 03:43:04 +04:00
|
|
|
*/
|
|
|
|
|
2007-01-28 00:02:43 +03:00
|
|
|
/* Id: config.h.win32,v 1.8.18.6 2006/09/27 00:29:46 marka Exp */
|
2004-05-18 03:43:04 +04:00
|
|
|
|
|
|
|
/*
|
|
|
|
* win32 configuration file
|
|
|
|
* All definitions, declarations, macros and includes are
|
|
|
|
* specific to the requirements of the Windows NT and Windows 2000
|
|
|
|
* platforms
|
|
|
|
*/
|
|
|
|
|
|
|
|
/* Define to empty if the keyword does not work. */
|
|
|
|
/* #undef const */
|
|
|
|
|
|
|
|
/* Define as __inline if that's what the C compiler calls it. */
|
|
|
|
#define inline __inline
|
|
|
|
|
|
|
|
/* Define to `unsigned' if <sys/types.h> doesn't define. */
|
|
|
|
/* #undef size_t */
|
|
|
|
|
|
|
|
/*
|
|
|
|
* ANSI C compliance enabled
|
|
|
|
*/
|
|
|
|
#define __STDC__ 1
|
|
|
|
|
2007-01-28 00:02:43 +03:00
|
|
|
/*
|
|
|
|
* Silence compiler warnings about using strcpy and friends.
|
|
|
|
*/
|
|
|
|
#define _CRT_SECURE_NO_DEPRECATE 1
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Use 32 bit time.
|
|
|
|
*/
|
|
|
|
#define _USE_32BIT_TIME_T 1
|
|
|
|
|
2004-05-18 03:43:04 +04:00
|
|
|
/*
|
|
|
|
* Windows NT and 2K only
|
|
|
|
*/
|
|
|
|
#define _WIN32_WINNT 0x0400
|
|
|
|
/* Define if you have the ANSI C header files. */
|
|
|
|
#define STDC_HEADERS 1
|
|
|
|
|
|
|
|
/* Define if you can safely include both <sys/time.h> and <time.h>. */
|
|
|
|
#define TIME_WITH_SYS_TIME 1
|
|
|
|
|
|
|
|
/* define on DEC OSF to enable 4.4BSD style sa_len support */
|
|
|
|
/* #undef _SOCKADDR_LEN */
|
|
|
|
|
|
|
|
/* define if your system needs pthread_init() before using pthreads */
|
|
|
|
/* #undef NEED_PTHREAD_INIT */
|
|
|
|
|
|
|
|
/* define if your system has sigwait() */
|
|
|
|
/* #undef HAVE_SIGWAIT */
|
|
|
|
|
|
|
|
/* define on Solaris to get sigwait() to work using pthreads semantics */
|
|
|
|
/* #undef _POSIX_PTHREAD_SEMANTICS */
|
|
|
|
|
|
|
|
/* define if LinuxThreads is in use */
|
|
|
|
/* #undef HAVE_LINUXTHREADS */
|
|
|
|
|
|
|
|
/* define if catgets() is available */
|
|
|
|
/* #undef HAVE_CATGETS */
|
|
|
|
|
|
|
|
/* define if you have the NET_RT_IFLIST sysctl variable. */
|
|
|
|
#define HAVE_IFLIST_SYSCTL 1
|
|
|
|
|
|
|
|
/* define if you need to #define _XPG4_2 before including sys/socket.h */
|
|
|
|
/* #undef NEED_XPG4_2_BEFORE_SOCKET_H */
|
|
|
|
|
|
|
|
/* define if you need to #define _XOPEN_SOURCE_ENTENDED before including
|
|
|
|
* sys/socket.h
|
|
|
|
*/
|
|
|
|
/* #undef NEED_XSE_BEFORE_SOCKET_H */
|
|
|
|
|
|
|
|
/* Define if you have the <fcntl.h> header file. */
|
|
|
|
#define HAVE_FCNTL_H 1
|
|
|
|
|
|
|
|
/* Define if you have the <sys/sockio.h> header file. */
|
|
|
|
#define HAVE_SYS_SOCKIO_H 1
|
|
|
|
|
|
|
|
/* Define if you have the <sys/time.h> header file. */
|
|
|
|
#define HAVE_SYS_TIME_H 1
|
|
|
|
|
|
|
|
/* Define if you have the <unistd.h> header file. */
|
|
|
|
#define HAVE_UNISTD_H 1
|
|
|
|
|
|
|
|
/* Define if you have the c_r library (-lc_r). */
|
|
|
|
/* #undef HAVE_LIBC_R */
|
|
|
|
|
|
|
|
/* Define if you have the nsl library (-lnsl). */
|
|
|
|
/* #undef HAVE_LIBNSL */
|
|
|
|
|
|
|
|
/* Define if you have the pthread library (-lpthread). */
|
|
|
|
/* #undef HAVE_LIBPTHREAD */
|
|
|
|
|
|
|
|
/* Define if you have the socket library (-lsocket). */
|
|
|
|
/* #undef HAVE_LIBSOCKET */
|
|
|
|
|
|
|
|
/* Define if you have h_errno */
|
|
|
|
#define HAVE_H_ERRNO
|
|
|
|
|
2007-01-28 00:02:43 +03:00
|
|
|
/* Define if you have RSA_generate_key(). */
|
|
|
|
#define HAVE_RSA_GENERATE_KEY
|
|
|
|
|
|
|
|
/* Define if you have DSA_generate_parameters(). */
|
|
|
|
#define HAVE_DSA_GENERATE_PARAMETERS
|
|
|
|
|
|
|
|
/* Define if you have DH_generate_parameters(). */
|
|
|
|
#define HAVE_DH_GENERATE_PARAMETERS
|
|
|
|
|
2005-12-22 02:06:48 +03:00
|
|
|
#define ISC_PLATFORM_NEEDSTRLCAT
|
|
|
|
|
|
|
|
#define ISC_PLATFORM_NEEDSTRLCPY
|
|
|
|
|
2004-05-18 03:43:04 +04:00
|
|
|
#define S_IFMT _S_IFMT /* file type mask */
|
|
|
|
#define S_IFDIR _S_IFDIR /* directory */
|
|
|
|
#define S_IFCHR _S_IFCHR /* character special */
|
|
|
|
#define S_IFIFO _S_IFIFO /* pipe */
|
|
|
|
#define S_IFREG _S_IFREG /* regular */
|
|
|
|
#define S_IREAD _S_IREAD /* read permission, owner */
|
|
|
|
#define S_IWRITE _S_IWRITE /* write permission, owner */
|
|
|
|
#define S_IEXEC _S_IEXEC /* execute/search permission, owner */
|
|
|
|
|
|
|
|
#define O_RDONLY _O_RDONLY
|
|
|
|
#define O_WRONLY _O_WRONLY
|
|
|
|
#define O_RDWR _O_RDWR
|
|
|
|
#define O_APPEND _O_APPEND
|
|
|
|
#define O_CREAT _O_CREAT
|
|
|
|
#define O_TRUNC _O_TRUNC
|
|
|
|
#define O_EXCL _O_EXCL
|
|
|
|
|
|
|
|
/* open() under unix allows setting of read/write permissions
|
|
|
|
* at the owner, group and other levels. These don't exist in NT
|
|
|
|
* We'll just map them all to the NT equivalent
|
|
|
|
*/
|
|
|
|
|
|
|
|
#define S_IRUSR _S_IREAD /* Owner read permission */
|
|
|
|
#define S_IWUSR _S_IWRITE /* Owner write permission */
|
|
|
|
#define S_IRGRP _S_IREAD /* Group read permission */
|
|
|
|
#define S_IWGRP _S_IWRITE /* Group write permission */
|
|
|
|
#define S_IROTH _S_IREAD /* Other read permission */
|
|
|
|
#define S_IWOTH _S_IWRITE /* Other write permission */
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* WIN32 specials until some other way of dealing with these is decided.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#define snprintf _snprintf
|
|
|
|
#define vsnprintf _vsnprintf
|
|
|
|
#define strcasecmp _stricmp
|
|
|
|
#define strncasecmp _strnicmp
|
|
|
|
#define strdup _strdup
|
|
|
|
#define sopen _sopen
|
|
|
|
#define isascii __isascii
|
|
|
|
#define stat _stat
|
|
|
|
#define fstat _fstat
|
|
|
|
#define fileno _fileno
|
|
|
|
#define unlink _unlink
|
|
|
|
#define chdir _chdir
|
|
|
|
#define mkdir _mkdir
|
|
|
|
#define getcwd _getcwd
|
|
|
|
#define utime _utime
|
|
|
|
#define utimbuf _utimbuf
|
|
|
|
|
|
|
|
/* #define EAFNOSUPPORT EINVAL */
|
|
|
|
#define chmod _chmod
|
|
|
|
#define getpid _getpid
|
|
|
|
#define getppid _getpid /* WARNING!!! For now this gets the same pid */
|
|
|
|
#define random rand /* Random number generator */
|
|
|
|
#define srandom srand /* Random number generator seeding */
|
|
|
|
/* for the config file */
|
|
|
|
typedef unsigned int uid_t; /* user id */
|
|
|
|
typedef unsigned int gid_t; /* group id */
|
|
|
|
typedef long pid_t; /* PID */
|
|
|
|
typedef int ssize_t;
|
|
|
|
typedef long off_t;
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Set up the Version Information
|
|
|
|
*/
|
|
|
|
#include <versions.h>
|
|
|
|
|
|
|
|
/* We actually are using the CryptAPI and not a device */
|
|
|
|
#define PATH_RANDOMDEV "CryptAPI"
|
|
|
|
|
|
|
|
#include <stddef.h>
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdarg.h>
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Applications may need to get the configuration path
|
|
|
|
*/
|
|
|
|
#ifndef _USRDLL
|
|
|
|
#include <isc/ntpaths.h>
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define fdopen _fdopen
|
|
|
|
#define read _read
|
|
|
|
#define open _open
|
|
|
|
#define close _close
|
|
|
|
#define write _write
|
2005-12-22 02:06:48 +03:00
|
|
|
#include <io.h>
|
|
|
|
#define isatty _isatty
|
2004-05-18 03:43:04 +04:00
|
|
|
|
|
|
|
#ifndef _WINSOCKAPI_
|
|
|
|
#define _WINSOCKAPI_ /* Prevent inclusion of winsock.h in windows.h */
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Make the number of available sockets large
|
|
|
|
* The number of sockets needed can get large and memory's cheap
|
|
|
|
* This must be defined before winsock2.h gets included as the
|
|
|
|
* macro is used there.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#define FD_SETSIZE 16384
|
|
|
|
#include <windows.h>
|