1#ifndef HEADER_CONFIG_DOS_H
2#define HEADER_CONFIG_DOS_H
3/***************************************************************************
4 *                                  _   _ ____  _
5 *  Project                     ___| | | |  _ \| |
6 *                             / __| | | | |_) | |
7 *                            | (__| |_| |  _ <| |___
8 *                             \___|\___/|_| \_\_____|
9 *
10 * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
11 *
12 * This software is licensed as described in the file COPYING, which
13 * you should have received as part of this distribution. The terms
14 * are also available at http://curl.haxx.se/docs/copyright.html.
15 *
16 * You may opt to use, copy, modify, merge, publish, distribute and/or sell
17 * copies of the Software, and permit persons to whom the Software is
18 * furnished to do so, under the terms of the COPYING file.
19 *
20 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
21 * KIND, either express or implied.
22 *
23 ***************************************************************************/
24
25
26/* ================================================================ */
27/*       lib/config-dos.h - Hand crafted config file for DOS        */
28/* ================================================================ */
29
30#if defined(DJGPP)
31  #define OS  "MSDOS/djgpp"
32#elif defined(__HIGHC__)
33  #define OS  "MSDOS/HighC"
34#elif defined(__WATCOMC__)
35  #define OS  "MSDOS/Watcom"
36#else
37  #define OS  "MSDOS/?"
38#endif
39
40#define PACKAGE  "curl"
41
42#define HAVE_ARPA_INET_H       1
43#define HAVE_ERRNO_H           1
44#define HAVE_FCNTL_H           1
45#define HAVE_GETADDRINFO       1
46#define HAVE_GETNAMEINFO       1
47#define HAVE_GETPROTOBYNAME    1
48#define HAVE_GETTIMEOFDAY      1
49#define HAVE_IO_H              1
50#define HAVE_IOCTL             1
51#define HAVE_IOCTL_FIONBIO     1
52#define HAVE_IOCTLSOCKET       1
53#define HAVE_IOCTLSOCKET_FIONBIO   1
54#define HAVE_LIMITS_H          1
55#define HAVE_LOCALE_H          1
56#define HAVE_LONGLONG          1
57#define HAVE_MEMORY_H          1
58#define HAVE_NETDB_H           1
59#define HAVE_NETINET_IN_H      1
60#define HAVE_NETINET_TCP_H     1
61#define HAVE_NET_IF_H          1
62#define HAVE_PROCESS_H         1
63#define HAVE_RECV              1
64#define HAVE_RECVFROM          1
65#define HAVE_SELECT            1
66#define HAVE_SEND              1
67#define HAVE_SETJMP_H          1
68#define HAVE_SETLOCALE         1
69#define HAVE_SETMODE           1
70#define HAVE_SIGNAL            1
71#define HAVE_SOCKET            1
72#define HAVE_SPNEGO            1
73#define HAVE_STRDUP            1
74#define HAVE_STRICMP           1
75#define HAVE_STRTOLL           1
76#define HAVE_STRUCT_TIMEVAL    1
77#define HAVE_STRUCT_IN6_ADDR   1
78#define HAVE_SYS_IOCTL_H       1
79#define HAVE_SYS_SOCKET_H      1
80#define HAVE_SYS_STAT_H        1
81#define HAVE_SYS_TYPES_H       1
82#define HAVE_TERMIOS_H         1
83#define HAVE_TIME_H            1
84#define HAVE_UNISTD_H          1
85
86#define NEED_MALLOC_H          1
87
88#define RETSIGTYPE             void
89#define SIZEOF_INT             4
90#define SIZEOF_LONG_DOUBLE     16
91#define SIZEOF_SHORT           2
92#define SIZEOF_SIZE_T          4
93#define STDC_HEADERS           1
94#define TIME_WITH_SYS_TIME     1
95
96/* Qualifiers for send(), recv(), recvfrom() and getnameinfo(). */
97
98#define SEND_TYPE_ARG1         int
99#define SEND_QUAL_ARG2         const
100#define SEND_TYPE_ARG2         void *
101#define SEND_TYPE_ARG3         int
102#define SEND_TYPE_ARG4         int
103#define SEND_TYPE_RETV         int
104
105#define RECV_TYPE_ARG1         int
106#define RECV_TYPE_ARG2         void *
107#define RECV_TYPE_ARG3         int
108#define RECV_TYPE_ARG4         int
109#define RECV_TYPE_RETV         int
110
111#define RECVFROM_TYPE_ARG1     int
112#define RECVFROM_TYPE_ARG2     void
113#define RECVFROM_TYPE_ARG3     int
114#define RECVFROM_TYPE_ARG4     int
115#define RECVFROM_TYPE_ARG5     struct sockaddr
116#define RECVFROM_TYPE_ARG6     int
117#define RECVFROM_TYPE_RETV     int
118#define RECVFROM_TYPE_ARG2_IS_VOID 1
119
120#define GETNAMEINFO_QUAL_ARG1  const
121#define GETNAMEINFO_TYPE_ARG1  struct sockaddr *
122#define GETNAMEINFO_TYPE_ARG2  int
123#define GETNAMEINFO_TYPE_ARG46 int
124#define GETNAMEINFO_TYPE_ARG7  int
125
126#define BSD
127
128/* CURLDEBUG definition enables memory tracking */
129/* #define CURLDEBUG */
130
131/* USE_ZLIB on cmd-line */
132#ifdef USE_ZLIB
133  #define HAVE_ZLIB_H            1
134  #define HAVE_LIBZ              1
135#endif
136
137/* USE_SSLEAY on cmd-line */
138#ifdef USE_SSLEAY
139  #define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1
140  #define HAVE_OPENSSL_ENGINE_H  1
141  #define OPENSSL_NO_KRB5        1
142  #define USE_OPENSSL            1
143#endif
144
145/* to disable LDAP */
146#define CURL_DISABLE_LDAP        1
147
148#define in_addr_t  u_long
149
150#if defined(__HIGHC__) || \
151    (defined(__GNUC__) && (__GNUC__ < 4))
152#define ssize_t    int
153#endif
154
155#define CURL_CA_BUNDLE  getenv("CURL_CA_BUNDLE")
156
157/* Target HAVE_x section */
158
159#if defined(DJGPP)
160  #define HAVE_BASENAME   1
161  #define HAVE_STRCASECMP 1
162  #define HAVE_SIGACTION  1
163  #define HAVE_SIGSETJMP  1
164  #define HAVE_SYS_TIME_H 1
165  #define HAVE_VARIADIC_MACROS_GCC 1
166
167  #if (DJGPP_MINOR >= 4)
168    #define HAVE_STRLCAT  1
169  #endif
170
171  /* Because djgpp <= 2.03 doesn't have snprintf() etc. */
172  #if (DJGPP_MINOR < 4)
173    #define _MPRINTF_REPLACE
174  #endif
175
176#elif defined(__WATCOMC__)
177  #define HAVE_STRCASECMP 1
178
179#elif defined(__HIGHC__)
180  #define HAVE_SYS_TIME_H 1
181#endif
182
183#ifdef MSDOS  /* Watt-32 */
184  #define HAVE_CLOSESOCKET_CAMEL  1
185  #define CloseSocket(s)          close_s((s))
186#endif
187
188#undef word
189#undef byte
190
191#endif /* HEADER_CONFIG_DOS_H */
192
193