licentivo-launch 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.
Files changed (143) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +35 -0
  4. data/ext/launch_native/extconf.rb +28 -0
  5. data/lib/licentivo_launch/vendor/licentivo.rb +262 -0
  6. data/lib/licentivo_launch.rb +352 -0
  7. data/vendor/LICENSE +21 -0
  8. data/vendor/NOTICE +17 -0
  9. data/vendor/VERSION +1 -0
  10. data/vendor/c/app.c +33 -0
  11. data/vendor/c/demo.c +77 -0
  12. data/vendor/c/feature_tasks.h +72 -0
  13. data/vendor/c/licentivo.c +382 -0
  14. data/vendor/c/licentivo.h +67 -0
  15. data/vendor/c/quickstart.c +51 -0
  16. data/vendor/c/test_vectors.c +4 -0
  17. data/vendor/c/vendor/Monocypher-LICENCE.md +173 -0
  18. data/vendor/c/vendor/cJSON-LICENSE +20 -0
  19. data/vendor/c/vendor/cJSON.c +3191 -0
  20. data/vendor/c/vendor/cJSON.h +306 -0
  21. data/vendor/c/vendor/monocypher-ed25519.c +500 -0
  22. data/vendor/c/vendor/monocypher-ed25519.h +140 -0
  23. data/vendor/c/vendor/monocypher.c +2956 -0
  24. data/vendor/c/vendor/monocypher.h +321 -0
  25. data/vendor/curl/COPYING.txt +22 -0
  26. data/vendor/curl/bin/libcurl-x64.dll +0 -0
  27. data/vendor/curl/include/brotli/decode.h +409 -0
  28. data/vendor/curl/include/brotli/encode.h +505 -0
  29. data/vendor/curl/include/brotli/port.h +302 -0
  30. data/vendor/curl/include/brotli/shared_dictionary.h +100 -0
  31. data/vendor/curl/include/brotli/types.h +83 -0
  32. data/vendor/curl/include/curl/curl.h +3374 -0
  33. data/vendor/curl/include/curl/curlver.h +77 -0
  34. data/vendor/curl/include/curl/easy.h +123 -0
  35. data/vendor/curl/include/curl/header.h +74 -0
  36. data/vendor/curl/include/curl/mprintf.h +85 -0
  37. data/vendor/curl/include/curl/multi.h +561 -0
  38. data/vendor/curl/include/curl/options.h +70 -0
  39. data/vendor/curl/include/curl/stdcheaders.h +35 -0
  40. data/vendor/curl/include/curl/system.h +399 -0
  41. data/vendor/curl/include/curl/typecheck-gcc.h +964 -0
  42. data/vendor/curl/include/curl/urlapi.h +156 -0
  43. data/vendor/curl/include/curl/websockets.h +98 -0
  44. data/vendor/curl/include/libpsl.h +207 -0
  45. data/vendor/curl/include/libssh2.h +1516 -0
  46. data/vendor/curl/include/libssh2_publickey.h +128 -0
  47. data/vendor/curl/include/libssh2_sftp.h +382 -0
  48. data/vendor/curl/include/nghttp2/nghttp2.h +6878 -0
  49. data/vendor/curl/include/nghttp2/nghttp2ver.h +42 -0
  50. data/vendor/curl/include/nghttp3/nghttp3.h +3704 -0
  51. data/vendor/curl/include/nghttp3/version.h +46 -0
  52. data/vendor/curl/include/ngtcp2/ngtcp2.h +7485 -0
  53. data/vendor/curl/include/ngtcp2/ngtcp2_crypto.h +1071 -0
  54. data/vendor/curl/include/ngtcp2/ngtcp2_crypto_quictls.h +147 -0
  55. data/vendor/curl/include/ngtcp2/version.h +51 -0
  56. data/vendor/curl/include/openssl/aes.h +120 -0
  57. data/vendor/curl/include/openssl/asn1.h +1121 -0
  58. data/vendor/curl/include/openssl/asn1t.h +996 -0
  59. data/vendor/curl/include/openssl/bio.h +716 -0
  60. data/vendor/curl/include/openssl/blowfish.h +106 -0
  61. data/vendor/curl/include/openssl/bn.h +480 -0
  62. data/vendor/curl/include/openssl/buffer.h +102 -0
  63. data/vendor/curl/include/openssl/camellia.h +121 -0
  64. data/vendor/curl/include/openssl/cast.h +99 -0
  65. data/vendor/curl/include/openssl/chacha.h +54 -0
  66. data/vendor/curl/include/openssl/cmac.h +81 -0
  67. data/vendor/curl/include/openssl/cms.h +541 -0
  68. data/vendor/curl/include/openssl/comp.h +7 -0
  69. data/vendor/curl/include/openssl/conf.h +189 -0
  70. data/vendor/curl/include/openssl/crypto.h +458 -0
  71. data/vendor/curl/include/openssl/ct.h +567 -0
  72. data/vendor/curl/include/openssl/curve25519.h +104 -0
  73. data/vendor/curl/include/openssl/des.h +215 -0
  74. data/vendor/curl/include/openssl/dh.h +245 -0
  75. data/vendor/curl/include/openssl/dsa.h +263 -0
  76. data/vendor/curl/include/openssl/dtls1.h +107 -0
  77. data/vendor/curl/include/openssl/ec.h +675 -0
  78. data/vendor/curl/include/openssl/ecdh.h +6 -0
  79. data/vendor/curl/include/openssl/ecdsa.h +6 -0
  80. data/vendor/curl/include/openssl/engine.h +215 -0
  81. data/vendor/curl/include/openssl/err.h +325 -0
  82. data/vendor/curl/include/openssl/evp.h +1288 -0
  83. data/vendor/curl/include/openssl/hkdf.h +65 -0
  84. data/vendor/curl/include/openssl/hmac.h +101 -0
  85. data/vendor/curl/include/openssl/idea.h +99 -0
  86. data/vendor/curl/include/openssl/kdf.h +137 -0
  87. data/vendor/curl/include/openssl/lhash.h +179 -0
  88. data/vendor/curl/include/openssl/md4.h +105 -0
  89. data/vendor/curl/include/openssl/md5.h +99 -0
  90. data/vendor/curl/include/openssl/mlkem.h +236 -0
  91. data/vendor/curl/include/openssl/modes.h +118 -0
  92. data/vendor/curl/include/openssl/obj_mac.h +4646 -0
  93. data/vendor/curl/include/openssl/objects.h +137 -0
  94. data/vendor/curl/include/openssl/ocsp.h +484 -0
  95. data/vendor/curl/include/openssl/opensslconf.h +16 -0
  96. data/vendor/curl/include/openssl/opensslfeatures.h +153 -0
  97. data/vendor/curl/include/openssl/opensslv.h +18 -0
  98. data/vendor/curl/include/openssl/ossl_typ.h +196 -0
  99. data/vendor/curl/include/openssl/pem.h +542 -0
  100. data/vendor/curl/include/openssl/pkcs12.h +284 -0
  101. data/vendor/curl/include/openssl/pkcs7.h +523 -0
  102. data/vendor/curl/include/openssl/poly1305.h +45 -0
  103. data/vendor/curl/include/openssl/posix_time.h +54 -0
  104. data/vendor/curl/include/openssl/rand.h +118 -0
  105. data/vendor/curl/include/openssl/rc2.h +101 -0
  106. data/vendor/curl/include/openssl/rc4.h +88 -0
  107. data/vendor/curl/include/openssl/ripemd.h +107 -0
  108. data/vendor/curl/include/openssl/rsa.h +603 -0
  109. data/vendor/curl/include/openssl/safestack.h +1739 -0
  110. data/vendor/curl/include/openssl/sha.h +190 -0
  111. data/vendor/curl/include/openssl/sm3.h +49 -0
  112. data/vendor/curl/include/openssl/sm4.h +47 -0
  113. data/vendor/curl/include/openssl/srtp.h +148 -0
  114. data/vendor/curl/include/openssl/ssl.h +2336 -0
  115. data/vendor/curl/include/openssl/ssl3.h +441 -0
  116. data/vendor/curl/include/openssl/stack.h +99 -0
  117. data/vendor/curl/include/openssl/tls1.h +764 -0
  118. data/vendor/curl/include/openssl/ts.h +660 -0
  119. data/vendor/curl/include/openssl/txt_db.h +112 -0
  120. data/vendor/curl/include/openssl/ui.h +397 -0
  121. data/vendor/curl/include/openssl/x509.h +1037 -0
  122. data/vendor/curl/include/openssl/x509_vfy.h +464 -0
  123. data/vendor/curl/include/openssl/x509v3.h +1039 -0
  124. data/vendor/curl/include/zconf.h +206 -0
  125. data/vendor/curl/include/zdict.h +481 -0
  126. data/vendor/curl/include/zlib.h +1859 -0
  127. data/vendor/curl/include/zlib_name_mangling.h +8 -0
  128. data/vendor/curl/include/zstd.h +3198 -0
  129. data/vendor/curl/include/zstd_errors.h +107 -0
  130. data/vendor/curl/lib/libcurl.dll.a +0 -0
  131. data/vendor/curl/licenses/brotli/LICENSE.txt +19 -0
  132. data/vendor/curl/licenses/certdata/LICENSE.url +2 -0
  133. data/vendor/curl/licenses/libpsl/COPYING.txt +20 -0
  134. data/vendor/curl/licenses/libressl/COPYING.txt +133 -0
  135. data/vendor/curl/licenses/libssh2/COPYING.txt +43 -0
  136. data/vendor/curl/licenses/nghttp2/COPYING.txt +23 -0
  137. data/vendor/curl/licenses/nghttp3/COPYING.txt +22 -0
  138. data/vendor/curl/licenses/ngtcp2/COPYING.txt +22 -0
  139. data/vendor/curl/licenses/psl/LICENSE.txt +373 -0
  140. data/vendor/curl/licenses/trurl/COPYING.txt +22 -0
  141. data/vendor/curl/licenses/zlibng/LICENSE.md +19 -0
  142. data/vendor/curl/licenses/zstd/LICENSE.txt +30 -0
  143. metadata +205 -0
@@ -0,0 +1,399 @@
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
+ * to 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
+ # ifdef _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
+ # ifdef __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
+ # ifndef __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
+ # define CURL_TYPEOF_CURL_OFF_T __int64
139
+ # define CURL_FORMAT_CURL_OFF_T "I64d"
140
+ # define CURL_FORMAT_CURL_OFF_TU "I64u"
141
+ # define CURL_SUFFIX_CURL_OFF_T i64
142
+ # define CURL_SUFFIX_CURL_OFF_TU ui64
143
+ # define CURL_TYPEOF_CURL_SOCKLEN_T int
144
+
145
+ #elif defined(__MINGW32__)
146
+ # include <inttypes.h>
147
+ # define CURL_TYPEOF_CURL_OFF_T long long
148
+ # define CURL_FORMAT_CURL_OFF_T PRId64
149
+ # define CURL_FORMAT_CURL_OFF_TU PRIu64
150
+ # define CURL_SUFFIX_CURL_OFF_T LL
151
+ # define CURL_SUFFIX_CURL_OFF_TU ULL
152
+ # define CURL_TYPEOF_CURL_SOCKLEN_T int
153
+ # define CURL_PULL_SYS_TYPES_H 1
154
+
155
+ #elif defined(__VMS)
156
+ # ifdef __VAX
157
+ # define CURL_TYPEOF_CURL_OFF_T long
158
+ # define CURL_FORMAT_CURL_OFF_T "ld"
159
+ # define CURL_FORMAT_CURL_OFF_TU "lu"
160
+ # define CURL_SUFFIX_CURL_OFF_T L
161
+ # define CURL_SUFFIX_CURL_OFF_TU UL
162
+ # else
163
+ # define CURL_TYPEOF_CURL_OFF_T long long
164
+ # define CURL_FORMAT_CURL_OFF_T "lld"
165
+ # define CURL_FORMAT_CURL_OFF_TU "llu"
166
+ # define CURL_SUFFIX_CURL_OFF_T LL
167
+ # define CURL_SUFFIX_CURL_OFF_TU ULL
168
+ # endif
169
+ # define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int
170
+
171
+ #elif defined(__OS400__)
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
+ # define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
178
+ # define CURL_PULL_SYS_TYPES_H 1
179
+ # define CURL_PULL_SYS_SOCKET_H 1
180
+
181
+ #elif defined(__MVS__)
182
+ # ifdef _LONG_LONG
183
+ # define CURL_TYPEOF_CURL_OFF_T long long
184
+ # define CURL_FORMAT_CURL_OFF_T "lld"
185
+ # define CURL_FORMAT_CURL_OFF_TU "llu"
186
+ # define CURL_SUFFIX_CURL_OFF_T LL
187
+ # define CURL_SUFFIX_CURL_OFF_TU ULL
188
+ # else /* _LP64 and default */
189
+ # define CURL_TYPEOF_CURL_OFF_T long
190
+ # define CURL_FORMAT_CURL_OFF_T "ld"
191
+ # define CURL_FORMAT_CURL_OFF_TU "lu"
192
+ # define CURL_SUFFIX_CURL_OFF_T L
193
+ # define CURL_SUFFIX_CURL_OFF_TU UL
194
+ # endif
195
+ # define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
196
+ # define CURL_PULL_SYS_TYPES_H 1
197
+ # define CURL_PULL_SYS_SOCKET_H 1
198
+
199
+ #elif defined(__370__)
200
+ # if defined(__IBMC__) || defined(__IBMCPP__)
201
+ # ifdef _LONG_LONG
202
+ # define CURL_TYPEOF_CURL_OFF_T long long
203
+ # define CURL_FORMAT_CURL_OFF_T "lld"
204
+ # define CURL_FORMAT_CURL_OFF_TU "llu"
205
+ # define CURL_SUFFIX_CURL_OFF_T LL
206
+ # define CURL_SUFFIX_CURL_OFF_TU ULL
207
+ # else /* _LP64 and default */
208
+ # define CURL_TYPEOF_CURL_OFF_T long
209
+ # define CURL_FORMAT_CURL_OFF_T "ld"
210
+ # define CURL_FORMAT_CURL_OFF_TU "lu"
211
+ # define CURL_SUFFIX_CURL_OFF_T L
212
+ # define CURL_SUFFIX_CURL_OFF_TU UL
213
+ # endif
214
+ # define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
215
+ # define CURL_PULL_SYS_TYPES_H 1
216
+ # define CURL_PULL_SYS_SOCKET_H 1
217
+ # endif
218
+
219
+ #elif defined(TPF)
220
+ # define CURL_TYPEOF_CURL_OFF_T long
221
+ # define CURL_FORMAT_CURL_OFF_T "ld"
222
+ # define CURL_FORMAT_CURL_OFF_TU "lu"
223
+ # define CURL_SUFFIX_CURL_OFF_T L
224
+ # define CURL_SUFFIX_CURL_OFF_TU UL
225
+ # define CURL_TYPEOF_CURL_SOCKLEN_T int
226
+
227
+ #elif defined(__TINYC__) /* also known as tcc */
228
+ # define CURL_TYPEOF_CURL_OFF_T long long
229
+ # define CURL_FORMAT_CURL_OFF_T "lld"
230
+ # define CURL_FORMAT_CURL_OFF_TU "llu"
231
+ # define CURL_SUFFIX_CURL_OFF_T LL
232
+ # define CURL_SUFFIX_CURL_OFF_TU ULL
233
+ # define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
234
+ # define CURL_PULL_SYS_TYPES_H 1
235
+ # define CURL_PULL_SYS_SOCKET_H 1
236
+
237
+ #elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) /* Oracle Solaris Studio */
238
+ # if !defined(__LP64) && (defined(__ILP32) || \
239
+ defined(__i386) || \
240
+ defined(__sparcv8) || \
241
+ defined(__sparcv8plus))
242
+ # define CURL_TYPEOF_CURL_OFF_T long long
243
+ # define CURL_FORMAT_CURL_OFF_T "lld"
244
+ # define CURL_FORMAT_CURL_OFF_TU "llu"
245
+ # define CURL_SUFFIX_CURL_OFF_T LL
246
+ # define CURL_SUFFIX_CURL_OFF_TU ULL
247
+ # elif defined(__LP64) || \
248
+ defined(__amd64) || defined(__sparcv9)
249
+ # define CURL_TYPEOF_CURL_OFF_T long
250
+ # define CURL_FORMAT_CURL_OFF_T "ld"
251
+ # define CURL_FORMAT_CURL_OFF_TU "lu"
252
+ # define CURL_SUFFIX_CURL_OFF_T L
253
+ # define CURL_SUFFIX_CURL_OFF_TU UL
254
+ # endif
255
+ # define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
256
+ # define CURL_PULL_SYS_TYPES_H 1
257
+ # define CURL_PULL_SYS_SOCKET_H 1
258
+
259
+ #elif defined(__xlc__) /* IBM xlc compiler */
260
+ # ifndef _LP64
261
+ # define CURL_TYPEOF_CURL_OFF_T long long
262
+ # define CURL_FORMAT_CURL_OFF_T "lld"
263
+ # define CURL_FORMAT_CURL_OFF_TU "llu"
264
+ # define CURL_SUFFIX_CURL_OFF_T LL
265
+ # define CURL_SUFFIX_CURL_OFF_TU ULL
266
+ # else
267
+ # define CURL_TYPEOF_CURL_OFF_T long
268
+ # define CURL_FORMAT_CURL_OFF_T "ld"
269
+ # define CURL_FORMAT_CURL_OFF_TU "lu"
270
+ # define CURL_SUFFIX_CURL_OFF_T L
271
+ # define CURL_SUFFIX_CURL_OFF_TU UL
272
+ # endif
273
+ # define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
274
+ # define CURL_PULL_SYS_TYPES_H 1
275
+ # define CURL_PULL_SYS_SOCKET_H 1
276
+
277
+ #elif defined(__hpux) /* HP aCC compiler */
278
+ # ifndef _LP64
279
+ # define CURL_TYPEOF_CURL_OFF_T long long
280
+ # define CURL_FORMAT_CURL_OFF_T "lld"
281
+ # define CURL_FORMAT_CURL_OFF_TU "llu"
282
+ # define CURL_SUFFIX_CURL_OFF_T LL
283
+ # define CURL_SUFFIX_CURL_OFF_TU ULL
284
+ # else
285
+ # define CURL_TYPEOF_CURL_OFF_T long
286
+ # define CURL_FORMAT_CURL_OFF_T "ld"
287
+ # define CURL_FORMAT_CURL_OFF_TU "lu"
288
+ # define CURL_SUFFIX_CURL_OFF_T L
289
+ # define CURL_SUFFIX_CURL_OFF_TU UL
290
+ # endif
291
+ # define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
292
+ # define CURL_PULL_SYS_TYPES_H 1
293
+ # define CURL_PULL_SYS_SOCKET_H 1
294
+
295
+ /* ===================================== */
296
+ /* KEEP MSVC THE PENULTIMATE ENTRY */
297
+ /* ===================================== */
298
+
299
+ #elif defined(_MSC_VER)
300
+ # if _MSC_VER >= 1800
301
+ # include <inttypes.h>
302
+ # define CURL_FORMAT_CURL_OFF_T PRId64
303
+ # define CURL_FORMAT_CURL_OFF_TU PRIu64
304
+ # else
305
+ # define CURL_FORMAT_CURL_OFF_T "I64d"
306
+ # define CURL_FORMAT_CURL_OFF_TU "I64u"
307
+ # endif
308
+ # define CURL_TYPEOF_CURL_OFF_T __int64
309
+ # define CURL_SUFFIX_CURL_OFF_T i64
310
+ # define CURL_SUFFIX_CURL_OFF_TU ui64
311
+ # define CURL_TYPEOF_CURL_SOCKLEN_T int
312
+
313
+ /* ===================================== */
314
+ /* KEEP GENERIC GCC THE LAST ENTRY */
315
+ /* ===================================== */
316
+
317
+ #elif defined(__GNUC__) && !defined(_SCO_DS)
318
+ # if !defined(__LP64__) && \
319
+ (defined(__ILP32__) || defined(__i386__) || defined(__hppa__) || \
320
+ defined(__ppc__) || defined(__powerpc__) || defined(__arm__) || \
321
+ defined(__sparc__) || defined(__mips__) || defined(__sh__) || \
322
+ defined(__XTENSA__) || \
323
+ (defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 4) || \
324
+ (defined(__LONG_MAX__) && __LONG_MAX__ == 2147483647L))
325
+ # define CURL_TYPEOF_CURL_OFF_T long long
326
+ # define CURL_FORMAT_CURL_OFF_T "lld"
327
+ # define CURL_FORMAT_CURL_OFF_TU "llu"
328
+ # define CURL_SUFFIX_CURL_OFF_T LL
329
+ # define CURL_SUFFIX_CURL_OFF_TU ULL
330
+ # if (__GNUC__ >= 4) || \
331
+ ((__GNUC__ == 3) && defined(__GNUC_MINOR__) && (__GNUC_MINOR__ >= 4))
332
+ # define CURL_POPCOUNT64(x) __builtin_popcountll(x)
333
+ # define CURL_CTZ64(x) __builtin_ctzll(x)
334
+ # endif
335
+ # elif defined(__LP64__) || \
336
+ defined(__x86_64__) || defined(__ppc64__) || defined(__sparc64__) || \
337
+ defined(__e2k__) || \
338
+ (defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 8) || \
339
+ (defined(__LONG_MAX__) && __LONG_MAX__ == 9223372036854775807L)
340
+ # define CURL_TYPEOF_CURL_OFF_T long
341
+ # define CURL_FORMAT_CURL_OFF_T "ld"
342
+ # define CURL_FORMAT_CURL_OFF_TU "lu"
343
+ # define CURL_SUFFIX_CURL_OFF_T L
344
+ # define CURL_SUFFIX_CURL_OFF_TU UL
345
+ # if (__GNUC__ >= 4) || \
346
+ ((__GNUC__ == 3) && defined(__GNUC_MINOR__) && (__GNUC_MINOR__ >= 4))
347
+ # define CURL_POPCOUNT64(x) __builtin_popcountl(x)
348
+ # define CURL_CTZ64(x) __builtin_ctzl(x)
349
+ # endif
350
+ # endif
351
+ # define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
352
+ # define CURL_PULL_SYS_TYPES_H 1
353
+ # define CURL_PULL_SYS_SOCKET_H 1
354
+
355
+ #else
356
+ /* generic "safe guess" on old 32-bit style */
357
+ # define CURL_TYPEOF_CURL_OFF_T long long
358
+ # define CURL_FORMAT_CURL_OFF_T "lld"
359
+ # define CURL_FORMAT_CURL_OFF_TU "llu"
360
+ # define CURL_SUFFIX_CURL_OFF_T LL
361
+ # define CURL_SUFFIX_CURL_OFF_TU ULL
362
+ # define CURL_TYPEOF_CURL_SOCKLEN_T int
363
+ #endif
364
+
365
+ #ifdef _AIX
366
+ /* AIX needs <sys/poll.h> */
367
+ #define CURL_PULL_SYS_POLL_H
368
+ #endif
369
+
370
+ /* CURL_PULL_SYS_TYPES_H is defined above when inclusion of header file
371
+ sys/types.h is required here to properly make type definitions below. */
372
+ #ifdef CURL_PULL_SYS_TYPES_H
373
+ # include <sys/types.h>
374
+ #endif
375
+
376
+ /* CURL_PULL_SYS_SOCKET_H is defined above when inclusion of header file
377
+ sys/socket.h is required here to properly make type definitions below. */
378
+ #ifdef CURL_PULL_SYS_SOCKET_H
379
+ # include <sys/socket.h>
380
+ #endif
381
+
382
+ /* CURL_PULL_SYS_POLL_H is defined above when inclusion of header file
383
+ sys/poll.h is required here to properly make type definitions below. */
384
+ #ifdef CURL_PULL_SYS_POLL_H
385
+ # include <sys/poll.h>
386
+ #endif
387
+
388
+ /* Data type definition of curl_socklen_t. */
389
+ #ifdef CURL_TYPEOF_CURL_SOCKLEN_T
390
+ typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t;
391
+ #endif
392
+
393
+ /* Data type definition of curl_off_t. */
394
+
395
+ #ifdef CURL_TYPEOF_CURL_OFF_T
396
+ typedef CURL_TYPEOF_CURL_OFF_T curl_off_t;
397
+ #endif
398
+
399
+ #endif /* CURLINC_SYSTEM_H */