1#ifndef HEADER_CURL_CONFIG_DOS_H
2#define HEADER_CURL_CONFIG_DOS_H
3/***************************************************************************
4 *                                  _   _ ____  _
5 *  Project                     ___| | | |  _ \| |
6 *                             / __| | | | |_) | |
7 *                            | (__| |_| |  _ <| |___
8 *                             \___|\___/|_| \_\_____|
9 *
10 * Copyright (C) 1998 - 2013, 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_TIME_H            1
83#define HAVE_UNISTD_H          1
84
85#define NEED_MALLOC_H          1
86
87#define RETSIGTYPE             void
88#define SIZEOF_INT             4
89#define SIZEOF_LONG_DOUBLE     16
90#define SIZEOF_SHORT           2
91#define SIZEOF_SIZE_T          4
92#define STDC_HEADERS           1
93#define TIME_WITH_SYS_TIME     1
94
95/* Qualifiers for send(), recv(), recvfrom() and getnameinfo(). */
96
97#define SEND_TYPE_ARG1         int
98#define SEND_QUAL_ARG2         const
99#define SEND_TYPE_ARG2         void *
100#define SEND_TYPE_ARG3         int
101#define SEND_TYPE_ARG4         int
102#define SEND_TYPE_RETV         int
103
104#define RECV_TYPE_ARG1         int
105#define RECV_TYPE_ARG2         void *
106#define RECV_TYPE_ARG3         int
107#define RECV_TYPE_ARG4         int
108#define RECV_TYPE_RETV         int
109
110#define RECVFROM_TYPE_ARG1     int
111#define RECVFROM_TYPE_ARG2     void
112#define RECVFROM_TYPE_ARG3     int
113#define RECVFROM_TYPE_ARG4     int
114#define RECVFROM_TYPE_ARG5     struct sockaddr
115#define RECVFROM_TYPE_ARG6     int
116#define RECVFROM_TYPE_RETV     int
117#define RECVFROM_TYPE_ARG2_IS_VOID 1
118
119#define GETNAMEINFO_QUAL_ARG1  const
120#define GETNAMEINFO_TYPE_ARG1  struct sockaddr *
121#define GETNAMEINFO_TYPE_ARG2  int
122#define GETNAMEINFO_TYPE_ARG46 int
123#define GETNAMEINFO_TYPE_ARG7  int
124
125#define BSD
126
127/* CURLDEBUG definition enables memory tracking */
128/* #define CURLDEBUG */
129
130/* USE_ZLIB on cmd-line */
131#ifdef USE_ZLIB
132  #define HAVE_ZLIB_H            1
133  #define HAVE_LIBZ              1
134#endif
135
136/* USE_SSLEAY on cmd-line */
137#ifdef USE_SSLEAY
138  #define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1
139  #define HAVE_OPENSSL_ENGINE_H  1
140  #define OPENSSL_NO_KRB5        1
141  #define USE_OPENSSL            1
142#endif
143
144/* to disable LDAP */
145#define CURL_DISABLE_LDAP        1
146
147#define in_addr_t  u_long
148
149#if defined(__HIGHC__) || \
150    (defined(__GNUC__) && (__GNUC__ < 4))
151  #define ssize_t  int
152#endif
153
154#define CURL_CA_BUNDLE  getenv("CURL_CA_BUNDLE")
155
156/* Target HAVE_x section */
157
158#if defined(DJGPP)
159  #define HAVE_BASENAME   1
160  #define HAVE_STRCASECMP 1
161  #define HAVE_SIGACTION  1
162  #define HAVE_SIGSETJMP  1
163  #define HAVE_SYS_TIME_H 1
164  #define HAVE_TERMIOS_H  1
165  #define HAVE_VARIADIC_MACROS_GCC 1
166
167  /* Because djgpp <= 2.03 doesn't have snprintf() etc. */
168  #if (DJGPP_MINOR < 4)
169    #define _MPRINTF_REPLACE
170  #endif
171
172#elif defined(__WATCOMC__)
173  #define HAVE_STRCASECMP 1
174
175#elif defined(__HIGHC__)
176  #define HAVE_SYS_TIME_H 1
177  #define strerror(e) strerror_s_((e))
178#endif
179
180#ifdef MSDOS  /* Watt-32 */
181  #define HAVE_CLOSE_S    1
182#endif
183
184#undef word
185#undef byte
186
187#endif /* HEADER_CURL_CONFIG_DOS_H */
188
189