ruby-curl 0.0.0 → 2.0.0
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 +4 -4
- data/Gemfile +3 -0
- data/LICENSE.txt +21 -0
- data/README.md +48 -0
- data/ext/curl.c +402 -0
- data/ext/curl.h +37 -0
- data/ext/easy.c +554 -0
- data/ext/easy.h +30 -0
- data/ext/extconf.rb +26 -0
- data/ext/multi.c +133 -0
- data/ext/multi.h +18 -0
- data/lib/ruby-curl/version.rb +3 -0
- data/lib/ruby-curl.rb +4 -1
- data/ruby-curl.gemspec +40 -0
- metadata +83 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db064c18f442a946d1a99c455d2b838e133cb9acbc103f0eeb0a9588d1ebfff1
|
4
|
+
data.tar.gz: 7e603e2b87f653d7c8cc3be86f63325586fea95b8d5c522b493cd34956d5afec
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3dd4cc7dfedc122584dd9f09e3c58ec6b9e6c936879b4c689b3b24f8a11b5eed2ecb818a29be083b3a605454f5ed06520d1be840cb855708d21963ef9def1ca0
|
7
|
+
data.tar.gz: 814b67e4949cc544ee11ed05d2c96e049c1738e310469e9912e03fa40b80a59309468b4bfd9ad2102b82ee8bff754629d113a0b2a0f63144c336ed301f720f96
|
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright (c) 2019 Vijayakumar Ramachandran
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
13
|
+
all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
[](https://badge.fury.io/rb/ruby-curl)
|
2
|
+
|
3
|
+
|
4
|
+
# Introduction
|
5
|
+
|
6
|
+
Ruby-curl aims to be a true libcurl binding for Ruby. Currently, ruby-curl offers full support for the HTTP protocol over libcurl’s easy interface. Just like libcurl, when using ruby-curl you init your easy-session and get a handle, which you use as input to the following interface functions you use.
|
7
|
+
|
8
|
+
|
9
|
+
|
10
|
+
# Requirements
|
11
|
+
|
12
|
+
```
|
13
|
+
Ruby 2.7 or higher
|
14
|
+
|
15
|
+
Libcurl 7.28.0 or higher
|
16
|
+
```
|
17
|
+
|
18
|
+
|
19
|
+
# Installation
|
20
|
+
|
21
|
+
Bundler:
|
22
|
+
```
|
23
|
+
Gem ‘ruby-curl’
|
24
|
+
```
|
25
|
+
|
26
|
+
Manual:
|
27
|
+
```
|
28
|
+
Gem install ruby-curl
|
29
|
+
```
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
# Usage:
|
34
|
+
|
35
|
+
```
|
36
|
+
require 'ruby-curl'
|
37
|
+
|
38
|
+
curl = Curl::Easy.new
|
39
|
+
curl.setopt(Curl::Opt::URL, "https://example.com")
|
40
|
+
|
41
|
+
res = curl.perform
|
42
|
+
# <!doctype html>...
|
43
|
+
|
44
|
+
res
|
45
|
+
# => 0 # CURLE_OK
|
46
|
+
|
47
|
+
curl.cleanup
|
48
|
+
```
|
data/ext/curl.c
ADDED
@@ -0,0 +1,402 @@
|
|
1
|
+
#include "curl.h"
|
2
|
+
|
3
|
+
VALUE rb_mCurl;
|
4
|
+
|
5
|
+
void Init_curl() {
|
6
|
+
VALUE rb_mOpt, rb_mMOpt, rb_mInfo, rb_mProxy, rb_mAuth, rb_mProto, rb_mError;
|
7
|
+
|
8
|
+
rb_mCurl = rb_define_module("Curl");
|
9
|
+
rb_mOpt = rb_define_module_under(rb_mCurl, "Opt");
|
10
|
+
rb_mMOpt = rb_define_module_under(rb_mCurl, "MOpt");
|
11
|
+
rb_mInfo = rb_define_module_under(rb_mCurl, "Info");
|
12
|
+
rb_mProxy = rb_define_module_under(rb_mCurl, "Proxy");
|
13
|
+
rb_mAuth = rb_define_module_under(rb_mCurl, "Auth");
|
14
|
+
rb_mProto = rb_define_module_under(rb_mCurl, "Proto");
|
15
|
+
rb_mError = rb_define_module_under(rb_mCurl, "Error");
|
16
|
+
|
17
|
+
curl_global_init(CURL_GLOBAL_ALL);
|
18
|
+
|
19
|
+
rb_define_const(rb_mCurl, "LIBCURL_VERSION", rb_str_new_cstr(curl_version()));
|
20
|
+
|
21
|
+
/* Curl constants */
|
22
|
+
RB_DEFINE_M_CURL_CONST("HTTP_VERSION_NONE", CURL_HTTP_VERSION_NONE);
|
23
|
+
RB_DEFINE_M_CURL_CONST("HTTP_VERSION_1_0", CURL_HTTP_VERSION_1_0);
|
24
|
+
RB_DEFINE_M_CURL_CONST("HTTP_VERSION_1_1", CURL_HTTP_VERSION_1_1);
|
25
|
+
#if LIBCURL_VERSION_NUM >= 0x072100 /* Available since 7.33.0 */
|
26
|
+
RB_DEFINE_M_CURL_CONST("HTTP_VERSION_2_0", CURL_HTTP_VERSION_2_0);
|
27
|
+
#endif
|
28
|
+
#if LIBCURL_VERSION_NUM >= 0x072f00 /* Available since 7.47.0 */
|
29
|
+
RB_DEFINE_M_CURL_CONST("HTTP_VERSION_2TLS", CURL_HTTP_VERSION_2TLS);
|
30
|
+
#endif
|
31
|
+
#if LIBCURL_VERSION_NUM >= 0x073100 /* Available since 7.49.0 */
|
32
|
+
RB_DEFINE_M_CURL_CONST("HTTP_VERSION_2_PRIOR_KNOWLEDGE", CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE);
|
33
|
+
#endif
|
34
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_DEFAULT", CURL_SSLVERSION_DEFAULT);
|
35
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_TLSv1", CURL_SSLVERSION_TLSv1);
|
36
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_SSLv2", CURL_SSLVERSION_SSLv2);
|
37
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_SSLv3", CURL_SSLVERSION_SSLv3);
|
38
|
+
#if LIBCURL_VERSION_NUM >= 0x072200 /* Available since 7.34.0 */
|
39
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_TLSv1_0", CURL_SSLVERSION_TLSv1_0);
|
40
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_TLSv1_1", CURL_SSLVERSION_TLSv1_1);
|
41
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_TLSv1_2", CURL_SSLVERSION_TLSv1_2);
|
42
|
+
#endif
|
43
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_TLSv1_3", CURL_SSLVERSION_TLSv1_3);
|
44
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_MAX_DEFAULT", CURL_SSLVERSION_MAX_DEFAULT);
|
45
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_MAX_TLSv1_0", CURL_SSLVERSION_MAX_TLSv1_0);
|
46
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_MAX_TLSv1_1", CURL_SSLVERSION_MAX_TLSv1_1);
|
47
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_MAX_TLSv1_2", CURL_SSLVERSION_MAX_TLSv1_2);
|
48
|
+
RB_DEFINE_M_CURL_CONST("SSLVERSION_MAX_TLSv1_3", CURL_SSLVERSION_MAX_TLSv1_3);
|
49
|
+
RB_DEFINE_M_CURL_CONST("TIMECOND_IFMODSINCE", CURL_TIMECOND_IFMODSINCE);
|
50
|
+
RB_DEFINE_M_CURL_CONST("TIMECOND_IFUNMODSINCE", CURL_TIMECOND_IFUNMODSINCE);
|
51
|
+
RB_DEFINE_M_CURL_CONST("TIMECOND_LASTMOD", CURL_TIMECOND_LASTMOD);
|
52
|
+
RB_DEFINE_M_CURL_CONST("TIMECOND_NONE", CURL_TIMECOND_NONE);
|
53
|
+
RB_DEFINE_M_CURL_CONST("NETRC_OPTIONAL", CURL_NETRC_OPTIONAL);
|
54
|
+
RB_DEFINE_M_CURL_CONST("NETRC_IGNORED", CURL_NETRC_IGNORED);
|
55
|
+
RB_DEFINE_M_CURL_CONST("NETRC_REQUIRED", CURL_NETRC_REQUIRED);
|
56
|
+
#if LIBCURL_VERSION_NUM >= 0x071301 /* Available since 7.19.1 */
|
57
|
+
RB_DEFINE_M_CURL_CONST("REDIR_POST_301", CURL_REDIR_POST_301);
|
58
|
+
RB_DEFINE_M_CURL_CONST("REDIR_POST_302", CURL_REDIR_POST_302);
|
59
|
+
RB_DEFINE_M_CURL_CONST("REDIR_POST_ALL", CURL_REDIR_POST_ALL);
|
60
|
+
#endif
|
61
|
+
#if LIBCURL_VERSION_NUM >= 0x071901 /* Available since 7.25.1 */
|
62
|
+
RB_DEFINE_M_CURL_CONST("REDIR_POST_303", CURL_REDIR_POST_303);
|
63
|
+
#endif
|
64
|
+
#if LIBCURL_VERSION_NUM >= 0x070a08 /* Available since 7.10.8 */
|
65
|
+
RB_DEFINE_M_CURL_CONST("IPRESOLVE_WHATEVER", CURL_IPRESOLVE_WHATEVER);
|
66
|
+
RB_DEFINE_M_CURL_CONST("IPRESOLVE_V4", CURL_IPRESOLVE_V4);
|
67
|
+
RB_DEFINE_M_CURL_CONST("IPRESOLVE_V6", CURL_IPRESOLVE_V6);
|
68
|
+
#endif
|
69
|
+
|
70
|
+
/* Curl::Opt constants */
|
71
|
+
RB_DEFINE_M_OPT_CONST("URL", CURLOPT_URL);
|
72
|
+
RB_DEFINE_M_OPT_CONST("POST", CURLOPT_POST);
|
73
|
+
RB_DEFINE_M_OPT_CONST("TIMEOUT", CURLOPT_TIMEOUT);
|
74
|
+
RB_DEFINE_M_OPT_CONST("WRITEFUNCTION", CURLOPT_WRITEFUNCTION);
|
75
|
+
RB_DEFINE_M_OPT_CONST("WRITEDATA", CURLOPT_WRITEDATA);
|
76
|
+
RB_DEFINE_M_OPT_CONST("HEADERFUNCTION", CURLOPT_HEADERFUNCTION);
|
77
|
+
RB_DEFINE_M_OPT_CONST("HEADERDATA", CURLOPT_HEADERDATA);
|
78
|
+
RB_DEFINE_M_OPT_CONST("READFUNCTION", CURLOPT_READFUNCTION);
|
79
|
+
RB_DEFINE_M_OPT_CONST("READDATA", CURLOPT_READDATA);
|
80
|
+
RB_DEFINE_M_OPT_CONST("FOLLOWLOCATION", CURLOPT_FOLLOWLOCATION);
|
81
|
+
RB_DEFINE_M_OPT_CONST("MAXREDIRS", CURLOPT_MAXREDIRS);
|
82
|
+
RB_DEFINE_M_OPT_CONST("PUT", CURLOPT_PUT);
|
83
|
+
RB_DEFINE_M_OPT_CONST("HTTPGET", CURLOPT_HTTPGET);
|
84
|
+
RB_DEFINE_M_OPT_CONST("UPLOAD", CURLOPT_UPLOAD);
|
85
|
+
RB_DEFINE_M_OPT_CONST("VERBOSE", CURLOPT_VERBOSE);
|
86
|
+
RB_DEFINE_M_OPT_CONST("POSTFIELDS", CURLOPT_POSTFIELDS);
|
87
|
+
RB_DEFINE_M_OPT_CONST("USERAGENT", CURLOPT_USERAGENT);
|
88
|
+
RB_DEFINE_M_OPT_CONST("USERPWD", CURLOPT_USERPWD);
|
89
|
+
#if LIBCURL_VERSION_NUM >= 0x070b00 /* Available since 7.11.0 */
|
90
|
+
RB_DEFINE_M_OPT_CONST("NETRC_FILE", CURLOPT_NETRC_FILE);
|
91
|
+
#endif
|
92
|
+
#if LIBCURL_VERSION_NUM >= 0x070b02 /* Available since 7.11.2 */
|
93
|
+
RB_DEFINE_M_OPT_CONST("TCP_NODELAY", CURLOPT_TCP_NODELAY);
|
94
|
+
#endif
|
95
|
+
#if LIBCURL_VERSION_NUM >= 0x070e01 /* Available since 7.14.1 */
|
96
|
+
RB_DEFINE_M_OPT_CONST("COOKIELIST", CURLOPT_COOKIELIST);
|
97
|
+
RB_DEFINE_M_OPT_CONST("IGNORE_CONTENT_LENGTH", CURLOPT_IGNORE_CONTENT_LENGTH);
|
98
|
+
#endif
|
99
|
+
#if LIBCURL_VERSION_NUM >= 0x070f02 /* Available since 7.15.2 */
|
100
|
+
RB_DEFINE_M_OPT_CONST("CONNECT_ONLY", CURLOPT_CONNECT_ONLY);
|
101
|
+
RB_DEFINE_M_OPT_CONST("LOCALPORT", CURLOPT_LOCALPORT);
|
102
|
+
#endif
|
103
|
+
#if LIBCURL_VERSION_NUM >= 0x070f05 /* Available since 7.15.5 */
|
104
|
+
RB_DEFINE_M_OPT_CONST("MAX_RECV_SPEED_LARGE", CURLOPT_MAX_RECV_SPEED_LARGE);
|
105
|
+
RB_DEFINE_M_OPT_CONST("MAX_SEND_SPEED_LARGE", CURLOPT_MAX_SEND_SPEED_LARGE);
|
106
|
+
#endif
|
107
|
+
#if LIBCURL_VERSION_NUM >= 0x071000 /* Available since 7.16.0 */
|
108
|
+
RB_DEFINE_M_OPT_CONST("SSL_SESSIONID_CACHE", CURLOPT_SSL_SESSIONID_CACHE);
|
109
|
+
#endif
|
110
|
+
#if LIBCURL_VERSION_NUM >= 0x071002 /* Available since 7.16.2 */
|
111
|
+
RB_DEFINE_M_OPT_CONST("CONNECTTIMEOUT_MS", CURLOPT_CONNECTTIMEOUT_MS);
|
112
|
+
RB_DEFINE_M_OPT_CONST("HTTP_CONTENT_DECODING", CURLOPT_HTTP_CONTENT_DECODING);
|
113
|
+
RB_DEFINE_M_OPT_CONST("HTTP_TRANSFER_DECODING", CURLOPT_HTTP_TRANSFER_DECODING);
|
114
|
+
RB_DEFINE_M_OPT_CONST("TIMEOUT_MS", CURLOPT_TIMEOUT_MS);
|
115
|
+
#endif
|
116
|
+
#if LIBCURL_VERSION_NUM >= 0x071004 /* Available since 7.16.4 */
|
117
|
+
RB_DEFINE_M_OPT_CONST("KRBLEVEL", CURLOPT_KRBLEVEL);
|
118
|
+
#endif
|
119
|
+
#if LIBCURL_VERSION_NUM >= 0x071300 /* Available since 7.19.0 */
|
120
|
+
RB_DEFINE_M_OPT_CONST("ADDRESS_SCOPE", CURLOPT_ADDRESS_SCOPE);
|
121
|
+
RB_DEFINE_M_OPT_CONST("CRLFILE", CURLOPT_CRLFILE);
|
122
|
+
RB_DEFINE_M_OPT_CONST("ISSUERCERT", CURLOPT_ISSUERCERT);
|
123
|
+
RB_DEFINE_M_OPT_CONST("KEYPASSWD", CURLOPT_KEYPASSWD);
|
124
|
+
#endif
|
125
|
+
#if LIBCURL_VERSION_NUM >= 0x071301 /* Available since 7.19.1 */
|
126
|
+
RB_DEFINE_M_OPT_CONST("CERTINFO", CURLOPT_CERTINFO);
|
127
|
+
RB_DEFINE_M_OPT_CONST("PASSWORD", CURLOPT_PASSWORD);
|
128
|
+
RB_DEFINE_M_OPT_CONST("POSTREDIR", CURLOPT_POSTREDIR);
|
129
|
+
RB_DEFINE_M_OPT_CONST("USERNAME", CURLOPT_USERNAME);
|
130
|
+
#endif
|
131
|
+
#if LIBCURL_VERSION_NUM >= 0x071304 /* Available since 7.19.4 */
|
132
|
+
RB_DEFINE_M_OPT_CONST("NOPROXY", CURLOPT_NOPROXY);
|
133
|
+
RB_DEFINE_M_OPT_CONST("PROTOCOLS", CURLOPT_PROTOCOLS);
|
134
|
+
RB_DEFINE_M_OPT_CONST("REDIR_PROTOCOLS", CURLOPT_REDIR_PROTOCOLS);
|
135
|
+
RB_DEFINE_M_OPT_CONST("SOCKS5_GSSAPI_NEC", CURLOPT_SOCKS5_GSSAPI_NEC);
|
136
|
+
RB_DEFINE_M_OPT_CONST("SOCKS5_GSSAPI_SERVICE", CURLOPT_SOCKS5_GSSAPI_SERVICE);
|
137
|
+
#endif
|
138
|
+
#if LIBCURL_VERSION_NUM >= 0x071504 /* Available since 7.21.4 */
|
139
|
+
RB_DEFINE_M_OPT_CONST("TLSAUTH_PASSWORD", CURLOPT_TLSAUTH_PASSWORD);
|
140
|
+
RB_DEFINE_M_OPT_CONST("TLSAUTH_TYPE", CURLOPT_TLSAUTH_TYPE);
|
141
|
+
#endif
|
142
|
+
#if LIBCURL_VERSION_NUM >= 0x071600 /* Available since 7.22.0 */
|
143
|
+
RB_DEFINE_M_OPT_CONST("GSSAPI_DELEGATION", CURLOPT_GSSAPI_DELEGATION);
|
144
|
+
#endif
|
145
|
+
#if LIBCURL_VERSION_NUM >= 0x072800 /* Available since 7.40.0 */
|
146
|
+
RB_DEFINE_M_OPT_CONST("UNIX_SOCKET_PATH", CURLOPT_UNIX_SOCKET_PATH);
|
147
|
+
#endif
|
148
|
+
#if LIBCURL_VERSION_NUM >= 0x072a00 /* Available since 7.42.0 */
|
149
|
+
RB_DEFINE_M_OPT_CONST("PATH_AS_IS", CURLOPT_PATH_AS_IS);
|
150
|
+
#endif
|
151
|
+
#if LIBCURL_VERSION_NUM >= 0x072b00 /* Available since 7.43.0 */
|
152
|
+
RB_DEFINE_M_OPT_CONST("PIPEWAIT", CURLOPT_PIPEWAIT);
|
153
|
+
#endif
|
154
|
+
#if LIBCURL_VERSION_NUM >= 0x070a06 /* Available since 7.10.6 */
|
155
|
+
RB_DEFINE_M_OPT_CONST("HTTPAUTH", CURLOPT_HTTPAUTH);
|
156
|
+
#endif
|
157
|
+
#if LIBCURL_VERSION_NUM >= 0x070a07 /* Available since 7.10.7 */
|
158
|
+
RB_DEFINE_M_OPT_CONST("PROXYAUTH", CURLOPT_PROXYAUTH);
|
159
|
+
#endif
|
160
|
+
#if LIBCURL_VERSION_NUM >= 0x070a08 /* Available since 7.10.8 */
|
161
|
+
RB_DEFINE_M_OPT_CONST("IPRESOLVE", CURLOPT_IPRESOLVE);
|
162
|
+
RB_DEFINE_M_OPT_CONST("MAXFILESIZE", CURLOPT_MAXFILESIZE);
|
163
|
+
#endif
|
164
|
+
RB_DEFINE_M_OPT_CONST("AUTOREFERER", CURLOPT_AUTOREFERER);
|
165
|
+
RB_DEFINE_M_OPT_CONST("BUFFERSIZE", CURLOPT_BUFFERSIZE);
|
166
|
+
RB_DEFINE_M_OPT_CONST("CAINFO", CURLOPT_CAINFO);
|
167
|
+
RB_DEFINE_M_OPT_CONST("CAPATH", CURLOPT_CAPATH);
|
168
|
+
RB_DEFINE_M_OPT_CONST("CONNECTTIMEOUT", CURLOPT_CONNECTTIMEOUT);
|
169
|
+
RB_DEFINE_M_OPT_CONST("COOKIE", CURLOPT_COOKIE);
|
170
|
+
RB_DEFINE_M_OPT_CONST("COOKIEFILE", CURLOPT_COOKIEFILE);
|
171
|
+
RB_DEFINE_M_OPT_CONST("COOKIEJAR", CURLOPT_COOKIEJAR);
|
172
|
+
RB_DEFINE_M_OPT_CONST("COOKIESESSION", CURLOPT_COOKIESESSION);
|
173
|
+
RB_DEFINE_M_OPT_CONST("CRLF", CURLOPT_CRLF);
|
174
|
+
RB_DEFINE_M_OPT_CONST("CUSTOMREQUEST", CURLOPT_CUSTOMREQUEST);
|
175
|
+
RB_DEFINE_M_OPT_CONST("DNS_CACHE_TIMEOUT", CURLOPT_DNS_CACHE_TIMEOUT);
|
176
|
+
RB_DEFINE_M_OPT_CONST("DNS_USE_GLOBAL_CACHE", CURLOPT_DNS_USE_GLOBAL_CACHE);
|
177
|
+
RB_DEFINE_M_OPT_CONST("EGDSOCKET", CURLOPT_EGDSOCKET);
|
178
|
+
RB_DEFINE_M_OPT_CONST("ENCODING", CURLOPT_ENCODING);
|
179
|
+
RB_DEFINE_M_OPT_CONST("FAILONERROR", CURLOPT_FAILONERROR);
|
180
|
+
RB_DEFINE_M_OPT_CONST("FILETIME", CURLOPT_FILETIME);
|
181
|
+
RB_DEFINE_M_OPT_CONST("FORBID_REUSE", CURLOPT_FORBID_REUSE);
|
182
|
+
RB_DEFINE_M_OPT_CONST("FRESH_CONNECT", CURLOPT_FRESH_CONNECT);
|
183
|
+
RB_DEFINE_M_OPT_CONST("HEADER", CURLOPT_HEADER);
|
184
|
+
RB_DEFINE_M_OPT_CONST("HTTP200ALIASES", CURLOPT_HTTP200ALIASES);
|
185
|
+
RB_DEFINE_M_OPT_CONST("HTTPHEADER", CURLOPT_HTTPHEADER);
|
186
|
+
RB_DEFINE_M_OPT_CONST("HTTPPROXYTUNNEL", CURLOPT_HTTPPROXYTUNNEL);
|
187
|
+
RB_DEFINE_M_OPT_CONST("HTTP_VERSION", CURLOPT_HTTP_VERSION);
|
188
|
+
RB_DEFINE_M_OPT_CONST("INFILESIZE", CURLOPT_INFILESIZE);
|
189
|
+
RB_DEFINE_M_OPT_CONST("INTERFACE", CURLOPT_INTERFACE);
|
190
|
+
RB_DEFINE_M_OPT_CONST("LOW_SPEED_LIMIT", CURLOPT_LOW_SPEED_LIMIT);
|
191
|
+
RB_DEFINE_M_OPT_CONST("LOW_SPEED_TIME", CURLOPT_LOW_SPEED_TIME);
|
192
|
+
RB_DEFINE_M_OPT_CONST("MAXCONNECTS", CURLOPT_MAXCONNECTS);
|
193
|
+
RB_DEFINE_M_OPT_CONST("NETRC", CURLOPT_NETRC);
|
194
|
+
RB_DEFINE_M_OPT_CONST("NOBODY", CURLOPT_NOBODY);
|
195
|
+
RB_DEFINE_M_OPT_CONST("NOPROGRESS", CURLOPT_NOPROGRESS);
|
196
|
+
RB_DEFINE_M_OPT_CONST("NOSIGNAL", CURLOPT_NOSIGNAL);
|
197
|
+
RB_DEFINE_M_OPT_CONST("PORT", CURLOPT_PORT);
|
198
|
+
RB_DEFINE_M_OPT_CONST("PRIVATE", CURLOPT_PRIVATE);
|
199
|
+
RB_DEFINE_M_OPT_CONST("PROXY", CURLOPT_PROXY);
|
200
|
+
RB_DEFINE_M_OPT_CONST("PROXYPORT", CURLOPT_PROXYPORT);
|
201
|
+
RB_DEFINE_M_OPT_CONST("PROXYTYPE", CURLOPT_PROXYTYPE);
|
202
|
+
RB_DEFINE_M_OPT_CONST("PROXYUSERPWD", CURLOPT_PROXYUSERPWD);
|
203
|
+
RB_DEFINE_M_OPT_CONST("RANDOM_FILE", CURLOPT_RANDOM_FILE);
|
204
|
+
RB_DEFINE_M_OPT_CONST("RANGE", CURLOPT_RANGE);
|
205
|
+
RB_DEFINE_M_OPT_CONST("REFERER", CURLOPT_REFERER);
|
206
|
+
RB_DEFINE_M_OPT_CONST("RESUME_FROM", CURLOPT_RESUME_FROM);
|
207
|
+
RB_DEFINE_M_OPT_CONST("SSLCERT", CURLOPT_SSLCERT);
|
208
|
+
RB_DEFINE_M_OPT_CONST("SSLCERTTYPE", CURLOPT_SSLCERTTYPE);
|
209
|
+
RB_DEFINE_M_OPT_CONST("SSLENGINE", CURLOPT_SSLENGINE);
|
210
|
+
RB_DEFINE_M_OPT_CONST("SSLENGINE_DEFAULT", CURLOPT_SSLENGINE_DEFAULT);
|
211
|
+
RB_DEFINE_M_OPT_CONST("SSLKEY", CURLOPT_SSLKEY);
|
212
|
+
RB_DEFINE_M_OPT_CONST("SSLKEYTYPE", CURLOPT_SSLKEYTYPE);
|
213
|
+
RB_DEFINE_M_OPT_CONST("SSLVERSION", CURLOPT_SSLVERSION);
|
214
|
+
RB_DEFINE_M_OPT_CONST("SSL_CIPHER_LIST", CURLOPT_SSL_CIPHER_LIST);
|
215
|
+
RB_DEFINE_M_OPT_CONST("SSL_VERIFYHOST", CURLOPT_SSL_VERIFYHOST);
|
216
|
+
RB_DEFINE_M_OPT_CONST("SSL_VERIFYPEER", CURLOPT_SSL_VERIFYPEER);
|
217
|
+
RB_DEFINE_M_OPT_CONST("TIMECONDITION", CURLOPT_TIMECONDITION);
|
218
|
+
RB_DEFINE_M_OPT_CONST("TIMEVALUE", CURLOPT_TIMEVALUE);
|
219
|
+
RB_DEFINE_M_OPT_CONST("TRANSFERTEXT", CURLOPT_TRANSFERTEXT);
|
220
|
+
RB_DEFINE_M_OPT_CONST("UNRESTRICTED_AUTH", CURLOPT_UNRESTRICTED_AUTH);
|
221
|
+
#if LIBCURL_VERSION_NUM >= 0x071503 /* Available since 7.21.3 */
|
222
|
+
RB_DEFINE_M_OPT_CONST("RESOLVE", CURLOPT_RESOLVE);
|
223
|
+
#endif
|
224
|
+
#if LIBCURL_VERSION_NUM >= 0x072500 /* Available since 7.37.0 */
|
225
|
+
RB_DEFINE_M_OPT_CONST("PROXYHEADER", CURLOPT_PROXYHEADER);
|
226
|
+
#endif
|
227
|
+
|
228
|
+
/* Curl::MOpt constants */
|
229
|
+
RB_DEFINE_M_MOPT_CONST("MAXCONNECTS", CURLMOPT_MAXCONNECTS);
|
230
|
+
RB_DEFINE_M_MOPT_CONST("PIPELINING", CURLMOPT_PIPELINING);
|
231
|
+
|
232
|
+
/* Curl::Info constants */
|
233
|
+
RB_DEFINE_M_INFO_CONST("EFFECTIVE_URL", CURLINFO_EFFECTIVE_URL);
|
234
|
+
RB_DEFINE_M_INFO_CONST("FILETIME", CURLINFO_FILETIME);
|
235
|
+
RB_DEFINE_M_INFO_CONST("TOTAL_TIME", CURLINFO_TOTAL_TIME);
|
236
|
+
RB_DEFINE_M_INFO_CONST("NAMELOOKUP_TIME", CURLINFO_NAMELOOKUP_TIME);
|
237
|
+
RB_DEFINE_M_INFO_CONST("CONNECT_TIME", CURLINFO_CONNECT_TIME);
|
238
|
+
RB_DEFINE_M_INFO_CONST("PRETRANSFER_TIME", CURLINFO_PRETRANSFER_TIME);
|
239
|
+
RB_DEFINE_M_INFO_CONST("STARTTRANSFER_TIME", CURLINFO_STARTTRANSFER_TIME);
|
240
|
+
RB_DEFINE_M_INFO_CONST("REDIRECT_TIME", CURLINFO_REDIRECT_TIME);
|
241
|
+
RB_DEFINE_M_INFO_CONST("REDIRECT_COUNT", CURLINFO_REDIRECT_COUNT);
|
242
|
+
RB_DEFINE_M_INFO_CONST("SIZE_UPLOAD", CURLINFO_SIZE_UPLOAD);
|
243
|
+
RB_DEFINE_M_INFO_CONST("SIZE_DOWNLOAD", CURLINFO_SIZE_DOWNLOAD);
|
244
|
+
RB_DEFINE_M_INFO_CONST("SPEED_UPLOAD", CURLINFO_SPEED_UPLOAD);
|
245
|
+
RB_DEFINE_M_INFO_CONST("SPEED_DOWNLOAD", CURLINFO_SPEED_DOWNLOAD);
|
246
|
+
RB_DEFINE_M_INFO_CONST("HEADER_SIZE", CURLINFO_HEADER_SIZE);
|
247
|
+
RB_DEFINE_M_INFO_CONST("REQUEST_SIZE", CURLINFO_REQUEST_SIZE);
|
248
|
+
RB_DEFINE_M_INFO_CONST("SSL_VERIFYRESULT", CURLINFO_SSL_VERIFYRESULT);
|
249
|
+
RB_DEFINE_M_INFO_CONST("CONTENT_TYPE", CURLINFO_CONTENT_TYPE);
|
250
|
+
RB_DEFINE_M_INFO_CONST("LASTSOCKET", CURLINFO_LASTSOCKET);
|
251
|
+
RB_DEFINE_M_INFO_CONST("CONTENT_LENGTH_DOWNLOAD", CURLINFO_CONTENT_LENGTH_DOWNLOAD);
|
252
|
+
RB_DEFINE_M_INFO_CONST("CONTENT_LENGTH_UPLOAD", CURLINFO_CONTENT_LENGTH_UPLOAD);
|
253
|
+
/* Curl::Info constants (Available since 7.10.7) */
|
254
|
+
RB_DEFINE_M_INFO_CONST("HTTP_CONNECTCODE", CURLINFO_HTTP_CONNECTCODE);
|
255
|
+
/* Curl::Info constants (Available since 7.10.8) */
|
256
|
+
RB_DEFINE_M_INFO_CONST("HTTPAUTH_AVAIL", CURLINFO_HTTPAUTH_AVAIL);
|
257
|
+
RB_DEFINE_M_INFO_CONST("RESPONSE_CODE", CURLINFO_RESPONSE_CODE);
|
258
|
+
RB_DEFINE_M_INFO_CONST("PROXYAUTH_AVAIL", CURLINFO_PROXYAUTH_AVAIL);
|
259
|
+
/* Curl::Info constants (Available since 7.12.2) */
|
260
|
+
RB_DEFINE_M_INFO_CONST("OS_ERRNO", CURLINFO_OS_ERRNO);
|
261
|
+
/* Curl::Info constants (Available since 7.12.3) */
|
262
|
+
RB_DEFINE_M_INFO_CONST("NUM_CONNECTS", CURLINFO_NUM_CONNECTS);
|
263
|
+
RB_DEFINE_M_INFO_CONST("SSL_ENGINES", CURLINFO_SSL_ENGINES);
|
264
|
+
/* Curl::Info constants (Available since 7.14.1) */
|
265
|
+
RB_DEFINE_M_INFO_CONST("COOKIELIST", CURLINFO_COOKIELIST);
|
266
|
+
#if LIBCURL_VERSION_NUM >= 0x071202 /* Curl::Info constants (Available since 7.18.2) */
|
267
|
+
RB_DEFINE_M_INFO_CONST("REDIRECT_URL", CURLINFO_REDIRECT_URL);
|
268
|
+
#endif
|
269
|
+
#if LIBCURL_VERSION_NUM >= 0x071300 /* Curl::Info constants (Available since 7.19.0) */
|
270
|
+
RB_DEFINE_M_INFO_CONST("PRIMARY_IP", CURLINFO_PRIMARY_IP);
|
271
|
+
#endif
|
272
|
+
#if LIBCURL_VERSION_NUM >= 0x071301 /* Curl::Info constants (Available since 7.19.1) */
|
273
|
+
RB_DEFINE_M_INFO_CONST("CERTINFO", CURLINFO_CERTINFO);
|
274
|
+
#endif
|
275
|
+
#if LIBCURL_VERSION_NUM >= 0x071500 /* Curl::Info constants (Available since 7.21.0) */
|
276
|
+
RB_DEFINE_M_INFO_CONST("LOCAL_IP", CURLINFO_LOCAL_IP);
|
277
|
+
RB_DEFINE_M_INFO_CONST("LOCAL_PORT", CURLINFO_LOCAL_PORT);
|
278
|
+
RB_DEFINE_M_INFO_CONST("PRIMARY_PORT", CURLINFO_PRIMARY_PORT);
|
279
|
+
#endif
|
280
|
+
#if LIBCURL_VERSION_NUM >= 0x073200 /* Curl::Info constants (Available since 7.50.0) */
|
281
|
+
RB_DEFINE_M_INFO_CONST("HTTP_VERSION", CURLINFO_HTTP_VERSION);
|
282
|
+
#endif
|
283
|
+
#if LIBCURL_VERSION_NUM >= 0x073400 /* Curl::Info constants (Available since 7.52.0) */
|
284
|
+
RB_DEFINE_M_INFO_CONST("PROTOCOL", CURLINFO_PROTOCOL);
|
285
|
+
RB_DEFINE_M_INFO_CONST("PROXY_SSL_VERIFYRESULT", CURLINFO_PROXY_SSL_VERIFYRESULT);
|
286
|
+
RB_DEFINE_M_INFO_CONST("SCHEME", CURLINFO_SCHEME);
|
287
|
+
#endif
|
288
|
+
|
289
|
+
/* Curl::Auth constants */
|
290
|
+
#if LIBCURL_VERSION_NUM >= 0x071303 /* Available since 7.19.3 */
|
291
|
+
RB_DEFINE_M_AUTH_CONST("DIGEST_IE", CURLAUTH_DIGEST_IE);
|
292
|
+
#endif
|
293
|
+
#if LIBCURL_VERSION_NUM >= 0x073d00 /* Available since 7.61.0 */
|
294
|
+
RB_DEFINE_M_AUTH_CONST("BEARER", CURLAUTH_BEARER);
|
295
|
+
#endif
|
296
|
+
#if LIBCURL_VERSION_NUM >= 0x072600 /* Available since 7.38.0 */
|
297
|
+
RB_DEFINE_M_AUTH_CONST("NEGOTIATE", CURLAUTH_NEGOTIATE);
|
298
|
+
#endif
|
299
|
+
#if LIBCURL_VERSION_NUM >= 0x071600 /* Available since 7.22.0 */
|
300
|
+
RB_DEFINE_M_AUTH_CONST("NTLM_WB", CURLAUTH_NTLM_WB);
|
301
|
+
#endif
|
302
|
+
#if LIBCURL_VERSION_NUM >= 0x070a06 /* Available since 7.10.6 */
|
303
|
+
RB_DEFINE_M_AUTH_CONST("ANY", CURLAUTH_ANY);
|
304
|
+
RB_DEFINE_M_AUTH_CONST("ANYSAFE", CURLAUTH_ANYSAFE);
|
305
|
+
RB_DEFINE_M_AUTH_CONST("BASIC", CURLAUTH_BASIC);
|
306
|
+
RB_DEFINE_M_AUTH_CONST("DIGEST", CURLAUTH_DIGEST);
|
307
|
+
RB_DEFINE_M_AUTH_CONST("NTLM", CURLAUTH_NTLM);
|
308
|
+
#endif
|
309
|
+
#if LIBCURL_VERSION_NUM >= 0x071503 /* Available since 7.21.3 */
|
310
|
+
RB_DEFINE_M_AUTH_CONST("ONLY", CURLAUTH_ONLY);
|
311
|
+
#endif
|
312
|
+
|
313
|
+
/* Curl::Proto constants */
|
314
|
+
RB_DEFINE_M_PROTO_CONST("DICT", CURLPROTO_DICT);
|
315
|
+
RB_DEFINE_M_PROTO_CONST("FILE", CURLPROTO_FILE);
|
316
|
+
RB_DEFINE_M_PROTO_CONST("FTP", CURLPROTO_FTP);
|
317
|
+
RB_DEFINE_M_PROTO_CONST("FTPS", CURLPROTO_FTPS);
|
318
|
+
RB_DEFINE_M_PROTO_CONST("GOPHER", CURLPROTO_GOPHER);
|
319
|
+
RB_DEFINE_M_PROTO_CONST("HTTP", CURLPROTO_HTTP);
|
320
|
+
RB_DEFINE_M_PROTO_CONST("HTTPS", CURLPROTO_HTTPS);
|
321
|
+
RB_DEFINE_M_PROTO_CONST("IMAP", CURLPROTO_IMAP);
|
322
|
+
RB_DEFINE_M_PROTO_CONST("IMAPS", CURLPROTO_IMAPS);
|
323
|
+
RB_DEFINE_M_PROTO_CONST("LDAP", CURLPROTO_LDAP);
|
324
|
+
RB_DEFINE_M_PROTO_CONST("LDAPS", CURLPROTO_LDAPS);
|
325
|
+
RB_DEFINE_M_PROTO_CONST("POP3", CURLPROTO_POP3);
|
326
|
+
RB_DEFINE_M_PROTO_CONST("POP3S", CURLPROTO_POP3S);
|
327
|
+
RB_DEFINE_M_PROTO_CONST("RTMP", CURLPROTO_RTMP);
|
328
|
+
RB_DEFINE_M_PROTO_CONST("RTMPE", CURLPROTO_RTMPE);
|
329
|
+
RB_DEFINE_M_PROTO_CONST("RTMPS", CURLPROTO_RTMPS);
|
330
|
+
RB_DEFINE_M_PROTO_CONST("RTMPT", CURLPROTO_RTMPT);
|
331
|
+
RB_DEFINE_M_PROTO_CONST("RTMPTE", CURLPROTO_RTMPTE);
|
332
|
+
RB_DEFINE_M_PROTO_CONST("RTMPTS", CURLPROTO_RTMPTS);
|
333
|
+
RB_DEFINE_M_PROTO_CONST("RTSP", CURLPROTO_RTSP);
|
334
|
+
RB_DEFINE_M_PROTO_CONST("SCP", CURLPROTO_SCP);
|
335
|
+
RB_DEFINE_M_PROTO_CONST("SFTP", CURLPROTO_SFTP);
|
336
|
+
RB_DEFINE_M_PROTO_CONST("SMB", CURLPROTO_SMB);
|
337
|
+
RB_DEFINE_M_PROTO_CONST("SMBS", CURLPROTO_SMBS);
|
338
|
+
RB_DEFINE_M_PROTO_CONST("SMTP", CURLPROTO_SMTP);
|
339
|
+
RB_DEFINE_M_PROTO_CONST("SMTPS", CURLPROTO_SMTPS);
|
340
|
+
RB_DEFINE_M_PROTO_CONST("TELNET", CURLPROTO_TELNET);
|
341
|
+
RB_DEFINE_M_PROTO_CONST("TFTP", CURLPROTO_TFTP);
|
342
|
+
|
343
|
+
/* Curl::Proxy constants */
|
344
|
+
RB_DEFINE_M_PROXY_CONST("HTTP", CURLPROXY_HTTP);
|
345
|
+
RB_DEFINE_M_PROXY_CONST("HTTPS", CURLPROXY_HTTPS);
|
346
|
+
RB_DEFINE_M_PROXY_CONST("HTTP_1_0", CURLPROXY_HTTP_1_0);
|
347
|
+
RB_DEFINE_M_PROXY_CONST("SOCKS4", CURLPROXY_SOCKS4);
|
348
|
+
RB_DEFINE_M_PROXY_CONST("SOCKS4A", CURLPROXY_SOCKS4A);
|
349
|
+
RB_DEFINE_M_PROXY_CONST("SOCKS5", CURLPROXY_SOCKS5);
|
350
|
+
RB_DEFINE_M_PROXY_CONST("SOCKS5_HOSTNAME", CURLPROXY_SOCKS5_HOSTNAME);
|
351
|
+
|
352
|
+
/* Curl::Error constants */
|
353
|
+
RB_DEFINE_M_ERROR_CONST("OK", CURLE_OK);
|
354
|
+
RB_DEFINE_M_ERROR_CONST("UNSUPPORTED_PROTOCOL", CURLE_UNSUPPORTED_PROTOCOL);
|
355
|
+
RB_DEFINE_M_ERROR_CONST("FAILED_INIT", CURLE_FAILED_INIT);
|
356
|
+
RB_DEFINE_M_ERROR_CONST("URL_MALFORMAT", CURLE_URL_MALFORMAT);
|
357
|
+
RB_DEFINE_M_ERROR_CONST("NOT_BUILT_IN", CURLE_NOT_BUILT_IN);
|
358
|
+
RB_DEFINE_M_ERROR_CONST("COULDNT_RESOLVE_PROXY", CURLE_COULDNT_RESOLVE_PROXY);
|
359
|
+
RB_DEFINE_M_ERROR_CONST("COULDNT_RESOLVE_HOST", CURLE_COULDNT_RESOLVE_HOST);
|
360
|
+
RB_DEFINE_M_ERROR_CONST("COULDNT_CONNECT", CURLE_COULDNT_CONNECT);
|
361
|
+
RB_DEFINE_M_ERROR_CONST("REMOTE_ACCESS_DENIED", CURLE_REMOTE_ACCESS_DENIED);
|
362
|
+
RB_DEFINE_M_ERROR_CONST("HTTP2", CURLE_HTTP2);
|
363
|
+
RB_DEFINE_M_ERROR_CONST("HTTP_RETURNED_ERROR", CURLE_HTTP_RETURNED_ERROR);
|
364
|
+
RB_DEFINE_M_ERROR_CONST("WRITE_ERROR", CURLE_WRITE_ERROR);
|
365
|
+
RB_DEFINE_M_ERROR_CONST("UPLOAD_FAILED", CURLE_UPLOAD_FAILED);
|
366
|
+
RB_DEFINE_M_ERROR_CONST("READ_ERROR", CURLE_READ_ERROR);
|
367
|
+
RB_DEFINE_M_ERROR_CONST("OUT_OF_MEMORY", CURLE_OUT_OF_MEMORY);
|
368
|
+
RB_DEFINE_M_ERROR_CONST("OPERATION_TIMEDOUT", CURLE_OPERATION_TIMEDOUT);
|
369
|
+
RB_DEFINE_M_ERROR_CONST("RANGE_ERROR", CURLE_RANGE_ERROR);
|
370
|
+
RB_DEFINE_M_ERROR_CONST("HTTP_POST_ERROR", CURLE_HTTP_POST_ERROR);
|
371
|
+
RB_DEFINE_M_ERROR_CONST("SSL_CONNECT_ERROR", CURLE_SSL_CONNECT_ERROR);
|
372
|
+
RB_DEFINE_M_ERROR_CONST("BAD_DOWNLOAD_RESUME", CURLE_BAD_DOWNLOAD_RESUME);
|
373
|
+
RB_DEFINE_M_ERROR_CONST("FILE_COULDNT_READ_FILE", CURLE_FILE_COULDNT_READ_FILE);
|
374
|
+
RB_DEFINE_M_ERROR_CONST("FUNCTION_NOT_FOUND", CURLE_FUNCTION_NOT_FOUND);
|
375
|
+
RB_DEFINE_M_ERROR_CONST("ABORTED_BY_CALLBACK", CURLE_ABORTED_BY_CALLBACK);
|
376
|
+
RB_DEFINE_M_ERROR_CONST("BAD_FUNCTION_ARGUMENT", CURLE_BAD_FUNCTION_ARGUMENT);
|
377
|
+
RB_DEFINE_M_ERROR_CONST("INTERFACE_FAILED", CURLE_INTERFACE_FAILED);
|
378
|
+
RB_DEFINE_M_ERROR_CONST("TOO_MANY_REDIRECTS", CURLE_TOO_MANY_REDIRECTS);
|
379
|
+
RB_DEFINE_M_ERROR_CONST("UNKNOWN_OPTION", CURLE_UNKNOWN_OPTION);
|
380
|
+
RB_DEFINE_M_ERROR_CONST("GOT_NOTHING", CURLE_GOT_NOTHING);
|
381
|
+
RB_DEFINE_M_ERROR_CONST("SSL_ENGINE_NOTFOUND", CURLE_SSL_ENGINE_NOTFOUND);
|
382
|
+
RB_DEFINE_M_ERROR_CONST("SSL_ENGINE_SETFAILED", CURLE_SSL_ENGINE_SETFAILED);
|
383
|
+
RB_DEFINE_M_ERROR_CONST("SEND_ERROR", CURLE_SEND_ERROR);
|
384
|
+
RB_DEFINE_M_ERROR_CONST("RECV_ERROR", CURLE_RECV_ERROR);
|
385
|
+
RB_DEFINE_M_ERROR_CONST("SSL_CERTPROBLEM", CURLE_SSL_CERTPROBLEM);
|
386
|
+
RB_DEFINE_M_ERROR_CONST("SSL_CIPHER", CURLE_SSL_CIPHER);
|
387
|
+
RB_DEFINE_M_ERROR_CONST("PEER_FAILED_VERIFICATION", CURLE_PEER_FAILED_VERIFICATION);
|
388
|
+
RB_DEFINE_M_ERROR_CONST("BAD_CONTENT_ENCODING", CURLE_BAD_CONTENT_ENCODING);
|
389
|
+
RB_DEFINE_M_ERROR_CONST("FILESIZE_EXCEEDED", CURLE_FILESIZE_EXCEEDED);
|
390
|
+
RB_DEFINE_M_ERROR_CONST("SEND_FAIL_REWIND", CURLE_SEND_FAIL_REWIND);
|
391
|
+
RB_DEFINE_M_ERROR_CONST("SSL_ENGINE_INITFAILED", CURLE_SSL_ENGINE_INITFAILED);
|
392
|
+
RB_DEFINE_M_ERROR_CONST("LOGIN_DENIED", CURLE_LOGIN_DENIED);
|
393
|
+
RB_DEFINE_M_ERROR_CONST("SSL_CACERT_BADFILE", CURLE_SSL_CACERT_BADFILE);
|
394
|
+
RB_DEFINE_M_ERROR_CONST("AGAIN", CURLE_AGAIN);
|
395
|
+
RB_DEFINE_M_ERROR_CONST("SSL_CRL_BADFILE", CURLE_SSL_CRL_BADFILE);
|
396
|
+
RB_DEFINE_M_ERROR_CONST("SSL_ISSUER_ERROR", CURLE_SSL_ISSUER_ERROR);
|
397
|
+
RB_DEFINE_M_ERROR_CONST("CHUNK_FAILED", CURLE_CHUNK_FAILED);
|
398
|
+
RB_DEFINE_M_ERROR_CONST("HTTP2_STREAM", CURLE_HTTP2_STREAM);
|
399
|
+
|
400
|
+
Init_easy();
|
401
|
+
Init_multi();
|
402
|
+
}
|
data/ext/curl.h
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
#ifndef RUBY_CURL_H
|
2
|
+
#define RUBY_CURL_H
|
3
|
+
|
4
|
+
#include <ruby.h>
|
5
|
+
#include <curl/curl.h>
|
6
|
+
|
7
|
+
#include "easy.h"
|
8
|
+
|
9
|
+
#define RB_DEFINE_M_CURL_CONST(name, curl_const_name) \
|
10
|
+
rb_define_const(rb_mCurl, name, LONG2NUM(curl_const_name))
|
11
|
+
|
12
|
+
#define RB_DEFINE_M_OPT_CONST(name, curl_opt_name) \
|
13
|
+
rb_define_const(rb_mOpt, name, LONG2NUM(curl_opt_name))
|
14
|
+
|
15
|
+
#define RB_DEFINE_M_MOPT_CONST(name, curl_mopt_name) \
|
16
|
+
rb_define_const(rb_mMOpt, name, LONG2NUM(curl_mopt_name))
|
17
|
+
|
18
|
+
#define RB_DEFINE_M_INFO_CONST(name, curl_info_name) \
|
19
|
+
rb_define_const(rb_mInfo, name, LONG2NUM(curl_info_name))
|
20
|
+
|
21
|
+
#define RB_DEFINE_M_PROXY_CONST(name, curl_proxy_name) \
|
22
|
+
rb_define_const(rb_mProxy, name, LONG2NUM(curl_proxy_name))
|
23
|
+
|
24
|
+
#define RB_DEFINE_M_AUTH_CONST(name, curl_auth_name) \
|
25
|
+
rb_define_const(rb_mAuth, name, LONG2NUM(curl_auth_name))
|
26
|
+
|
27
|
+
#define RB_DEFINE_M_PROTO_CONST(name, curl_proto_name) \
|
28
|
+
rb_define_const(rb_mProto, name, LONG2NUM(curl_proto_name))
|
29
|
+
|
30
|
+
#define RB_DEFINE_M_ERROR_CONST(name, curl_error_name) \
|
31
|
+
rb_define_const(rb_mError, name, LONG2NUM(curl_error_name))
|
32
|
+
|
33
|
+
extern VALUE rb_mCurl;
|
34
|
+
|
35
|
+
void Init_curl();
|
36
|
+
|
37
|
+
#endif
|