1#ifndef CURLINC_SYSTEM_H
2#define CURLINC_SYSTEM_H
55#if defined(__DJGPP__) || defined(__GO32__)
56# if defined(__DJGPP__) && (__DJGPP__ > 1)
57# define CURL_TYPEOF_CURL_OFF_T long long
58# define CURL_FORMAT_CURL_OFF_T "lld"
59# define CURL_FORMAT_CURL_OFF_TU "llu"
60# define CURL_SUFFIX_CURL_OFF_T LL
61# define CURL_SUFFIX_CURL_OFF_TU ULL
63# define CURL_TYPEOF_CURL_OFF_T long
64# define CURL_FORMAT_CURL_OFF_T "ld"
65# define CURL_FORMAT_CURL_OFF_TU "lu"
66# define CURL_SUFFIX_CURL_OFF_T L
67# define CURL_SUFFIX_CURL_OFF_TU UL
69# define CURL_TYPEOF_CURL_SOCKLEN_T int
71#elif defined(__SALFORDC__)
72# define CURL_TYPEOF_CURL_OFF_T long
73# define CURL_FORMAT_CURL_OFF_T "ld"
74# define CURL_FORMAT_CURL_OFF_TU "lu"
75# define CURL_SUFFIX_CURL_OFF_T L
76# define CURL_SUFFIX_CURL_OFF_TU UL
77# define CURL_TYPEOF_CURL_SOCKLEN_T int
79#elif defined(__BORLANDC__)
80# if (__BORLANDC__ < 0x520)
81# define CURL_TYPEOF_CURL_OFF_T long
82# define CURL_FORMAT_CURL_OFF_T "ld"
83# define CURL_FORMAT_CURL_OFF_TU "lu"
84# define CURL_SUFFIX_CURL_OFF_T L
85# define CURL_SUFFIX_CURL_OFF_TU UL
87# define CURL_TYPEOF_CURL_OFF_T __int64
88# define CURL_FORMAT_CURL_OFF_T "I64d"
89# define CURL_FORMAT_CURL_OFF_TU "I64u"
90# define CURL_SUFFIX_CURL_OFF_T i64
91# define CURL_SUFFIX_CURL_OFF_TU ui64
93# define CURL_TYPEOF_CURL_SOCKLEN_T int
95#elif defined(__TURBOC__)
96# define CURL_TYPEOF_CURL_OFF_T long
97# define CURL_FORMAT_CURL_OFF_T "ld"
98# define CURL_FORMAT_CURL_OFF_TU "lu"
99# define CURL_SUFFIX_CURL_OFF_T L
100# define CURL_SUFFIX_CURL_OFF_TU UL
101# define CURL_TYPEOF_CURL_SOCKLEN_T int
103#elif defined(__POCC__)
105# define CURL_TYPEOF_CURL_OFF_T long
106# define CURL_FORMAT_CURL_OFF_T "ld"
107# define CURL_FORMAT_CURL_OFF_TU "lu"
108# define CURL_SUFFIX_CURL_OFF_T L
109# define CURL_SUFFIX_CURL_OFF_TU UL
110# elif defined(_MSC_VER)
111# define CURL_TYPEOF_CURL_OFF_T __int64
112# define CURL_FORMAT_CURL_OFF_T "I64d"
113# define CURL_FORMAT_CURL_OFF_TU "I64u"
114# define CURL_SUFFIX_CURL_OFF_T i64
115# define CURL_SUFFIX_CURL_OFF_TU ui64
117# define CURL_TYPEOF_CURL_OFF_T long long
118# define CURL_FORMAT_CURL_OFF_T "lld"
119# define CURL_FORMAT_CURL_OFF_TU "llu"
120# define CURL_SUFFIX_CURL_OFF_T LL
121# define CURL_SUFFIX_CURL_OFF_TU ULL
123# define CURL_TYPEOF_CURL_SOCKLEN_T int
125#elif defined(__LCC__)
126# if defined(__MCST__)
127# define CURL_TYPEOF_CURL_OFF_T long
128# define CURL_FORMAT_CURL_OFF_T "ld"
129# define CURL_FORMAT_CURL_OFF_TU "lu"
130# define CURL_SUFFIX_CURL_OFF_T L
131# define CURL_SUFFIX_CURL_OFF_TU UL
132# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
133# define CURL_PULL_SYS_TYPES_H 1
134# define CURL_PULL_SYS_SOCKET_H 1
136# define CURL_TYPEOF_CURL_OFF_T long
137# define CURL_FORMAT_CURL_OFF_T "ld"
138# define CURL_FORMAT_CURL_OFF_TU "lu"
139# define CURL_SUFFIX_CURL_OFF_T L
140# define CURL_SUFFIX_CURL_OFF_TU UL
141# define CURL_TYPEOF_CURL_SOCKLEN_T int
144#elif defined(__SYMBIAN32__)
145# if defined(__EABI__)
146# define CURL_TYPEOF_CURL_OFF_T long long
147# define CURL_FORMAT_CURL_OFF_T "lld"
148# define CURL_FORMAT_CURL_OFF_TU "llu"
149# define CURL_SUFFIX_CURL_OFF_T LL
150# define CURL_SUFFIX_CURL_OFF_TU ULL
151# elif defined(__CW32__)
153# define CURL_TYPEOF_CURL_OFF_T long long
154# define CURL_FORMAT_CURL_OFF_T "lld"
155# define CURL_FORMAT_CURL_OFF_TU "llu"
156# define CURL_SUFFIX_CURL_OFF_T LL
157# define CURL_SUFFIX_CURL_OFF_TU ULL
158# elif defined(__VC32__)
159# define CURL_TYPEOF_CURL_OFF_T __int64
160# define CURL_FORMAT_CURL_OFF_T "lld"
161# define CURL_FORMAT_CURL_OFF_TU "llu"
162# define CURL_SUFFIX_CURL_OFF_T LL
163# define CURL_SUFFIX_CURL_OFF_TU ULL
165# define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int
167#elif defined(__MWERKS__)
168# define CURL_TYPEOF_CURL_OFF_T long long
169# define CURL_FORMAT_CURL_OFF_T "lld"
170# define CURL_FORMAT_CURL_OFF_TU "llu"
171# define CURL_SUFFIX_CURL_OFF_T LL
172# define CURL_SUFFIX_CURL_OFF_TU ULL
173# define CURL_TYPEOF_CURL_SOCKLEN_T int
175#elif defined(_WIN32_WCE)
176# define CURL_TYPEOF_CURL_OFF_T __int64
177# define CURL_FORMAT_CURL_OFF_T "I64d"
178# define CURL_FORMAT_CURL_OFF_TU "I64u"
179# define CURL_SUFFIX_CURL_OFF_T i64
180# define CURL_SUFFIX_CURL_OFF_TU ui64
181# define CURL_TYPEOF_CURL_SOCKLEN_T int
183#elif defined(__MINGW32__)
184# define CURL_TYPEOF_CURL_OFF_T long long
185# define CURL_FORMAT_CURL_OFF_T "I64d"
186# define CURL_FORMAT_CURL_OFF_TU "I64u"
187# define CURL_SUFFIX_CURL_OFF_T LL
188# define CURL_SUFFIX_CURL_OFF_TU ULL
189# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
190# define CURL_PULL_SYS_TYPES_H 1
191# define CURL_PULL_WS2TCPIP_H 1
195# define CURL_TYPEOF_CURL_OFF_T long
196# define CURL_FORMAT_CURL_OFF_T "ld"
197# define CURL_FORMAT_CURL_OFF_TU "lu"
198# define CURL_SUFFIX_CURL_OFF_T L
199# define CURL_SUFFIX_CURL_OFF_TU UL
201# define CURL_TYPEOF_CURL_OFF_T long long
202# define CURL_FORMAT_CURL_OFF_T "lld"
203# define CURL_FORMAT_CURL_OFF_TU "llu"
204# define CURL_SUFFIX_CURL_OFF_T LL
205# define CURL_SUFFIX_CURL_OFF_TU ULL
207# define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int
209#elif defined(__OS400__)
210# if defined(__ILEC400__)
211# define CURL_TYPEOF_CURL_OFF_T long long
212# define CURL_FORMAT_CURL_OFF_T "lld"
213# define CURL_FORMAT_CURL_OFF_TU "llu"
214# define CURL_SUFFIX_CURL_OFF_T LL
215# define CURL_SUFFIX_CURL_OFF_TU ULL
216# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
217# define CURL_PULL_SYS_TYPES_H 1
218# define CURL_PULL_SYS_SOCKET_H 1
221#elif defined(__MVS__)
222# if defined(__IBMC__) || defined(__IBMCPP__)
226# if defined(_LONG_LONG)
227# define CURL_TYPEOF_CURL_OFF_T long long
228# define CURL_FORMAT_CURL_OFF_T "lld"
229# define CURL_FORMAT_CURL_OFF_TU "llu"
230# define CURL_SUFFIX_CURL_OFF_T LL
231# define CURL_SUFFIX_CURL_OFF_TU ULL
233# define CURL_TYPEOF_CURL_OFF_T long
234# define CURL_FORMAT_CURL_OFF_T "ld"
235# define CURL_FORMAT_CURL_OFF_TU "lu"
236# define CURL_SUFFIX_CURL_OFF_T L
237# define CURL_SUFFIX_CURL_OFF_TU UL
239# define CURL_TYPEOF_CURL_OFF_T long
240# define CURL_FORMAT_CURL_OFF_T "ld"
241# define CURL_FORMAT_CURL_OFF_TU "lu"
242# define CURL_SUFFIX_CURL_OFF_T L
243# define CURL_SUFFIX_CURL_OFF_TU UL
245# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
246# define CURL_PULL_SYS_TYPES_H 1
247# define CURL_PULL_SYS_SOCKET_H 1
250#elif defined(__370__)
251# if defined(__IBMC__) || defined(__IBMCPP__)
255# if defined(_LONG_LONG)
256# define CURL_TYPEOF_CURL_OFF_T long long
257# define CURL_FORMAT_CURL_OFF_T "lld"
258# define CURL_FORMAT_CURL_OFF_TU "llu"
259# define CURL_SUFFIX_CURL_OFF_T LL
260# define CURL_SUFFIX_CURL_OFF_TU ULL
262# define CURL_TYPEOF_CURL_OFF_T long
263# define CURL_FORMAT_CURL_OFF_T "ld"
264# define CURL_FORMAT_CURL_OFF_TU "lu"
265# define CURL_SUFFIX_CURL_OFF_T L
266# define CURL_SUFFIX_CURL_OFF_TU UL
268# define CURL_TYPEOF_CURL_OFF_T long
269# define CURL_FORMAT_CURL_OFF_T "ld"
270# define CURL_FORMAT_CURL_OFF_TU "lu"
271# define CURL_SUFFIX_CURL_OFF_T L
272# define CURL_SUFFIX_CURL_OFF_TU UL
274# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
275# define CURL_PULL_SYS_TYPES_H 1
276# define CURL_PULL_SYS_SOCKET_H 1
280# define CURL_TYPEOF_CURL_OFF_T long
281# define CURL_FORMAT_CURL_OFF_T "ld"
282# define CURL_FORMAT_CURL_OFF_TU "lu"
283# define CURL_SUFFIX_CURL_OFF_T L
284# define CURL_SUFFIX_CURL_OFF_TU UL
285# define CURL_TYPEOF_CURL_SOCKLEN_T int
287#elif defined(__TINYC__)
288# define CURL_TYPEOF_CURL_OFF_T long long
289# define CURL_FORMAT_CURL_OFF_T "lld"
290# define CURL_FORMAT_CURL_OFF_TU "llu"
291# define CURL_SUFFIX_CURL_OFF_T LL
292# define CURL_SUFFIX_CURL_OFF_TU ULL
293# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
294# define CURL_PULL_SYS_TYPES_H 1
295# define CURL_PULL_SYS_SOCKET_H 1
297#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
298# if !defined(__LP64) && (defined(__ILP32) || \
300 defined(__sparcv8) || \
301 defined(__sparcv8plus))
302# define CURL_TYPEOF_CURL_OFF_T long long
303# define CURL_FORMAT_CURL_OFF_T "lld"
304# define CURL_FORMAT_CURL_OFF_TU "llu"
305# define CURL_SUFFIX_CURL_OFF_T LL
306# define CURL_SUFFIX_CURL_OFF_TU ULL
307# elif defined(__LP64) || \
308 defined(__amd64) || defined(__sparcv9)
309# define CURL_TYPEOF_CURL_OFF_T long
310# define CURL_FORMAT_CURL_OFF_T "ld"
311# define CURL_FORMAT_CURL_OFF_TU "lu"
312# define CURL_SUFFIX_CURL_OFF_T L
313# define CURL_SUFFIX_CURL_OFF_TU UL
315# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
316# define CURL_PULL_SYS_TYPES_H 1
317# define CURL_PULL_SYS_SOCKET_H 1
319#elif defined(__xlc__)
321# define CURL_TYPEOF_CURL_OFF_T long long
322# define CURL_FORMAT_CURL_OFF_T "lld"
323# define CURL_FORMAT_CURL_OFF_TU "llu"
324# define CURL_SUFFIX_CURL_OFF_T LL
325# define CURL_SUFFIX_CURL_OFF_TU ULL
327# define CURL_TYPEOF_CURL_OFF_T long
328# define CURL_FORMAT_CURL_OFF_T "ld"
329# define CURL_FORMAT_CURL_OFF_TU "lu"
330# define CURL_SUFFIX_CURL_OFF_T L
331# define CURL_SUFFIX_CURL_OFF_TU UL
333# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
334# define CURL_PULL_SYS_TYPES_H 1
335# define CURL_PULL_SYS_SOCKET_H 1
341#elif defined(_MSC_VER)
342# if (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64)
343# define CURL_TYPEOF_CURL_OFF_T __int64
344# define CURL_FORMAT_CURL_OFF_T "I64d"
345# define CURL_FORMAT_CURL_OFF_TU "I64u"
346# define CURL_SUFFIX_CURL_OFF_T i64
347# define CURL_SUFFIX_CURL_OFF_TU ui64
349# define CURL_TYPEOF_CURL_OFF_T long
350# define CURL_FORMAT_CURL_OFF_T "ld"
351# define CURL_FORMAT_CURL_OFF_TU "lu"
352# define CURL_SUFFIX_CURL_OFF_T L
353# define CURL_SUFFIX_CURL_OFF_TU UL
355# define CURL_TYPEOF_CURL_SOCKLEN_T int
361#elif defined(__GNUC__) && !defined(_SCO_DS)
362# if !defined(__LP64__) && \
363 (defined(__ILP32__) || defined(__i386__) || defined(__hppa__) || \
364 defined(__ppc__) || defined(__powerpc__) || defined(__arm__) || \
365 defined(__sparc__) || defined(__mips__) || defined(__sh__) || \
366 defined(__XTENSA__) || \
367 (defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 4) || \
368 (defined(__LONG_MAX__) && __LONG_MAX__ == 2147483647L))
369# define CURL_TYPEOF_CURL_OFF_T long long
370# define CURL_FORMAT_CURL_OFF_T "lld"
371# define CURL_FORMAT_CURL_OFF_TU "llu"
372# define CURL_SUFFIX_CURL_OFF_T LL
373# define CURL_SUFFIX_CURL_OFF_TU ULL
374# elif defined(__LP64__) || \
375 defined(__x86_64__) || defined(__ppc64__) || defined(__sparc64__) || \
376 defined(__e2k__) || \
377 (defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 8) || \
378 (defined(__LONG_MAX__) && __LONG_MAX__ == 9223372036854775807L)
379# define CURL_TYPEOF_CURL_OFF_T long
380# define CURL_FORMAT_CURL_OFF_T "ld"
381# define CURL_FORMAT_CURL_OFF_TU "lu"
382# define CURL_SUFFIX_CURL_OFF_T L
383# define CURL_SUFFIX_CURL_OFF_TU UL
385# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
386# define CURL_PULL_SYS_TYPES_H 1
387# define CURL_PULL_SYS_SOCKET_H 1
391# define CURL_TYPEOF_CURL_OFF_T long
392# define CURL_FORMAT_CURL_OFF_T "ld"
393# define CURL_FORMAT_CURL_OFF_TU "lu"
394# define CURL_SUFFIX_CURL_OFF_T L
395# define CURL_SUFFIX_CURL_OFF_TU UL
396# define CURL_TYPEOF_CURL_SOCKLEN_T int
401#define CURL_PULL_SYS_POLL_H
407#ifdef CURL_PULL_WS2TCPIP_H
415#ifdef CURL_PULL_SYS_TYPES_H
416# include <sys/types.h>
421#ifdef CURL_PULL_SYS_SOCKET_H
427#ifdef CURL_PULL_SYS_POLL_H
428# include <sys/poll.h>
432#ifdef CURL_TYPEOF_CURL_SOCKLEN_T
438#ifdef CURL_TYPEOF_CURL_OFF_T
457#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) || \
458 defined(__HP_aCC) || defined(__BORLANDC__) || defined(__LCC__) || \
459 defined(__POCC__) || defined(__SALFORDC__) || defined(__HIGHC__) || \
472#if defined(__BORLANDC__) && (__BORLANDC__ == 0x0551)
473# define CURLINC_OFF_T_C_HLPR2(x) x
474# define CURLINC_OFF_T_C_HLPR1(x) CURLINC_OFF_T_C_HLPR2(x)
475# define CURL_OFF_T_C(Val) CURLINC_OFF_T_C_HLPR1(Val) ## \
476 CURLINC_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_T)
477# define CURL_OFF_TU_C(Val) CURLINC_OFF_T_C_HLPR1(Val) ## \
478 CURLINC_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_TU)
481# define CURLINC_OFF_T_C_HLPR2(Val,Suffix) Val ## Suffix
483# define CURLINC_OFF_T_C_HLPR2(Val,Suffix) ValSuffix
485# define CURLINC_OFF_T_C_HLPR1(Val,Suffix) CURLINC_OFF_T_C_HLPR2(Val,Suffix)
486# define CURL_OFF_T_C(Val) CURLINC_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_T)
487# define CURL_OFF_TU_C(Val) CURLINC_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_TU)
#define CURL_TYPEOF_CURL_SOCKLEN_T
CURL_TYPEOF_CURL_OFF_T curl_off_t
#define CURL_TYPEOF_CURL_OFF_T
CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t