curl_impersonate 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +21 -0
- data/README.md +84 -0
- data/ext/curl_impersonate/curl_impersonate.c +240 -0
- data/ext/curl_impersonate/extconf.rb +139 -0
- data/ext/curl_impersonate/include/curl/curl.h +3336 -0
- data/ext/curl_impersonate/include/curl/curlver.h +79 -0
- data/ext/curl_impersonate/include/curl/easy.h +125 -0
- data/ext/curl_impersonate/include/curl/header.h +74 -0
- data/ext/curl_impersonate/include/curl/mprintf.h +85 -0
- data/ext/curl_impersonate/include/curl/multi.h +481 -0
- data/ext/curl_impersonate/include/curl/options.h +70 -0
- data/ext/curl_impersonate/include/curl/stdcheaders.h +35 -0
- data/ext/curl_impersonate/include/curl/system.h +402 -0
- data/ext/curl_impersonate/include/curl/typecheck-gcc.h +867 -0
- data/ext/curl_impersonate/include/curl/urlapi.h +155 -0
- data/ext/curl_impersonate/include/curl/websockets.h +85 -0
- data/lib/curl_impersonate/cookies.rb +22 -0
- data/lib/curl_impersonate/response.rb +7 -0
- data/lib/curl_impersonate/version.rb +3 -0
- data/lib/curl_impersonate.rb +61 -0
- metadata +124 -0
|
@@ -0,0 +1,402 @@
|
|
|
1
|
+
#ifndef CURLINC_SYSTEM_H
|
|
2
|
+
#define CURLINC_SYSTEM_H
|
|
3
|
+
/***************************************************************************
|
|
4
|
+
* _ _ ____ _
|
|
5
|
+
* Project ___| | | | _ \| |
|
|
6
|
+
* / __| | | | |_) | |
|
|
7
|
+
* | (__| |_| | _ <| |___
|
|
8
|
+
* \___|\___/|_| \_\_____|
|
|
9
|
+
*
|
|
10
|
+
* Copyright (C) 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.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
|
+
* SPDX-License-Identifier: curl
|
|
24
|
+
*
|
|
25
|
+
***************************************************************************/
|
|
26
|
+
|
|
27
|
+
/*
|
|
28
|
+
* Try to keep one section per platform, compiler and architecture, otherwise,
|
|
29
|
+
* if an existing section is reused for a different one and later on the
|
|
30
|
+
* original is adjusted, probably the piggybacking one can be adversely
|
|
31
|
+
* changed.
|
|
32
|
+
*
|
|
33
|
+
* In order to differentiate between platforms/compilers/architectures use
|
|
34
|
+
* only compiler built-in predefined preprocessor symbols.
|
|
35
|
+
*
|
|
36
|
+
* curl_off_t
|
|
37
|
+
* ----------
|
|
38
|
+
*
|
|
39
|
+
* For any given platform/compiler curl_off_t MUST be typedef'ed to a 64-bit
|
|
40
|
+
* wide signed integral data type. The width of this data type must remain
|
|
41
|
+
* constant and independent of any possible large file support settings.
|
|
42
|
+
*
|
|
43
|
+
* As a general rule, curl_off_t shall not be mapped to off_t. This rule shall
|
|
44
|
+
* only be violated if off_t is the only 64-bit data type available and the
|
|
45
|
+
* size of off_t is independent of large file support settings. Keep your
|
|
46
|
+
* build on the safe side avoiding an off_t gating. If you have a 64-bit
|
|
47
|
+
* off_t then take for sure that another 64-bit data type exists, dig deeper
|
|
48
|
+
* and you will find it.
|
|
49
|
+
*
|
|
50
|
+
*/
|
|
51
|
+
|
|
52
|
+
#ifdef __DJGPP__
|
|
53
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
54
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
55
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
56
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
57
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
58
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T int
|
|
59
|
+
|
|
60
|
+
#elif defined(__BORLANDC__)
|
|
61
|
+
# define CURL_TYPEOF_CURL_OFF_T __int64
|
|
62
|
+
# define CURL_FORMAT_CURL_OFF_T "I64d"
|
|
63
|
+
# define CURL_FORMAT_CURL_OFF_TU "I64u"
|
|
64
|
+
# define CURL_SUFFIX_CURL_OFF_T i64
|
|
65
|
+
# define CURL_SUFFIX_CURL_OFF_TU ui64
|
|
66
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T int
|
|
67
|
+
|
|
68
|
+
#elif defined(__POCC__)
|
|
69
|
+
# if defined(_MSC_VER)
|
|
70
|
+
# define CURL_TYPEOF_CURL_OFF_T __int64
|
|
71
|
+
# define CURL_FORMAT_CURL_OFF_T "I64d"
|
|
72
|
+
# define CURL_FORMAT_CURL_OFF_TU "I64u"
|
|
73
|
+
# define CURL_SUFFIX_CURL_OFF_T i64
|
|
74
|
+
# define CURL_SUFFIX_CURL_OFF_TU ui64
|
|
75
|
+
# else
|
|
76
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
77
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
78
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
79
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
80
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
81
|
+
# endif
|
|
82
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T int
|
|
83
|
+
|
|
84
|
+
#elif defined(__LCC__)
|
|
85
|
+
# if defined(__MCST__) /* MCST eLbrus Compiler Collection */
|
|
86
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
87
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
88
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
89
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
90
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
91
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
|
|
92
|
+
# define CURL_PULL_SYS_TYPES_H 1
|
|
93
|
+
# define CURL_PULL_SYS_SOCKET_H 1
|
|
94
|
+
# else /* Local (or Little) C Compiler */
|
|
95
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
96
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
97
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
98
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
99
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
100
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T int
|
|
101
|
+
# endif
|
|
102
|
+
|
|
103
|
+
#elif defined(macintosh)
|
|
104
|
+
# include <ConditionalMacros.h>
|
|
105
|
+
# if TYPE_LONGLONG
|
|
106
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
107
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
108
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
109
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
110
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
111
|
+
# else
|
|
112
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
113
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
114
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
115
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
116
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
117
|
+
# endif
|
|
118
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int
|
|
119
|
+
|
|
120
|
+
#elif defined(__TANDEM)
|
|
121
|
+
# if !defined(__LP64)
|
|
122
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
123
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
124
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
125
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
126
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
127
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T int
|
|
128
|
+
# else
|
|
129
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
130
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
131
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
132
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
133
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
134
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int
|
|
135
|
+
# endif
|
|
136
|
+
|
|
137
|
+
#elif defined(UNDER_CE)
|
|
138
|
+
# if defined(__MINGW32CE__)
|
|
139
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
140
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
141
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
142
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
143
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
144
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T int
|
|
145
|
+
# else
|
|
146
|
+
# define CURL_TYPEOF_CURL_OFF_T __int64
|
|
147
|
+
# define CURL_FORMAT_CURL_OFF_T "I64d"
|
|
148
|
+
# define CURL_FORMAT_CURL_OFF_TU "I64u"
|
|
149
|
+
# define CURL_SUFFIX_CURL_OFF_T i64
|
|
150
|
+
# define CURL_SUFFIX_CURL_OFF_TU ui64
|
|
151
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T int
|
|
152
|
+
# endif
|
|
153
|
+
|
|
154
|
+
#elif defined(__MINGW32__)
|
|
155
|
+
# include <inttypes.h>
|
|
156
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
157
|
+
# define CURL_FORMAT_CURL_OFF_T PRId64
|
|
158
|
+
# define CURL_FORMAT_CURL_OFF_TU PRIu64
|
|
159
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
160
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
161
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T int
|
|
162
|
+
# define CURL_PULL_SYS_TYPES_H 1
|
|
163
|
+
|
|
164
|
+
#elif defined(__VMS)
|
|
165
|
+
# if defined(__VAX)
|
|
166
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
167
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
168
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
169
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
170
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
171
|
+
# else
|
|
172
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
173
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
174
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
175
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
176
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
177
|
+
# endif
|
|
178
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int
|
|
179
|
+
|
|
180
|
+
#elif defined(__OS400__)
|
|
181
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
182
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
183
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
184
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
185
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
186
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
|
|
187
|
+
# define CURL_PULL_SYS_TYPES_H 1
|
|
188
|
+
# define CURL_PULL_SYS_SOCKET_H 1
|
|
189
|
+
|
|
190
|
+
#elif defined(__MVS__)
|
|
191
|
+
# if defined(_LONG_LONG)
|
|
192
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
193
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
194
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
195
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
196
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
197
|
+
# else /* _LP64 and default */
|
|
198
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
199
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
200
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
201
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
202
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
203
|
+
# endif
|
|
204
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
|
|
205
|
+
# define CURL_PULL_SYS_TYPES_H 1
|
|
206
|
+
# define CURL_PULL_SYS_SOCKET_H 1
|
|
207
|
+
|
|
208
|
+
#elif defined(__370__)
|
|
209
|
+
# if defined(__IBMC__) || defined(__IBMCPP__)
|
|
210
|
+
# if defined(_LONG_LONG)
|
|
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
|
+
# else /* _LP64 and default */
|
|
217
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
218
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
219
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
220
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
221
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
222
|
+
# endif
|
|
223
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
|
|
224
|
+
# define CURL_PULL_SYS_TYPES_H 1
|
|
225
|
+
# define CURL_PULL_SYS_SOCKET_H 1
|
|
226
|
+
# endif
|
|
227
|
+
|
|
228
|
+
#elif defined(TPF)
|
|
229
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
230
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
231
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
232
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
233
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
234
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T int
|
|
235
|
+
|
|
236
|
+
#elif defined(__TINYC__) /* also known as tcc */
|
|
237
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
238
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
239
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
240
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
241
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
242
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
|
|
243
|
+
# define CURL_PULL_SYS_TYPES_H 1
|
|
244
|
+
# define CURL_PULL_SYS_SOCKET_H 1
|
|
245
|
+
|
|
246
|
+
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) /* Oracle Solaris Studio */
|
|
247
|
+
# if !defined(__LP64) && (defined(__ILP32) || \
|
|
248
|
+
defined(__i386) || \
|
|
249
|
+
defined(__sparcv8) || \
|
|
250
|
+
defined(__sparcv8plus))
|
|
251
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
252
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
253
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
254
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
255
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
256
|
+
# elif defined(__LP64) || \
|
|
257
|
+
defined(__amd64) || defined(__sparcv9)
|
|
258
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
259
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
260
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
261
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
262
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
263
|
+
# endif
|
|
264
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
|
|
265
|
+
# define CURL_PULL_SYS_TYPES_H 1
|
|
266
|
+
# define CURL_PULL_SYS_SOCKET_H 1
|
|
267
|
+
|
|
268
|
+
#elif defined(__xlc__) /* IBM xlc compiler */
|
|
269
|
+
# if !defined(_LP64)
|
|
270
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
271
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
272
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
273
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
274
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
275
|
+
# else
|
|
276
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
277
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
278
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
279
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
280
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
281
|
+
# endif
|
|
282
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
|
|
283
|
+
# define CURL_PULL_SYS_TYPES_H 1
|
|
284
|
+
# define CURL_PULL_SYS_SOCKET_H 1
|
|
285
|
+
|
|
286
|
+
#elif defined(__hpux) /* HP aCC compiler */
|
|
287
|
+
# if !defined(_LP64)
|
|
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
|
+
# else
|
|
294
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
295
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
296
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
297
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
298
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
299
|
+
# endif
|
|
300
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
|
|
301
|
+
# define CURL_PULL_SYS_TYPES_H 1
|
|
302
|
+
# define CURL_PULL_SYS_SOCKET_H 1
|
|
303
|
+
|
|
304
|
+
/* ===================================== */
|
|
305
|
+
/* KEEP MSVC THE PENULTIMATE ENTRY */
|
|
306
|
+
/* ===================================== */
|
|
307
|
+
|
|
308
|
+
#elif defined(_MSC_VER)
|
|
309
|
+
# if (_MSC_VER >= 1800)
|
|
310
|
+
# include <inttypes.h>
|
|
311
|
+
# define CURL_FORMAT_CURL_OFF_T PRId64
|
|
312
|
+
# define CURL_FORMAT_CURL_OFF_TU PRIu64
|
|
313
|
+
# else
|
|
314
|
+
# define CURL_FORMAT_CURL_OFF_T "I64d"
|
|
315
|
+
# define CURL_FORMAT_CURL_OFF_TU "I64u"
|
|
316
|
+
# endif
|
|
317
|
+
# define CURL_TYPEOF_CURL_OFF_T __int64
|
|
318
|
+
# define CURL_SUFFIX_CURL_OFF_T i64
|
|
319
|
+
# define CURL_SUFFIX_CURL_OFF_TU ui64
|
|
320
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T int
|
|
321
|
+
|
|
322
|
+
/* ===================================== */
|
|
323
|
+
/* KEEP GENERIC GCC THE LAST ENTRY */
|
|
324
|
+
/* ===================================== */
|
|
325
|
+
|
|
326
|
+
#elif defined(__GNUC__) && !defined(_SCO_DS)
|
|
327
|
+
# if !defined(__LP64__) && \
|
|
328
|
+
(defined(__ILP32__) || defined(__i386__) || defined(__hppa__) || \
|
|
329
|
+
defined(__ppc__) || defined(__powerpc__) || defined(__arm__) || \
|
|
330
|
+
defined(__sparc__) || defined(__mips__) || defined(__sh__) || \
|
|
331
|
+
defined(__XTENSA__) || \
|
|
332
|
+
(defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 4) || \
|
|
333
|
+
(defined(__LONG_MAX__) && __LONG_MAX__ == 2147483647L))
|
|
334
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
335
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
336
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
337
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
338
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
339
|
+
# define CURL_POPCOUNT64(x) __builtin_popcountll(x)
|
|
340
|
+
# define CURL_CTZ64(x) __builtin_ctzll(x)
|
|
341
|
+
# elif defined(__LP64__) || \
|
|
342
|
+
defined(__x86_64__) || defined(__ppc64__) || defined(__sparc64__) || \
|
|
343
|
+
defined(__e2k__) || \
|
|
344
|
+
(defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 8) || \
|
|
345
|
+
(defined(__LONG_MAX__) && __LONG_MAX__ == 9223372036854775807L)
|
|
346
|
+
# define CURL_TYPEOF_CURL_OFF_T long
|
|
347
|
+
# define CURL_FORMAT_CURL_OFF_T "ld"
|
|
348
|
+
# define CURL_FORMAT_CURL_OFF_TU "lu"
|
|
349
|
+
# define CURL_SUFFIX_CURL_OFF_T L
|
|
350
|
+
# define CURL_SUFFIX_CURL_OFF_TU UL
|
|
351
|
+
# define CURL_POPCOUNT64(x) __builtin_popcountl(x)
|
|
352
|
+
# define CURL_CTZ64(x) __builtin_ctzl(x)
|
|
353
|
+
# endif
|
|
354
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
|
|
355
|
+
# define CURL_PULL_SYS_TYPES_H 1
|
|
356
|
+
# define CURL_PULL_SYS_SOCKET_H 1
|
|
357
|
+
|
|
358
|
+
#else
|
|
359
|
+
/* generic "safe guess" on old 32-bit style */
|
|
360
|
+
# define CURL_TYPEOF_CURL_OFF_T long long
|
|
361
|
+
# define CURL_FORMAT_CURL_OFF_T "lld"
|
|
362
|
+
# define CURL_FORMAT_CURL_OFF_TU "llu"
|
|
363
|
+
# define CURL_SUFFIX_CURL_OFF_T LL
|
|
364
|
+
# define CURL_SUFFIX_CURL_OFF_TU ULL
|
|
365
|
+
# define CURL_TYPEOF_CURL_SOCKLEN_T int
|
|
366
|
+
#endif
|
|
367
|
+
|
|
368
|
+
#ifdef _AIX
|
|
369
|
+
/* AIX needs <sys/poll.h> */
|
|
370
|
+
#define CURL_PULL_SYS_POLL_H
|
|
371
|
+
#endif
|
|
372
|
+
|
|
373
|
+
/* CURL_PULL_SYS_TYPES_H is defined above when inclusion of header file */
|
|
374
|
+
/* sys/types.h is required here to properly make type definitions below. */
|
|
375
|
+
#ifdef CURL_PULL_SYS_TYPES_H
|
|
376
|
+
# include <sys/types.h>
|
|
377
|
+
#endif
|
|
378
|
+
|
|
379
|
+
/* CURL_PULL_SYS_SOCKET_H is defined above when inclusion of header file */
|
|
380
|
+
/* sys/socket.h is required here to properly make type definitions below. */
|
|
381
|
+
#ifdef CURL_PULL_SYS_SOCKET_H
|
|
382
|
+
# include <sys/socket.h>
|
|
383
|
+
#endif
|
|
384
|
+
|
|
385
|
+
/* CURL_PULL_SYS_POLL_H is defined above when inclusion of header file */
|
|
386
|
+
/* sys/poll.h is required here to properly make type definitions below. */
|
|
387
|
+
#ifdef CURL_PULL_SYS_POLL_H
|
|
388
|
+
# include <sys/poll.h>
|
|
389
|
+
#endif
|
|
390
|
+
|
|
391
|
+
/* Data type definition of curl_socklen_t. */
|
|
392
|
+
#ifdef CURL_TYPEOF_CURL_SOCKLEN_T
|
|
393
|
+
typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t;
|
|
394
|
+
#endif
|
|
395
|
+
|
|
396
|
+
/* Data type definition of curl_off_t. */
|
|
397
|
+
|
|
398
|
+
#ifdef CURL_TYPEOF_CURL_OFF_T
|
|
399
|
+
typedef CURL_TYPEOF_CURL_OFF_T curl_off_t;
|
|
400
|
+
#endif
|
|
401
|
+
|
|
402
|
+
#endif /* CURLINC_SYSTEM_H */
|