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 - 2015, 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 https://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_STRDUP            1
73#define HAVE_STRICMP           1
74#define HAVE_STRTOLL           1
75#define HAVE_STRUCT_TIMEVAL    1
76#define HAVE_STRUCT_IN6_ADDR   1
77#define HAVE_SYS_IOCTL_H       1
78#define HAVE_SYS_SOCKET_H      1
79#define HAVE_SYS_STAT_H        1
80#define HAVE_SYS_TYPES_H       1
81#define HAVE_TIME_H            1
82#define HAVE_UNISTD_H          1
83
84#define NEED_MALLOC_H          1
85
86#define RETSIGTYPE             void
87#define SIZEOF_INT             4
88#define SIZEOF_LONG_DOUBLE     16
89#define SIZEOF_SHORT           2
90#define SIZEOF_SIZE_T          4
91#define STDC_HEADERS           1
92#define TIME_WITH_SYS_TIME     1
93
94/* Qualifiers for send(), recv(), recvfrom() and getnameinfo(). */
95
96#define SEND_TYPE_ARG1         int
97#define SEND_QUAL_ARG2         const
98#define SEND_TYPE_ARG2         void *
99#define SEND_TYPE_ARG3         int
100#define SEND_TYPE_ARG4         int
101#define SEND_TYPE_RETV         int
102
103#define RECV_TYPE_ARG1         int
104#define RECV_TYPE_ARG2         void *
105#define RECV_TYPE_ARG3         int
106#define RECV_TYPE_ARG4         int
107#define RECV_TYPE_RETV         int
108
109#define RECVFROM_TYPE_ARG1     int
110#define RECVFROM_TYPE_ARG2     void
111#define RECVFROM_TYPE_ARG3     int
112#define RECVFROM_TYPE_ARG4     int
113#define RECVFROM_TYPE_ARG5     struct sockaddr
114#define RECVFROM_TYPE_ARG6     int
115#define RECVFROM_TYPE_RETV     int
116#define RECVFROM_TYPE_ARG2_IS_VOID 1
117
118#define GETNAMEINFO_QUAL_ARG1  const
119#define GETNAMEINFO_TYPE_ARG1  struct sockaddr *
120#define GETNAMEINFO_TYPE_ARG2  int
121#define GETNAMEINFO_TYPE_ARG46 int
122#define GETNAMEINFO_TYPE_ARG7  int
123
124#define BSD
125
126/* CURLDEBUG definition enables memory tracking */
127/* #define CURLDEBUG */
128
129/* USE_ZLIB on cmd-line */
130#ifdef USE_ZLIB
131  #define HAVE_ZLIB_H            1
132  #define HAVE_LIBZ              1
133#endif
134
135/* USE_OPENSSL on cmd-line */
136#ifdef USE_OPENSSL
137  #define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1
138  #define HAVE_OPENSSL_ENGINE_H  1
139  #define OPENSSL_NO_KRB5        1
140#endif
141
142/* to disable LDAP */
143#define CURL_DISABLE_LDAP        1
144
145#define in_addr_t  u_long
146
147#if defined(__HIGHC__) || \
148    (defined(__GNUC__) && (__GNUC__ < 4))
149  #define ssize_t  int
150#endif
151
152#define CURL_CA_BUNDLE  getenv("CURL_CA_BUNDLE")
153
154/* Target HAVE_x section */
155
156#if defined(DJGPP)
157  #define HAVE_BASENAME   1
158  #define HAVE_STRCASECMP 1
159  #define HAVE_SIGACTION  1
160  #define HAVE_SIGSETJMP  1
161  #define HAVE_SYS_TIME_H 1
162  #define HAVE_TERMIOS_H  1
163  #define HAVE_VARIADIC_MACROS_GCC 1
164
165#elif defined(__WATCOMC__)
166  #define HAVE_STRCASECMP 1
167
168#elif defined(__HIGHC__)
169  #define HAVE_SYS_TIME_H 1
170  #define strerror(e) strerror_s_((e))
171#endif
172
173#ifdef MSDOS  /* Watt-32 */
174  #define HAVE_CLOSE_S    1
175#endif
176
177#undef word
178#undef byte
179
180#endif /* HEADER_CURL_CONFIG_DOS_H */
181
182