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 - 2020, 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_ASSERT_H          1
44 #define HAVE_ERRNO_H           1
45 #define HAVE_FCNTL_H           1
46 #define HAVE_FREEADDRINFO      1
47 #define HAVE_GETADDRINFO       1
48 #define HAVE_GETNAMEINFO       1
49 #define HAVE_GETPROTOBYNAME    1
50 #define HAVE_GETTIMEOFDAY      1
51 #define HAVE_IO_H              1
52 #define HAVE_IOCTL             1
53 #define HAVE_IOCTL_FIONBIO     1
54 #define HAVE_IOCTLSOCKET       1
55 #define HAVE_IOCTLSOCKET_FIONBIO   1
56 #define HAVE_LOCALE_H          1
57 #define HAVE_LONGLONG          1
58 #define HAVE_MEMORY_H          1
59 #define HAVE_NETDB_H           1
60 #define HAVE_NETINET_IN_H      1
61 #define HAVE_NETINET_TCP_H     1
62 #define HAVE_NET_IF_H          1
63 #define HAVE_PROCESS_H         1
64 #define HAVE_RECV              1
65 #define HAVE_RECVFROM          1
66 #define HAVE_SELECT            1
67 #define HAVE_SEND              1
68 #define HAVE_SETJMP_H          1
69 #define HAVE_SETLOCALE         1
70 #define HAVE_SETMODE           1
71 #define HAVE_SIGNAL            1
72 #define HAVE_SOCKET            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            4
90 #define SIZEOF_LONG_DOUBLE     16
91 #define SIZEOF_SHORT           2
92 #define SIZEOF_SIZE_T          4
93 #define SIZEOF_CURL_OFF_T      4
94 #define STDC_HEADERS           1
95 #define TIME_WITH_SYS_TIME     1
96 
97 /* Qualifiers for send(), recv(), recvfrom() and getnameinfo(). */
98 
99 #define SEND_TYPE_ARG1         int
100 #define SEND_QUAL_ARG2         const
101 #define SEND_TYPE_ARG2         void *
102 #define SEND_TYPE_ARG3         int
103 #define SEND_TYPE_ARG4         int
104 #define SEND_TYPE_RETV         int
105 
106 #define RECV_TYPE_ARG1         int
107 #define RECV_TYPE_ARG2         void *
108 #define RECV_TYPE_ARG3         int
109 #define RECV_TYPE_ARG4         int
110 #define RECV_TYPE_RETV         int
111 
112 #define RECVFROM_TYPE_ARG1     int
113 #define RECVFROM_TYPE_ARG2     void
114 #define RECVFROM_TYPE_ARG3     int
115 #define RECVFROM_TYPE_ARG4     int
116 #define RECVFROM_TYPE_ARG5     struct sockaddr
117 #define RECVFROM_TYPE_ARG6     int
118 #define RECVFROM_TYPE_RETV     int
119 #define RECVFROM_TYPE_ARG2_IS_VOID 1
120 
121 #define GETNAMEINFO_QUAL_ARG1  const
122 #define GETNAMEINFO_TYPE_ARG1  struct sockaddr *
123 #define GETNAMEINFO_TYPE_ARG2  int
124 #define GETNAMEINFO_TYPE_ARG46 int
125 #define GETNAMEINFO_TYPE_ARG7  int
126 
127 #define BSD
128 
129 /* CURLDEBUG definition enables memory tracking */
130 /* #define CURLDEBUG */
131 
132 /* USE_ZLIB on cmd-line */
133 #ifdef USE_ZLIB
134   #define HAVE_ZLIB_H            1
135   #define HAVE_LIBZ              1
136 #endif
137 
138 /* USE_OPENSSL on cmd-line */
139 #ifdef USE_OPENSSL
140   #define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1
141   #define OPENSSL_NO_KRB5        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 /* 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