line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
# Net::SSLeay.pm - Perl module for using Eric Young's implementation of SSL |
2
|
|
|
|
|
|
|
# |
3
|
|
|
|
|
|
|
# Copyright (c) 1996-2003 Sampo Kellomäki |
4
|
|
|
|
|
|
|
# Copyright (c) 2005-2010 Florian Ragwitz |
5
|
|
|
|
|
|
|
# Copyright (c) 2005-2018 Mike McCauley |
6
|
|
|
|
|
|
|
# Copyright (c) 2018- Chris Novakovic |
7
|
|
|
|
|
|
|
# Copyright (c) 2018- Tuure Vartiainen |
8
|
|
|
|
|
|
|
# Copyright (c) 2018- Heikki Vatiainen |
9
|
|
|
|
|
|
|
# |
10
|
|
|
|
|
|
|
# All rights reserved. |
11
|
|
|
|
|
|
|
# |
12
|
|
|
|
|
|
|
# This module is released under the terms of the Artistic License 2.0. For |
13
|
|
|
|
|
|
|
# details, see the LICENSE file distributed with Net-SSLeay's source code. |
14
|
|
|
|
|
|
|
|
15
|
|
|
|
|
|
|
package Net::SSLeay; |
16
|
|
|
|
|
|
|
|
17
|
54
|
|
|
54
|
|
101580
|
use 5.8.1; |
|
54
|
|
|
|
|
536
|
|
18
|
|
|
|
|
|
|
|
19
|
54
|
|
|
54
|
|
303
|
use strict; |
|
54
|
|
|
|
|
98
|
|
|
54
|
|
|
|
|
1455
|
|
20
|
54
|
|
|
54
|
|
318
|
use Carp; |
|
54
|
|
|
|
|
113
|
|
|
54
|
|
|
|
|
6285
|
|
21
|
54
|
|
|
54
|
|
372
|
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK $AUTOLOAD $CRLF); |
|
54
|
|
|
|
|
147
|
|
|
54
|
|
|
|
|
5801
|
|
22
|
54
|
|
|
54
|
|
29546
|
use Socket; |
|
54
|
|
|
|
|
245120
|
|
|
54
|
|
|
|
|
22281
|
|
23
|
54
|
|
|
54
|
|
25617
|
use Errno; |
|
54
|
|
|
|
|
104110
|
|
|
54
|
|
|
|
|
2716
|
|
24
|
|
|
|
|
|
|
|
25
|
|
|
|
|
|
|
require Exporter; |
26
|
54
|
|
|
54
|
|
25826
|
use AutoLoader; |
|
54
|
|
|
|
|
79984
|
|
|
54
|
|
|
|
|
298
|
|
27
|
|
|
|
|
|
|
|
28
|
|
|
|
|
|
|
# 0=no warns, 1=only errors, 2=ciphers, 3=progress, 4=dump data |
29
|
|
|
|
|
|
|
$Net::SSLeay::trace = 0; # Do not change here, use |
30
|
|
|
|
|
|
|
# $Net::SSLeay::trace = [1-4] in caller |
31
|
|
|
|
|
|
|
|
32
|
|
|
|
|
|
|
# 2 = insist on v2 SSL protocol |
33
|
|
|
|
|
|
|
# 3 = insist on v3 SSL |
34
|
|
|
|
|
|
|
# 10 = insist on TLSv1 |
35
|
|
|
|
|
|
|
# 11 = insist on TLSv1.1 |
36
|
|
|
|
|
|
|
# 12 = insist on TLSv1.2 |
37
|
|
|
|
|
|
|
# 13 = insist on TLSv1.3 |
38
|
|
|
|
|
|
|
# 0 or undef = guess (v23) |
39
|
|
|
|
|
|
|
# |
40
|
|
|
|
|
|
|
$Net::SSLeay::ssl_version = 0; # don't change here, use |
41
|
|
|
|
|
|
|
# Net::SSLeay::version=[2,3,0] in caller |
42
|
|
|
|
|
|
|
|
43
|
|
|
|
|
|
|
#define to enable the "cat /proc/$$/stat" stuff |
44
|
|
|
|
|
|
|
$Net::SSLeay::linux_debug = 0; |
45
|
|
|
|
|
|
|
|
46
|
|
|
|
|
|
|
# Number of seconds to sleep after sending message and before half |
47
|
|
|
|
|
|
|
# closing connection. Useful with antiquated broken servers. |
48
|
|
|
|
|
|
|
$Net::SSLeay::slowly = 0; |
49
|
|
|
|
|
|
|
|
50
|
|
|
|
|
|
|
# RANDOM NUMBER INITIALIZATION |
51
|
|
|
|
|
|
|
# |
52
|
|
|
|
|
|
|
# Edit to your taste. Using /dev/random would be more secure, but may |
53
|
|
|
|
|
|
|
# block if randomness is not available, thus the default is |
54
|
|
|
|
|
|
|
# /dev/urandom. $how_random determines how many bits of randomness to take |
55
|
|
|
|
|
|
|
# from the device. You should take enough (read SSLeay/doc/rand), but |
56
|
|
|
|
|
|
|
# beware that randomness is limited resource so you should not waste |
57
|
|
|
|
|
|
|
# it either or you may end up with randomness depletion (situation where |
58
|
|
|
|
|
|
|
# /dev/random would block and /dev/urandom starts to return predictable |
59
|
|
|
|
|
|
|
# numbers). |
60
|
|
|
|
|
|
|
# |
61
|
|
|
|
|
|
|
# N.B. /dev/urandom does not exist on all systems, such as Solaris 2.6. In that |
62
|
|
|
|
|
|
|
# case you should get a third party package that emulates /dev/urandom |
63
|
|
|
|
|
|
|
# (e.g. via named pipe) or supply a random number file. Some such |
64
|
|
|
|
|
|
|
# packages are documented in Caveat section of the POD documentation. |
65
|
|
|
|
|
|
|
|
66
|
|
|
|
|
|
|
$Net::SSLeay::random_device = '/dev/urandom'; |
67
|
|
|
|
|
|
|
$Net::SSLeay::how_random = 512; |
68
|
|
|
|
|
|
|
|
69
|
|
|
|
|
|
|
# When updating this, also update $VERSION in the following files: |
70
|
|
|
|
|
|
|
# inc/Test/Net/SSLeay.pm |
71
|
|
|
|
|
|
|
# inc/Test/Net/SSLeay/Socket.pm |
72
|
|
|
|
|
|
|
# lib/Net/SSLeay/Handle.pm |
73
|
|
|
|
|
|
|
$VERSION = '1.93_02'; |
74
|
|
|
|
|
|
|
|
75
|
|
|
|
|
|
|
@ISA = qw(Exporter); |
76
|
|
|
|
|
|
|
|
77
|
|
|
|
|
|
|
# This array is automatically generated - do not manually modify it. |
78
|
|
|
|
|
|
|
# To add or remove a constant, edit helper_script/constants.txt, then run |
79
|
|
|
|
|
|
|
# helper_script/update-exported-constants. |
80
|
|
|
|
|
|
|
my @constants = qw( |
81
|
|
|
|
|
|
|
ASN1_STRFLGS_ESC_CTRL |
82
|
|
|
|
|
|
|
ASN1_STRFLGS_ESC_MSB |
83
|
|
|
|
|
|
|
ASN1_STRFLGS_ESC_QUOTE |
84
|
|
|
|
|
|
|
ASN1_STRFLGS_RFC2253 |
85
|
|
|
|
|
|
|
ASYNC_NO_JOBS |
86
|
|
|
|
|
|
|
ASYNC_PAUSED |
87
|
|
|
|
|
|
|
CB_ACCEPT_EXIT |
88
|
|
|
|
|
|
|
CB_ACCEPT_LOOP |
89
|
|
|
|
|
|
|
CB_ALERT |
90
|
|
|
|
|
|
|
CB_CONNECT_EXIT |
91
|
|
|
|
|
|
|
CB_CONNECT_LOOP |
92
|
|
|
|
|
|
|
CB_EXIT |
93
|
|
|
|
|
|
|
CB_HANDSHAKE_DONE |
94
|
|
|
|
|
|
|
CB_HANDSHAKE_START |
95
|
|
|
|
|
|
|
CB_LOOP |
96
|
|
|
|
|
|
|
CB_READ |
97
|
|
|
|
|
|
|
CB_READ_ALERT |
98
|
|
|
|
|
|
|
CB_WRITE |
99
|
|
|
|
|
|
|
CB_WRITE_ALERT |
100
|
|
|
|
|
|
|
CLIENT_HELLO_CB |
101
|
|
|
|
|
|
|
ERROR_NONE |
102
|
|
|
|
|
|
|
ERROR_SSL |
103
|
|
|
|
|
|
|
ERROR_SYSCALL |
104
|
|
|
|
|
|
|
ERROR_WANT_ACCEPT |
105
|
|
|
|
|
|
|
ERROR_WANT_ASYNC |
106
|
|
|
|
|
|
|
ERROR_WANT_ASYNC_JOB |
107
|
|
|
|
|
|
|
ERROR_WANT_CLIENT_HELLO_CB |
108
|
|
|
|
|
|
|
ERROR_WANT_CONNECT |
109
|
|
|
|
|
|
|
ERROR_WANT_READ |
110
|
|
|
|
|
|
|
ERROR_WANT_RETRY_VERIFY |
111
|
|
|
|
|
|
|
ERROR_WANT_WRITE |
112
|
|
|
|
|
|
|
ERROR_WANT_X509_LOOKUP |
113
|
|
|
|
|
|
|
ERROR_ZERO_RETURN |
114
|
|
|
|
|
|
|
EVP_PKS_DSA |
115
|
|
|
|
|
|
|
EVP_PKS_EC |
116
|
|
|
|
|
|
|
EVP_PKS_RSA |
117
|
|
|
|
|
|
|
EVP_PKT_ENC |
118
|
|
|
|
|
|
|
EVP_PKT_EXCH |
119
|
|
|
|
|
|
|
EVP_PKT_EXP |
120
|
|
|
|
|
|
|
EVP_PKT_SIGN |
121
|
|
|
|
|
|
|
EVP_PK_DH |
122
|
|
|
|
|
|
|
EVP_PK_DSA |
123
|
|
|
|
|
|
|
EVP_PK_EC |
124
|
|
|
|
|
|
|
EVP_PK_RSA |
125
|
|
|
|
|
|
|
FILETYPE_ASN1 |
126
|
|
|
|
|
|
|
FILETYPE_PEM |
127
|
|
|
|
|
|
|
F_CLIENT_CERTIFICATE |
128
|
|
|
|
|
|
|
F_CLIENT_HELLO |
129
|
|
|
|
|
|
|
F_CLIENT_MASTER_KEY |
130
|
|
|
|
|
|
|
F_D2I_SSL_SESSION |
131
|
|
|
|
|
|
|
F_GET_CLIENT_FINISHED |
132
|
|
|
|
|
|
|
F_GET_CLIENT_HELLO |
133
|
|
|
|
|
|
|
F_GET_CLIENT_MASTER_KEY |
134
|
|
|
|
|
|
|
F_GET_SERVER_FINISHED |
135
|
|
|
|
|
|
|
F_GET_SERVER_HELLO |
136
|
|
|
|
|
|
|
F_GET_SERVER_VERIFY |
137
|
|
|
|
|
|
|
F_I2D_SSL_SESSION |
138
|
|
|
|
|
|
|
F_READ_N |
139
|
|
|
|
|
|
|
F_REQUEST_CERTIFICATE |
140
|
|
|
|
|
|
|
F_SERVER_HELLO |
141
|
|
|
|
|
|
|
F_SSL_CERT_NEW |
142
|
|
|
|
|
|
|
F_SSL_GET_NEW_SESSION |
143
|
|
|
|
|
|
|
F_SSL_NEW |
144
|
|
|
|
|
|
|
F_SSL_READ |
145
|
|
|
|
|
|
|
F_SSL_RSA_PRIVATE_DECRYPT |
146
|
|
|
|
|
|
|
F_SSL_RSA_PUBLIC_ENCRYPT |
147
|
|
|
|
|
|
|
F_SSL_SESSION_NEW |
148
|
|
|
|
|
|
|
F_SSL_SESSION_PRINT_FP |
149
|
|
|
|
|
|
|
F_SSL_SET_FD |
150
|
|
|
|
|
|
|
F_SSL_SET_RFD |
151
|
|
|
|
|
|
|
F_SSL_SET_WFD |
152
|
|
|
|
|
|
|
F_SSL_USE_CERTIFICATE |
153
|
|
|
|
|
|
|
F_SSL_USE_CERTIFICATE_ASN1 |
154
|
|
|
|
|
|
|
F_SSL_USE_CERTIFICATE_FILE |
155
|
|
|
|
|
|
|
F_SSL_USE_PRIVATEKEY |
156
|
|
|
|
|
|
|
F_SSL_USE_PRIVATEKEY_ASN1 |
157
|
|
|
|
|
|
|
F_SSL_USE_PRIVATEKEY_FILE |
158
|
|
|
|
|
|
|
F_SSL_USE_RSAPRIVATEKEY |
159
|
|
|
|
|
|
|
F_SSL_USE_RSAPRIVATEKEY_ASN1 |
160
|
|
|
|
|
|
|
F_SSL_USE_RSAPRIVATEKEY_FILE |
161
|
|
|
|
|
|
|
F_WRITE_PENDING |
162
|
|
|
|
|
|
|
GEN_DIRNAME |
163
|
|
|
|
|
|
|
GEN_DNS |
164
|
|
|
|
|
|
|
GEN_EDIPARTY |
165
|
|
|
|
|
|
|
GEN_EMAIL |
166
|
|
|
|
|
|
|
GEN_IPADD |
167
|
|
|
|
|
|
|
GEN_OTHERNAME |
168
|
|
|
|
|
|
|
GEN_RID |
169
|
|
|
|
|
|
|
GEN_URI |
170
|
|
|
|
|
|
|
GEN_X400 |
171
|
|
|
|
|
|
|
LIBRESSL_VERSION_NUMBER |
172
|
|
|
|
|
|
|
MBSTRING_ASC |
173
|
|
|
|
|
|
|
MBSTRING_BMP |
174
|
|
|
|
|
|
|
MBSTRING_FLAG |
175
|
|
|
|
|
|
|
MBSTRING_UNIV |
176
|
|
|
|
|
|
|
MBSTRING_UTF8 |
177
|
|
|
|
|
|
|
MIN_RSA_MODULUS_LENGTH_IN_BYTES |
178
|
|
|
|
|
|
|
MODE_ACCEPT_MOVING_WRITE_BUFFER |
179
|
|
|
|
|
|
|
MODE_ASYNC |
180
|
|
|
|
|
|
|
MODE_AUTO_RETRY |
181
|
|
|
|
|
|
|
MODE_ENABLE_PARTIAL_WRITE |
182
|
|
|
|
|
|
|
MODE_NO_AUTO_CHAIN |
183
|
|
|
|
|
|
|
MODE_RELEASE_BUFFERS |
184
|
|
|
|
|
|
|
NID_OCSP_sign |
185
|
|
|
|
|
|
|
NID_SMIMECapabilities |
186
|
|
|
|
|
|
|
NID_X500 |
187
|
|
|
|
|
|
|
NID_X509 |
188
|
|
|
|
|
|
|
NID_ad_OCSP |
189
|
|
|
|
|
|
|
NID_ad_ca_issuers |
190
|
|
|
|
|
|
|
NID_algorithm |
191
|
|
|
|
|
|
|
NID_authority_key_identifier |
192
|
|
|
|
|
|
|
NID_basic_constraints |
193
|
|
|
|
|
|
|
NID_bf_cbc |
194
|
|
|
|
|
|
|
NID_bf_cfb64 |
195
|
|
|
|
|
|
|
NID_bf_ecb |
196
|
|
|
|
|
|
|
NID_bf_ofb64 |
197
|
|
|
|
|
|
|
NID_cast5_cbc |
198
|
|
|
|
|
|
|
NID_cast5_cfb64 |
199
|
|
|
|
|
|
|
NID_cast5_ecb |
200
|
|
|
|
|
|
|
NID_cast5_ofb64 |
201
|
|
|
|
|
|
|
NID_certBag |
202
|
|
|
|
|
|
|
NID_certificate_policies |
203
|
|
|
|
|
|
|
NID_client_auth |
204
|
|
|
|
|
|
|
NID_code_sign |
205
|
|
|
|
|
|
|
NID_commonName |
206
|
|
|
|
|
|
|
NID_countryName |
207
|
|
|
|
|
|
|
NID_crlBag |
208
|
|
|
|
|
|
|
NID_crl_distribution_points |
209
|
|
|
|
|
|
|
NID_crl_number |
210
|
|
|
|
|
|
|
NID_crl_reason |
211
|
|
|
|
|
|
|
NID_delta_crl |
212
|
|
|
|
|
|
|
NID_des_cbc |
213
|
|
|
|
|
|
|
NID_des_cfb64 |
214
|
|
|
|
|
|
|
NID_des_ecb |
215
|
|
|
|
|
|
|
NID_des_ede |
216
|
|
|
|
|
|
|
NID_des_ede3 |
217
|
|
|
|
|
|
|
NID_des_ede3_cbc |
218
|
|
|
|
|
|
|
NID_des_ede3_cfb64 |
219
|
|
|
|
|
|
|
NID_des_ede3_ofb64 |
220
|
|
|
|
|
|
|
NID_des_ede_cbc |
221
|
|
|
|
|
|
|
NID_des_ede_cfb64 |
222
|
|
|
|
|
|
|
NID_des_ede_ofb64 |
223
|
|
|
|
|
|
|
NID_des_ofb64 |
224
|
|
|
|
|
|
|
NID_description |
225
|
|
|
|
|
|
|
NID_desx_cbc |
226
|
|
|
|
|
|
|
NID_dhKeyAgreement |
227
|
|
|
|
|
|
|
NID_dnQualifier |
228
|
|
|
|
|
|
|
NID_dsa |
229
|
|
|
|
|
|
|
NID_dsaWithSHA |
230
|
|
|
|
|
|
|
NID_dsaWithSHA1 |
231
|
|
|
|
|
|
|
NID_dsaWithSHA1_2 |
232
|
|
|
|
|
|
|
NID_dsa_2 |
233
|
|
|
|
|
|
|
NID_email_protect |
234
|
|
|
|
|
|
|
NID_ext_key_usage |
235
|
|
|
|
|
|
|
NID_ext_req |
236
|
|
|
|
|
|
|
NID_friendlyName |
237
|
|
|
|
|
|
|
NID_givenName |
238
|
|
|
|
|
|
|
NID_hmacWithSHA1 |
239
|
|
|
|
|
|
|
NID_id_ad |
240
|
|
|
|
|
|
|
NID_id_ce |
241
|
|
|
|
|
|
|
NID_id_kp |
242
|
|
|
|
|
|
|
NID_id_pbkdf2 |
243
|
|
|
|
|
|
|
NID_id_pe |
244
|
|
|
|
|
|
|
NID_id_pkix |
245
|
|
|
|
|
|
|
NID_id_qt_cps |
246
|
|
|
|
|
|
|
NID_id_qt_unotice |
247
|
|
|
|
|
|
|
NID_idea_cbc |
248
|
|
|
|
|
|
|
NID_idea_cfb64 |
249
|
|
|
|
|
|
|
NID_idea_ecb |
250
|
|
|
|
|
|
|
NID_idea_ofb64 |
251
|
|
|
|
|
|
|
NID_info_access |
252
|
|
|
|
|
|
|
NID_initials |
253
|
|
|
|
|
|
|
NID_invalidity_date |
254
|
|
|
|
|
|
|
NID_issuer_alt_name |
255
|
|
|
|
|
|
|
NID_keyBag |
256
|
|
|
|
|
|
|
NID_key_usage |
257
|
|
|
|
|
|
|
NID_localKeyID |
258
|
|
|
|
|
|
|
NID_localityName |
259
|
|
|
|
|
|
|
NID_md2 |
260
|
|
|
|
|
|
|
NID_md2WithRSAEncryption |
261
|
|
|
|
|
|
|
NID_md5 |
262
|
|
|
|
|
|
|
NID_md5WithRSA |
263
|
|
|
|
|
|
|
NID_md5WithRSAEncryption |
264
|
|
|
|
|
|
|
NID_md5_sha1 |
265
|
|
|
|
|
|
|
NID_mdc2 |
266
|
|
|
|
|
|
|
NID_mdc2WithRSA |
267
|
|
|
|
|
|
|
NID_ms_code_com |
268
|
|
|
|
|
|
|
NID_ms_code_ind |
269
|
|
|
|
|
|
|
NID_ms_ctl_sign |
270
|
|
|
|
|
|
|
NID_ms_efs |
271
|
|
|
|
|
|
|
NID_ms_ext_req |
272
|
|
|
|
|
|
|
NID_ms_sgc |
273
|
|
|
|
|
|
|
NID_name |
274
|
|
|
|
|
|
|
NID_netscape |
275
|
|
|
|
|
|
|
NID_netscape_base_url |
276
|
|
|
|
|
|
|
NID_netscape_ca_policy_url |
277
|
|
|
|
|
|
|
NID_netscape_ca_revocation_url |
278
|
|
|
|
|
|
|
NID_netscape_cert_extension |
279
|
|
|
|
|
|
|
NID_netscape_cert_sequence |
280
|
|
|
|
|
|
|
NID_netscape_cert_type |
281
|
|
|
|
|
|
|
NID_netscape_comment |
282
|
|
|
|
|
|
|
NID_netscape_data_type |
283
|
|
|
|
|
|
|
NID_netscape_renewal_url |
284
|
|
|
|
|
|
|
NID_netscape_revocation_url |
285
|
|
|
|
|
|
|
NID_netscape_ssl_server_name |
286
|
|
|
|
|
|
|
NID_ns_sgc |
287
|
|
|
|
|
|
|
NID_organizationName |
288
|
|
|
|
|
|
|
NID_organizationalUnitName |
289
|
|
|
|
|
|
|
NID_pbeWithMD2AndDES_CBC |
290
|
|
|
|
|
|
|
NID_pbeWithMD2AndRC2_CBC |
291
|
|
|
|
|
|
|
NID_pbeWithMD5AndCast5_CBC |
292
|
|
|
|
|
|
|
NID_pbeWithMD5AndDES_CBC |
293
|
|
|
|
|
|
|
NID_pbeWithMD5AndRC2_CBC |
294
|
|
|
|
|
|
|
NID_pbeWithSHA1AndDES_CBC |
295
|
|
|
|
|
|
|
NID_pbeWithSHA1AndRC2_CBC |
296
|
|
|
|
|
|
|
NID_pbe_WithSHA1And128BitRC2_CBC |
297
|
|
|
|
|
|
|
NID_pbe_WithSHA1And128BitRC4 |
298
|
|
|
|
|
|
|
NID_pbe_WithSHA1And2_Key_TripleDES_CBC |
299
|
|
|
|
|
|
|
NID_pbe_WithSHA1And3_Key_TripleDES_CBC |
300
|
|
|
|
|
|
|
NID_pbe_WithSHA1And40BitRC2_CBC |
301
|
|
|
|
|
|
|
NID_pbe_WithSHA1And40BitRC4 |
302
|
|
|
|
|
|
|
NID_pbes2 |
303
|
|
|
|
|
|
|
NID_pbmac1 |
304
|
|
|
|
|
|
|
NID_pkcs |
305
|
|
|
|
|
|
|
NID_pkcs3 |
306
|
|
|
|
|
|
|
NID_pkcs7 |
307
|
|
|
|
|
|
|
NID_pkcs7_data |
308
|
|
|
|
|
|
|
NID_pkcs7_digest |
309
|
|
|
|
|
|
|
NID_pkcs7_encrypted |
310
|
|
|
|
|
|
|
NID_pkcs7_enveloped |
311
|
|
|
|
|
|
|
NID_pkcs7_signed |
312
|
|
|
|
|
|
|
NID_pkcs7_signedAndEnveloped |
313
|
|
|
|
|
|
|
NID_pkcs8ShroudedKeyBag |
314
|
|
|
|
|
|
|
NID_pkcs9 |
315
|
|
|
|
|
|
|
NID_pkcs9_challengePassword |
316
|
|
|
|
|
|
|
NID_pkcs9_contentType |
317
|
|
|
|
|
|
|
NID_pkcs9_countersignature |
318
|
|
|
|
|
|
|
NID_pkcs9_emailAddress |
319
|
|
|
|
|
|
|
NID_pkcs9_extCertAttributes |
320
|
|
|
|
|
|
|
NID_pkcs9_messageDigest |
321
|
|
|
|
|
|
|
NID_pkcs9_signingTime |
322
|
|
|
|
|
|
|
NID_pkcs9_unstructuredAddress |
323
|
|
|
|
|
|
|
NID_pkcs9_unstructuredName |
324
|
|
|
|
|
|
|
NID_private_key_usage_period |
325
|
|
|
|
|
|
|
NID_rc2_40_cbc |
326
|
|
|
|
|
|
|
NID_rc2_64_cbc |
327
|
|
|
|
|
|
|
NID_rc2_cbc |
328
|
|
|
|
|
|
|
NID_rc2_cfb64 |
329
|
|
|
|
|
|
|
NID_rc2_ecb |
330
|
|
|
|
|
|
|
NID_rc2_ofb64 |
331
|
|
|
|
|
|
|
NID_rc4 |
332
|
|
|
|
|
|
|
NID_rc4_40 |
333
|
|
|
|
|
|
|
NID_rc5_cbc |
334
|
|
|
|
|
|
|
NID_rc5_cfb64 |
335
|
|
|
|
|
|
|
NID_rc5_ecb |
336
|
|
|
|
|
|
|
NID_rc5_ofb64 |
337
|
|
|
|
|
|
|
NID_ripemd160 |
338
|
|
|
|
|
|
|
NID_ripemd160WithRSA |
339
|
|
|
|
|
|
|
NID_rle_compression |
340
|
|
|
|
|
|
|
NID_rsa |
341
|
|
|
|
|
|
|
NID_rsaEncryption |
342
|
|
|
|
|
|
|
NID_rsadsi |
343
|
|
|
|
|
|
|
NID_safeContentsBag |
344
|
|
|
|
|
|
|
NID_sdsiCertificate |
345
|
|
|
|
|
|
|
NID_secretBag |
346
|
|
|
|
|
|
|
NID_serialNumber |
347
|
|
|
|
|
|
|
NID_server_auth |
348
|
|
|
|
|
|
|
NID_sha |
349
|
|
|
|
|
|
|
NID_sha1 |
350
|
|
|
|
|
|
|
NID_sha1WithRSA |
351
|
|
|
|
|
|
|
NID_sha1WithRSAEncryption |
352
|
|
|
|
|
|
|
NID_shaWithRSAEncryption |
353
|
|
|
|
|
|
|
NID_stateOrProvinceName |
354
|
|
|
|
|
|
|
NID_subject_alt_name |
355
|
|
|
|
|
|
|
NID_subject_key_identifier |
356
|
|
|
|
|
|
|
NID_surname |
357
|
|
|
|
|
|
|
NID_sxnet |
358
|
|
|
|
|
|
|
NID_time_stamp |
359
|
|
|
|
|
|
|
NID_title |
360
|
|
|
|
|
|
|
NID_undef |
361
|
|
|
|
|
|
|
NID_uniqueIdentifier |
362
|
|
|
|
|
|
|
NID_x509Certificate |
363
|
|
|
|
|
|
|
NID_x509Crl |
364
|
|
|
|
|
|
|
NID_zlib_compression |
365
|
|
|
|
|
|
|
NOTHING |
366
|
|
|
|
|
|
|
OCSP_RESPONSE_STATUS_INTERNALERROR |
367
|
|
|
|
|
|
|
OCSP_RESPONSE_STATUS_MALFORMEDREQUEST |
368
|
|
|
|
|
|
|
OCSP_RESPONSE_STATUS_SIGREQUIRED |
369
|
|
|
|
|
|
|
OCSP_RESPONSE_STATUS_SUCCESSFUL |
370
|
|
|
|
|
|
|
OCSP_RESPONSE_STATUS_TRYLATER |
371
|
|
|
|
|
|
|
OCSP_RESPONSE_STATUS_UNAUTHORIZED |
372
|
|
|
|
|
|
|
OPENSSL_BUILT_ON |
373
|
|
|
|
|
|
|
OPENSSL_CFLAGS |
374
|
|
|
|
|
|
|
OPENSSL_CPU_INFO |
375
|
|
|
|
|
|
|
OPENSSL_DIR |
376
|
|
|
|
|
|
|
OPENSSL_ENGINES_DIR |
377
|
|
|
|
|
|
|
OPENSSL_FULL_VERSION_STRING |
378
|
|
|
|
|
|
|
OPENSSL_INFO_CONFIG_DIR |
379
|
|
|
|
|
|
|
OPENSSL_INFO_CPU_SETTINGS |
380
|
|
|
|
|
|
|
OPENSSL_INFO_DIR_FILENAME_SEPARATOR |
381
|
|
|
|
|
|
|
OPENSSL_INFO_DSO_EXTENSION |
382
|
|
|
|
|
|
|
OPENSSL_INFO_ENGINES_DIR |
383
|
|
|
|
|
|
|
OPENSSL_INFO_LIST_SEPARATOR |
384
|
|
|
|
|
|
|
OPENSSL_INFO_MODULES_DIR |
385
|
|
|
|
|
|
|
OPENSSL_INFO_SEED_SOURCE |
386
|
|
|
|
|
|
|
OPENSSL_MODULES_DIR |
387
|
|
|
|
|
|
|
OPENSSL_PLATFORM |
388
|
|
|
|
|
|
|
OPENSSL_VERSION |
389
|
|
|
|
|
|
|
OPENSSL_VERSION_MAJOR |
390
|
|
|
|
|
|
|
OPENSSL_VERSION_MINOR |
391
|
|
|
|
|
|
|
OPENSSL_VERSION_NUMBER |
392
|
|
|
|
|
|
|
OPENSSL_VERSION_PATCH |
393
|
|
|
|
|
|
|
OPENSSL_VERSION_STRING |
394
|
|
|
|
|
|
|
OP_ALL |
395
|
|
|
|
|
|
|
OP_ALLOW_CLIENT_RENEGOTIATION |
396
|
|
|
|
|
|
|
OP_ALLOW_NO_DHE_KEX |
397
|
|
|
|
|
|
|
OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION |
398
|
|
|
|
|
|
|
OP_CIPHER_SERVER_PREFERENCE |
399
|
|
|
|
|
|
|
OP_CISCO_ANYCONNECT |
400
|
|
|
|
|
|
|
OP_CLEANSE_PLAINTEXT |
401
|
|
|
|
|
|
|
OP_COOKIE_EXCHANGE |
402
|
|
|
|
|
|
|
OP_CRYPTOPRO_TLSEXT_BUG |
403
|
|
|
|
|
|
|
OP_DISABLE_TLSEXT_CA_NAMES |
404
|
|
|
|
|
|
|
OP_DONT_INSERT_EMPTY_FRAGMENTS |
405
|
|
|
|
|
|
|
OP_ENABLE_KTLS |
406
|
|
|
|
|
|
|
OP_ENABLE_MIDDLEBOX_COMPAT |
407
|
|
|
|
|
|
|
OP_EPHEMERAL_RSA |
408
|
|
|
|
|
|
|
OP_IGNORE_UNEXPECTED_EOF |
409
|
|
|
|
|
|
|
OP_LEGACY_SERVER_CONNECT |
410
|
|
|
|
|
|
|
OP_MICROSOFT_BIG_SSLV3_BUFFER |
411
|
|
|
|
|
|
|
OP_MICROSOFT_SESS_ID_BUG |
412
|
|
|
|
|
|
|
OP_MSIE_SSLV2_RSA_PADDING |
413
|
|
|
|
|
|
|
OP_NETSCAPE_CA_DN_BUG |
414
|
|
|
|
|
|
|
OP_NETSCAPE_CHALLENGE_BUG |
415
|
|
|
|
|
|
|
OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG |
416
|
|
|
|
|
|
|
OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG |
417
|
|
|
|
|
|
|
OP_NON_EXPORT_FIRST |
418
|
|
|
|
|
|
|
OP_NO_ANTI_REPLAY |
419
|
|
|
|
|
|
|
OP_NO_CLIENT_RENEGOTIATION |
420
|
|
|
|
|
|
|
OP_NO_COMPRESSION |
421
|
|
|
|
|
|
|
OP_NO_ENCRYPT_THEN_MAC |
422
|
|
|
|
|
|
|
OP_NO_EXTENDED_MASTER_SECRET |
423
|
|
|
|
|
|
|
OP_NO_QUERY_MTU |
424
|
|
|
|
|
|
|
OP_NO_RENEGOTIATION |
425
|
|
|
|
|
|
|
OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION |
426
|
|
|
|
|
|
|
OP_NO_SSL_MASK |
427
|
|
|
|
|
|
|
OP_NO_SSLv2 |
428
|
|
|
|
|
|
|
OP_NO_SSLv3 |
429
|
|
|
|
|
|
|
OP_NO_TICKET |
430
|
|
|
|
|
|
|
OP_NO_TLSv1 |
431
|
|
|
|
|
|
|
OP_NO_TLSv1_1 |
432
|
|
|
|
|
|
|
OP_NO_TLSv1_2 |
433
|
|
|
|
|
|
|
OP_NO_TLSv1_3 |
434
|
|
|
|
|
|
|
OP_PKCS1_CHECK_1 |
435
|
|
|
|
|
|
|
OP_PKCS1_CHECK_2 |
436
|
|
|
|
|
|
|
OP_PRIORITIZE_CHACHA |
437
|
|
|
|
|
|
|
OP_SAFARI_ECDHE_ECDSA_BUG |
438
|
|
|
|
|
|
|
OP_SINGLE_DH_USE |
439
|
|
|
|
|
|
|
OP_SINGLE_ECDH_USE |
440
|
|
|
|
|
|
|
OP_SSLEAY_080_CLIENT_DH_BUG |
441
|
|
|
|
|
|
|
OP_SSLREF2_REUSE_CERT_TYPE_BUG |
442
|
|
|
|
|
|
|
OP_TLSEXT_PADDING |
443
|
|
|
|
|
|
|
OP_TLS_BLOCK_PADDING_BUG |
444
|
|
|
|
|
|
|
OP_TLS_D5_BUG |
445
|
|
|
|
|
|
|
OP_TLS_ROLLBACK_BUG |
446
|
|
|
|
|
|
|
READING |
447
|
|
|
|
|
|
|
RECEIVED_SHUTDOWN |
448
|
|
|
|
|
|
|
RETRY_VERIFY |
449
|
|
|
|
|
|
|
RSA_3 |
450
|
|
|
|
|
|
|
RSA_F4 |
451
|
|
|
|
|
|
|
R_BAD_AUTHENTICATION_TYPE |
452
|
|
|
|
|
|
|
R_BAD_CHECKSUM |
453
|
|
|
|
|
|
|
R_BAD_MAC_DECODE |
454
|
|
|
|
|
|
|
R_BAD_RESPONSE_ARGUMENT |
455
|
|
|
|
|
|
|
R_BAD_SSL_FILETYPE |
456
|
|
|
|
|
|
|
R_BAD_SSL_SESSION_ID_LENGTH |
457
|
|
|
|
|
|
|
R_BAD_STATE |
458
|
|
|
|
|
|
|
R_BAD_WRITE_RETRY |
459
|
|
|
|
|
|
|
R_CHALLENGE_IS_DIFFERENT |
460
|
|
|
|
|
|
|
R_CIPHER_TABLE_SRC_ERROR |
461
|
|
|
|
|
|
|
R_INVALID_CHALLENGE_LENGTH |
462
|
|
|
|
|
|
|
R_NO_CERTIFICATE_SET |
463
|
|
|
|
|
|
|
R_NO_CERTIFICATE_SPECIFIED |
464
|
|
|
|
|
|
|
R_NO_CIPHER_LIST |
465
|
|
|
|
|
|
|
R_NO_CIPHER_MATCH |
466
|
|
|
|
|
|
|
R_NO_PRIVATEKEY |
467
|
|
|
|
|
|
|
R_NO_PUBLICKEY |
468
|
|
|
|
|
|
|
R_NULL_SSL_CTX |
469
|
|
|
|
|
|
|
R_PEER_DID_NOT_RETURN_A_CERTIFICATE |
470
|
|
|
|
|
|
|
R_PEER_ERROR |
471
|
|
|
|
|
|
|
R_PEER_ERROR_CERTIFICATE |
472
|
|
|
|
|
|
|
R_PEER_ERROR_NO_CIPHER |
473
|
|
|
|
|
|
|
R_PEER_ERROR_UNSUPPORTED_CERTIFICATE_TYPE |
474
|
|
|
|
|
|
|
R_PUBLIC_KEY_ENCRYPT_ERROR |
475
|
|
|
|
|
|
|
R_PUBLIC_KEY_IS_NOT_RSA |
476
|
|
|
|
|
|
|
R_READ_WRONG_PACKET_TYPE |
477
|
|
|
|
|
|
|
R_SHORT_READ |
478
|
|
|
|
|
|
|
R_SSL_SESSION_ID_IS_DIFFERENT |
479
|
|
|
|
|
|
|
R_UNABLE_TO_EXTRACT_PUBLIC_KEY |
480
|
|
|
|
|
|
|
R_UNKNOWN_REMOTE_ERROR_TYPE |
481
|
|
|
|
|
|
|
R_UNKNOWN_STATE |
482
|
|
|
|
|
|
|
R_X509_LIB |
483
|
|
|
|
|
|
|
SENT_SHUTDOWN |
484
|
|
|
|
|
|
|
SESSION_ASN1_VERSION |
485
|
|
|
|
|
|
|
SESS_CACHE_BOTH |
486
|
|
|
|
|
|
|
SESS_CACHE_CLIENT |
487
|
|
|
|
|
|
|
SESS_CACHE_NO_AUTO_CLEAR |
488
|
|
|
|
|
|
|
SESS_CACHE_NO_INTERNAL |
489
|
|
|
|
|
|
|
SESS_CACHE_NO_INTERNAL_LOOKUP |
490
|
|
|
|
|
|
|
SESS_CACHE_NO_INTERNAL_STORE |
491
|
|
|
|
|
|
|
SESS_CACHE_OFF |
492
|
|
|
|
|
|
|
SESS_CACHE_SERVER |
493
|
|
|
|
|
|
|
SESS_CACHE_UPDATE_TIME |
494
|
|
|
|
|
|
|
SSL2_MT_CLIENT_CERTIFICATE |
495
|
|
|
|
|
|
|
SSL2_MT_CLIENT_FINISHED |
496
|
|
|
|
|
|
|
SSL2_MT_CLIENT_HELLO |
497
|
|
|
|
|
|
|
SSL2_MT_CLIENT_MASTER_KEY |
498
|
|
|
|
|
|
|
SSL2_MT_ERROR |
499
|
|
|
|
|
|
|
SSL2_MT_REQUEST_CERTIFICATE |
500
|
|
|
|
|
|
|
SSL2_MT_SERVER_FINISHED |
501
|
|
|
|
|
|
|
SSL2_MT_SERVER_HELLO |
502
|
|
|
|
|
|
|
SSL2_MT_SERVER_VERIFY |
503
|
|
|
|
|
|
|
SSL2_VERSION |
504
|
|
|
|
|
|
|
SSL3_MT_CCS |
505
|
|
|
|
|
|
|
SSL3_MT_CERTIFICATE |
506
|
|
|
|
|
|
|
SSL3_MT_CERTIFICATE_REQUEST |
507
|
|
|
|
|
|
|
SSL3_MT_CERTIFICATE_STATUS |
508
|
|
|
|
|
|
|
SSL3_MT_CERTIFICATE_URL |
509
|
|
|
|
|
|
|
SSL3_MT_CERTIFICATE_VERIFY |
510
|
|
|
|
|
|
|
SSL3_MT_CHANGE_CIPHER_SPEC |
511
|
|
|
|
|
|
|
SSL3_MT_CLIENT_HELLO |
512
|
|
|
|
|
|
|
SSL3_MT_CLIENT_KEY_EXCHANGE |
513
|
|
|
|
|
|
|
SSL3_MT_ENCRYPTED_EXTENSIONS |
514
|
|
|
|
|
|
|
SSL3_MT_END_OF_EARLY_DATA |
515
|
|
|
|
|
|
|
SSL3_MT_FINISHED |
516
|
|
|
|
|
|
|
SSL3_MT_HELLO_REQUEST |
517
|
|
|
|
|
|
|
SSL3_MT_KEY_UPDATE |
518
|
|
|
|
|
|
|
SSL3_MT_MESSAGE_HASH |
519
|
|
|
|
|
|
|
SSL3_MT_NEWSESSION_TICKET |
520
|
|
|
|
|
|
|
SSL3_MT_NEXT_PROTO |
521
|
|
|
|
|
|
|
SSL3_MT_SERVER_DONE |
522
|
|
|
|
|
|
|
SSL3_MT_SERVER_HELLO |
523
|
|
|
|
|
|
|
SSL3_MT_SERVER_KEY_EXCHANGE |
524
|
|
|
|
|
|
|
SSL3_MT_SUPPLEMENTAL_DATA |
525
|
|
|
|
|
|
|
SSL3_RT_ALERT |
526
|
|
|
|
|
|
|
SSL3_RT_APPLICATION_DATA |
527
|
|
|
|
|
|
|
SSL3_RT_CHANGE_CIPHER_SPEC |
528
|
|
|
|
|
|
|
SSL3_RT_HANDSHAKE |
529
|
|
|
|
|
|
|
SSL3_RT_HEADER |
530
|
|
|
|
|
|
|
SSL3_RT_INNER_CONTENT_TYPE |
531
|
|
|
|
|
|
|
SSL3_VERSION |
532
|
|
|
|
|
|
|
SSLEAY_BUILT_ON |
533
|
|
|
|
|
|
|
SSLEAY_CFLAGS |
534
|
|
|
|
|
|
|
SSLEAY_DIR |
535
|
|
|
|
|
|
|
SSLEAY_PLATFORM |
536
|
|
|
|
|
|
|
SSLEAY_VERSION |
537
|
|
|
|
|
|
|
ST_ACCEPT |
538
|
|
|
|
|
|
|
ST_BEFORE |
539
|
|
|
|
|
|
|
ST_CONNECT |
540
|
|
|
|
|
|
|
ST_INIT |
541
|
|
|
|
|
|
|
ST_OK |
542
|
|
|
|
|
|
|
ST_READ_BODY |
543
|
|
|
|
|
|
|
ST_READ_HEADER |
544
|
|
|
|
|
|
|
TLS1_1_VERSION |
545
|
|
|
|
|
|
|
TLS1_2_VERSION |
546
|
|
|
|
|
|
|
TLS1_3_VERSION |
547
|
|
|
|
|
|
|
TLS1_VERSION |
548
|
|
|
|
|
|
|
TLSEXT_STATUSTYPE_ocsp |
549
|
|
|
|
|
|
|
VERIFY_CLIENT_ONCE |
550
|
|
|
|
|
|
|
VERIFY_FAIL_IF_NO_PEER_CERT |
551
|
|
|
|
|
|
|
VERIFY_NONE |
552
|
|
|
|
|
|
|
VERIFY_PEER |
553
|
|
|
|
|
|
|
VERIFY_POST_HANDSHAKE |
554
|
|
|
|
|
|
|
V_OCSP_CERTSTATUS_GOOD |
555
|
|
|
|
|
|
|
V_OCSP_CERTSTATUS_REVOKED |
556
|
|
|
|
|
|
|
V_OCSP_CERTSTATUS_UNKNOWN |
557
|
|
|
|
|
|
|
WRITING |
558
|
|
|
|
|
|
|
X509_CHECK_FLAG_ALWAYS_CHECK_SUBJECT |
559
|
|
|
|
|
|
|
X509_CHECK_FLAG_MULTI_LABEL_WILDCARDS |
560
|
|
|
|
|
|
|
X509_CHECK_FLAG_NEVER_CHECK_SUBJECT |
561
|
|
|
|
|
|
|
X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS |
562
|
|
|
|
|
|
|
X509_CHECK_FLAG_NO_WILDCARDS |
563
|
|
|
|
|
|
|
X509_CHECK_FLAG_SINGLE_LABEL_SUBDOMAINS |
564
|
|
|
|
|
|
|
X509_FILETYPE_ASN1 |
565
|
|
|
|
|
|
|
X509_FILETYPE_DEFAULT |
566
|
|
|
|
|
|
|
X509_FILETYPE_PEM |
567
|
|
|
|
|
|
|
X509_LOOKUP |
568
|
|
|
|
|
|
|
X509_PURPOSE_ANY |
569
|
|
|
|
|
|
|
X509_PURPOSE_CRL_SIGN |
570
|
|
|
|
|
|
|
X509_PURPOSE_NS_SSL_SERVER |
571
|
|
|
|
|
|
|
X509_PURPOSE_OCSP_HELPER |
572
|
|
|
|
|
|
|
X509_PURPOSE_SMIME_ENCRYPT |
573
|
|
|
|
|
|
|
X509_PURPOSE_SMIME_SIGN |
574
|
|
|
|
|
|
|
X509_PURPOSE_SSL_CLIENT |
575
|
|
|
|
|
|
|
X509_PURPOSE_SSL_SERVER |
576
|
|
|
|
|
|
|
X509_PURPOSE_TIMESTAMP_SIGN |
577
|
|
|
|
|
|
|
X509_TRUST_COMPAT |
578
|
|
|
|
|
|
|
X509_TRUST_DEFAULT |
579
|
|
|
|
|
|
|
X509_TRUST_EMAIL |
580
|
|
|
|
|
|
|
X509_TRUST_OBJECT_SIGN |
581
|
|
|
|
|
|
|
X509_TRUST_OCSP_REQUEST |
582
|
|
|
|
|
|
|
X509_TRUST_OCSP_SIGN |
583
|
|
|
|
|
|
|
X509_TRUST_SSL_CLIENT |
584
|
|
|
|
|
|
|
X509_TRUST_SSL_SERVER |
585
|
|
|
|
|
|
|
X509_TRUST_TSA |
586
|
|
|
|
|
|
|
X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH |
587
|
|
|
|
|
|
|
X509_V_ERR_AKID_SKID_MISMATCH |
588
|
|
|
|
|
|
|
X509_V_ERR_APPLICATION_VERIFICATION |
589
|
|
|
|
|
|
|
X509_V_ERR_AUTHORITY_KEY_IDENTIFIER_CRITICAL |
590
|
|
|
|
|
|
|
X509_V_ERR_CA_BCONS_NOT_CRITICAL |
591
|
|
|
|
|
|
|
X509_V_ERR_CA_CERT_MISSING_KEY_USAGE |
592
|
|
|
|
|
|
|
X509_V_ERR_CA_KEY_TOO_SMALL |
593
|
|
|
|
|
|
|
X509_V_ERR_CA_MD_TOO_WEAK |
594
|
|
|
|
|
|
|
X509_V_ERR_CERT_CHAIN_TOO_LONG |
595
|
|
|
|
|
|
|
X509_V_ERR_CERT_HAS_EXPIRED |
596
|
|
|
|
|
|
|
X509_V_ERR_CERT_NOT_YET_VALID |
597
|
|
|
|
|
|
|
X509_V_ERR_CERT_REJECTED |
598
|
|
|
|
|
|
|
X509_V_ERR_CERT_REVOKED |
599
|
|
|
|
|
|
|
X509_V_ERR_CERT_SIGNATURE_FAILURE |
600
|
|
|
|
|
|
|
X509_V_ERR_CERT_UNTRUSTED |
601
|
|
|
|
|
|
|
X509_V_ERR_CRL_HAS_EXPIRED |
602
|
|
|
|
|
|
|
X509_V_ERR_CRL_NOT_YET_VALID |
603
|
|
|
|
|
|
|
X509_V_ERR_CRL_PATH_VALIDATION_ERROR |
604
|
|
|
|
|
|
|
X509_V_ERR_CRL_SIGNATURE_FAILURE |
605
|
|
|
|
|
|
|
X509_V_ERR_DANE_NO_MATCH |
606
|
|
|
|
|
|
|
X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT |
607
|
|
|
|
|
|
|
X509_V_ERR_DIFFERENT_CRL_SCOPE |
608
|
|
|
|
|
|
|
X509_V_ERR_EC_KEY_EXPLICIT_PARAMS |
609
|
|
|
|
|
|
|
X509_V_ERR_EE_KEY_TOO_SMALL |
610
|
|
|
|
|
|
|
X509_V_ERR_EMAIL_MISMATCH |
611
|
|
|
|
|
|
|
X509_V_ERR_EMPTY_SUBJECT_ALT_NAME |
612
|
|
|
|
|
|
|
X509_V_ERR_EMPTY_SUBJECT_SAN_NOT_CRITICAL |
613
|
|
|
|
|
|
|
X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD |
614
|
|
|
|
|
|
|
X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD |
615
|
|
|
|
|
|
|
X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD |
616
|
|
|
|
|
|
|
X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD |
617
|
|
|
|
|
|
|
X509_V_ERR_EXCLUDED_VIOLATION |
618
|
|
|
|
|
|
|
X509_V_ERR_EXTENSIONS_REQUIRE_VERSION_3 |
619
|
|
|
|
|
|
|
X509_V_ERR_HOSTNAME_MISMATCH |
620
|
|
|
|
|
|
|
X509_V_ERR_INVALID_CA |
621
|
|
|
|
|
|
|
X509_V_ERR_INVALID_CALL |
622
|
|
|
|
|
|
|
X509_V_ERR_INVALID_EXTENSION |
623
|
|
|
|
|
|
|
X509_V_ERR_INVALID_NON_CA |
624
|
|
|
|
|
|
|
X509_V_ERR_INVALID_POLICY_EXTENSION |
625
|
|
|
|
|
|
|
X509_V_ERR_INVALID_PURPOSE |
626
|
|
|
|
|
|
|
X509_V_ERR_IP_ADDRESS_MISMATCH |
627
|
|
|
|
|
|
|
X509_V_ERR_ISSUER_NAME_EMPTY |
628
|
|
|
|
|
|
|
X509_V_ERR_KEYUSAGE_NO_CERTSIGN |
629
|
|
|
|
|
|
|
X509_V_ERR_KEYUSAGE_NO_CRL_SIGN |
630
|
|
|
|
|
|
|
X509_V_ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE |
631
|
|
|
|
|
|
|
X509_V_ERR_KU_KEY_CERT_SIGN_INVALID_FOR_NON_CA |
632
|
|
|
|
|
|
|
X509_V_ERR_MISSING_AUTHORITY_KEY_IDENTIFIER |
633
|
|
|
|
|
|
|
X509_V_ERR_MISSING_SUBJECT_KEY_IDENTIFIER |
634
|
|
|
|
|
|
|
X509_V_ERR_NO_EXPLICIT_POLICY |
635
|
|
|
|
|
|
|
X509_V_ERR_NO_ISSUER_PUBLIC_KEY |
636
|
|
|
|
|
|
|
X509_V_ERR_NO_VALID_SCTS |
637
|
|
|
|
|
|
|
X509_V_ERR_OCSP_CERT_UNKNOWN |
638
|
|
|
|
|
|
|
X509_V_ERR_OCSP_VERIFY_FAILED |
639
|
|
|
|
|
|
|
X509_V_ERR_OCSP_VERIFY_NEEDED |
640
|
|
|
|
|
|
|
X509_V_ERR_OUT_OF_MEM |
641
|
|
|
|
|
|
|
X509_V_ERR_PATHLEN_INVALID_FOR_NON_CA |
642
|
|
|
|
|
|
|
X509_V_ERR_PATHLEN_WITHOUT_KU_KEY_CERT_SIGN |
643
|
|
|
|
|
|
|
X509_V_ERR_PATH_LENGTH_EXCEEDED |
644
|
|
|
|
|
|
|
X509_V_ERR_PATH_LOOP |
645
|
|
|
|
|
|
|
X509_V_ERR_PERMITTED_VIOLATION |
646
|
|
|
|
|
|
|
X509_V_ERR_PROXY_CERTIFICATES_NOT_ALLOWED |
647
|
|
|
|
|
|
|
X509_V_ERR_PROXY_PATH_LENGTH_EXCEEDED |
648
|
|
|
|
|
|
|
X509_V_ERR_PROXY_SUBJECT_NAME_VIOLATION |
649
|
|
|
|
|
|
|
X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN |
650
|
|
|
|
|
|
|
X509_V_ERR_SIGNATURE_ALGORITHM_INCONSISTENCY |
651
|
|
|
|
|
|
|
X509_V_ERR_SIGNATURE_ALGORITHM_MISMATCH |
652
|
|
|
|
|
|
|
X509_V_ERR_STORE_LOOKUP |
653
|
|
|
|
|
|
|
X509_V_ERR_SUBJECT_ISSUER_MISMATCH |
654
|
|
|
|
|
|
|
X509_V_ERR_SUBJECT_KEY_IDENTIFIER_CRITICAL |
655
|
|
|
|
|
|
|
X509_V_ERR_SUBJECT_NAME_EMPTY |
656
|
|
|
|
|
|
|
X509_V_ERR_SUBTREE_MINMAX |
657
|
|
|
|
|
|
|
X509_V_ERR_SUITE_B_CANNOT_SIGN_P_384_WITH_P_256 |
658
|
|
|
|
|
|
|
X509_V_ERR_SUITE_B_INVALID_ALGORITHM |
659
|
|
|
|
|
|
|
X509_V_ERR_SUITE_B_INVALID_CURVE |
660
|
|
|
|
|
|
|
X509_V_ERR_SUITE_B_INVALID_SIGNATURE_ALGORITHM |
661
|
|
|
|
|
|
|
X509_V_ERR_SUITE_B_INVALID_VERSION |
662
|
|
|
|
|
|
|
X509_V_ERR_SUITE_B_LOS_NOT_ALLOWED |
663
|
|
|
|
|
|
|
X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY |
664
|
|
|
|
|
|
|
X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE |
665
|
|
|
|
|
|
|
X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE |
666
|
|
|
|
|
|
|
X509_V_ERR_UNABLE_TO_GET_CRL |
667
|
|
|
|
|
|
|
X509_V_ERR_UNABLE_TO_GET_CRL_ISSUER |
668
|
|
|
|
|
|
|
X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT |
669
|
|
|
|
|
|
|
X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY |
670
|
|
|
|
|
|
|
X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE |
671
|
|
|
|
|
|
|
X509_V_ERR_UNHANDLED_CRITICAL_CRL_EXTENSION |
672
|
|
|
|
|
|
|
X509_V_ERR_UNHANDLED_CRITICAL_EXTENSION |
673
|
|
|
|
|
|
|
X509_V_ERR_UNNESTED_RESOURCE |
674
|
|
|
|
|
|
|
X509_V_ERR_UNSPECIFIED |
675
|
|
|
|
|
|
|
X509_V_ERR_UNSUPPORTED_CONSTRAINT_SYNTAX |
676
|
|
|
|
|
|
|
X509_V_ERR_UNSUPPORTED_CONSTRAINT_TYPE |
677
|
|
|
|
|
|
|
X509_V_ERR_UNSUPPORTED_EXTENSION_FEATURE |
678
|
|
|
|
|
|
|
X509_V_ERR_UNSUPPORTED_NAME_SYNTAX |
679
|
|
|
|
|
|
|
X509_V_ERR_UNSUPPORTED_SIGNATURE_ALGORITHM |
680
|
|
|
|
|
|
|
X509_V_FLAG_ALLOW_PROXY_CERTS |
681
|
|
|
|
|
|
|
X509_V_FLAG_CB_ISSUER_CHECK |
682
|
|
|
|
|
|
|
X509_V_FLAG_CHECK_SS_SIGNATURE |
683
|
|
|
|
|
|
|
X509_V_FLAG_CRL_CHECK |
684
|
|
|
|
|
|
|
X509_V_FLAG_CRL_CHECK_ALL |
685
|
|
|
|
|
|
|
X509_V_FLAG_EXPLICIT_POLICY |
686
|
|
|
|
|
|
|
X509_V_FLAG_EXTENDED_CRL_SUPPORT |
687
|
|
|
|
|
|
|
X509_V_FLAG_IGNORE_CRITICAL |
688
|
|
|
|
|
|
|
X509_V_FLAG_INHIBIT_ANY |
689
|
|
|
|
|
|
|
X509_V_FLAG_INHIBIT_MAP |
690
|
|
|
|
|
|
|
X509_V_FLAG_LEGACY_VERIFY |
691
|
|
|
|
|
|
|
X509_V_FLAG_NOTIFY_POLICY |
692
|
|
|
|
|
|
|
X509_V_FLAG_NO_ALT_CHAINS |
693
|
|
|
|
|
|
|
X509_V_FLAG_NO_CHECK_TIME |
694
|
|
|
|
|
|
|
X509_V_FLAG_PARTIAL_CHAIN |
695
|
|
|
|
|
|
|
X509_V_FLAG_POLICY_CHECK |
696
|
|
|
|
|
|
|
X509_V_FLAG_POLICY_MASK |
697
|
|
|
|
|
|
|
X509_V_FLAG_SUITEB_128_LOS |
698
|
|
|
|
|
|
|
X509_V_FLAG_SUITEB_128_LOS_ONLY |
699
|
|
|
|
|
|
|
X509_V_FLAG_SUITEB_192_LOS |
700
|
|
|
|
|
|
|
X509_V_FLAG_TRUSTED_FIRST |
701
|
|
|
|
|
|
|
X509_V_FLAG_USE_CHECK_TIME |
702
|
|
|
|
|
|
|
X509_V_FLAG_USE_DELTAS |
703
|
|
|
|
|
|
|
X509_V_FLAG_X509_STRICT |
704
|
|
|
|
|
|
|
X509_V_OK |
705
|
|
|
|
|
|
|
XN_FLAG_COMPAT |
706
|
|
|
|
|
|
|
XN_FLAG_DN_REV |
707
|
|
|
|
|
|
|
XN_FLAG_DUMP_UNKNOWN_FIELDS |
708
|
|
|
|
|
|
|
XN_FLAG_FN_ALIGN |
709
|
|
|
|
|
|
|
XN_FLAG_FN_LN |
710
|
|
|
|
|
|
|
XN_FLAG_FN_MASK |
711
|
|
|
|
|
|
|
XN_FLAG_FN_NONE |
712
|
|
|
|
|
|
|
XN_FLAG_FN_OID |
713
|
|
|
|
|
|
|
XN_FLAG_FN_SN |
714
|
|
|
|
|
|
|
XN_FLAG_MULTILINE |
715
|
|
|
|
|
|
|
XN_FLAG_ONELINE |
716
|
|
|
|
|
|
|
XN_FLAG_RFC2253 |
717
|
|
|
|
|
|
|
XN_FLAG_SEP_COMMA_PLUS |
718
|
|
|
|
|
|
|
XN_FLAG_SEP_CPLUS_SPC |
719
|
|
|
|
|
|
|
XN_FLAG_SEP_MASK |
720
|
|
|
|
|
|
|
XN_FLAG_SEP_MULTILINE |
721
|
|
|
|
|
|
|
XN_FLAG_SEP_SPLUS_SPC |
722
|
|
|
|
|
|
|
XN_FLAG_SPC_EQ |
723
|
|
|
|
|
|
|
); |
724
|
|
|
|
|
|
|
|
725
|
|
|
|
|
|
|
my @functions = qw( |
726
|
|
|
|
|
|
|
BIO_eof |
727
|
|
|
|
|
|
|
BIO_f_ssl |
728
|
|
|
|
|
|
|
BIO_free |
729
|
|
|
|
|
|
|
BIO_new |
730
|
|
|
|
|
|
|
BIO_new_file |
731
|
|
|
|
|
|
|
BIO_pending |
732
|
|
|
|
|
|
|
BIO_read |
733
|
|
|
|
|
|
|
BIO_s_mem |
734
|
|
|
|
|
|
|
BIO_wpending |
735
|
|
|
|
|
|
|
BIO_write |
736
|
|
|
|
|
|
|
CTX_free |
737
|
|
|
|
|
|
|
CTX_get_cert_store |
738
|
|
|
|
|
|
|
CTX_new |
739
|
|
|
|
|
|
|
CTX_use_RSAPrivateKey_file |
740
|
|
|
|
|
|
|
CTX_use_certificate_file |
741
|
|
|
|
|
|
|
CTX_v23_new |
742
|
|
|
|
|
|
|
CTX_v2_new |
743
|
|
|
|
|
|
|
CTX_v3_new |
744
|
|
|
|
|
|
|
ERR_error_string |
745
|
|
|
|
|
|
|
ERR_get_error |
746
|
|
|
|
|
|
|
ERR_load_RAND_strings |
747
|
|
|
|
|
|
|
ERR_load_SSL_strings |
748
|
|
|
|
|
|
|
PEM_read_bio_X509_CRL |
749
|
|
|
|
|
|
|
RSA_free |
750
|
|
|
|
|
|
|
RSA_generate_key |
751
|
|
|
|
|
|
|
SESSION_free |
752
|
|
|
|
|
|
|
SESSION_get_master_key |
753
|
|
|
|
|
|
|
SESSION_new |
754
|
|
|
|
|
|
|
SESSION_print |
755
|
|
|
|
|
|
|
X509_NAME_get_text_by_NID |
756
|
|
|
|
|
|
|
X509_NAME_oneline |
757
|
|
|
|
|
|
|
X509_STORE_add_cert |
758
|
|
|
|
|
|
|
X509_STORE_add_crl |
759
|
|
|
|
|
|
|
X509_check_email |
760
|
|
|
|
|
|
|
X509_check_host |
761
|
|
|
|
|
|
|
X509_check_ip |
762
|
|
|
|
|
|
|
X509_check_ip_asc |
763
|
|
|
|
|
|
|
X509_free |
764
|
|
|
|
|
|
|
X509_get_issuer_name |
765
|
|
|
|
|
|
|
X509_get_subject_name |
766
|
|
|
|
|
|
|
X509_load_cert_crl_file |
767
|
|
|
|
|
|
|
X509_load_cert_file |
768
|
|
|
|
|
|
|
X509_load_crl_file |
769
|
|
|
|
|
|
|
accept |
770
|
|
|
|
|
|
|
clear |
771
|
|
|
|
|
|
|
connect |
772
|
|
|
|
|
|
|
copy_session_id |
773
|
|
|
|
|
|
|
d2i_SSL_SESSION |
774
|
|
|
|
|
|
|
die_if_ssl_error |
775
|
|
|
|
|
|
|
die_now |
776
|
|
|
|
|
|
|
do_https |
777
|
|
|
|
|
|
|
dump_peer_certificate |
778
|
|
|
|
|
|
|
free |
779
|
|
|
|
|
|
|
get_cipher |
780
|
|
|
|
|
|
|
get_cipher_list |
781
|
|
|
|
|
|
|
get_client_random |
782
|
|
|
|
|
|
|
get_fd |
783
|
|
|
|
|
|
|
get_http |
784
|
|
|
|
|
|
|
get_http4 |
785
|
|
|
|
|
|
|
get_https |
786
|
|
|
|
|
|
|
get_https3 |
787
|
|
|
|
|
|
|
get_https4 |
788
|
|
|
|
|
|
|
get_httpx |
789
|
|
|
|
|
|
|
get_httpx4 |
790
|
|
|
|
|
|
|
get_peer_certificate |
791
|
|
|
|
|
|
|
get_peer_cert_chain |
792
|
|
|
|
|
|
|
get_rbio |
793
|
|
|
|
|
|
|
get_read_ahead |
794
|
|
|
|
|
|
|
get_server_random |
795
|
|
|
|
|
|
|
get_shared_ciphers |
796
|
|
|
|
|
|
|
get_time |
797
|
|
|
|
|
|
|
get_timeout |
798
|
|
|
|
|
|
|
get_wbio |
799
|
|
|
|
|
|
|
i2d_SSL_SESSION |
800
|
|
|
|
|
|
|
load_error_strings |
801
|
|
|
|
|
|
|
make_form |
802
|
|
|
|
|
|
|
make_headers |
803
|
|
|
|
|
|
|
new |
804
|
|
|
|
|
|
|
peek |
805
|
|
|
|
|
|
|
pending |
806
|
|
|
|
|
|
|
post_http |
807
|
|
|
|
|
|
|
post_http4 |
808
|
|
|
|
|
|
|
post_https |
809
|
|
|
|
|
|
|
post_https3 |
810
|
|
|
|
|
|
|
post_https4 |
811
|
|
|
|
|
|
|
post_httpx |
812
|
|
|
|
|
|
|
post_httpx4 |
813
|
|
|
|
|
|
|
print_errs |
814
|
|
|
|
|
|
|
read |
815
|
|
|
|
|
|
|
rstate_string |
816
|
|
|
|
|
|
|
rstate_string_long |
817
|
|
|
|
|
|
|
set_bio |
818
|
|
|
|
|
|
|
set_cert_and_key |
819
|
|
|
|
|
|
|
set_cipher_list |
820
|
|
|
|
|
|
|
set_fd |
821
|
|
|
|
|
|
|
set_read_ahead |
822
|
|
|
|
|
|
|
set_rfd |
823
|
|
|
|
|
|
|
set_server_cert_and_key |
824
|
|
|
|
|
|
|
set_session |
825
|
|
|
|
|
|
|
set_time |
826
|
|
|
|
|
|
|
set_timeout |
827
|
|
|
|
|
|
|
set_verify |
828
|
|
|
|
|
|
|
set_wfd |
829
|
|
|
|
|
|
|
ssl_read_CRLF |
830
|
|
|
|
|
|
|
ssl_read_all |
831
|
|
|
|
|
|
|
ssl_read_until |
832
|
|
|
|
|
|
|
ssl_write_CRLF |
833
|
|
|
|
|
|
|
ssl_write_all |
834
|
|
|
|
|
|
|
sslcat |
835
|
|
|
|
|
|
|
state_string |
836
|
|
|
|
|
|
|
state_string_long |
837
|
|
|
|
|
|
|
tcp_read_CRLF |
838
|
|
|
|
|
|
|
tcp_read_all |
839
|
|
|
|
|
|
|
tcp_read_until |
840
|
|
|
|
|
|
|
tcp_write_CRLF |
841
|
|
|
|
|
|
|
tcp_write_all |
842
|
|
|
|
|
|
|
tcpcat |
843
|
|
|
|
|
|
|
tcpxcat |
844
|
|
|
|
|
|
|
use_PrivateKey |
845
|
|
|
|
|
|
|
use_PrivateKey_ASN1 |
846
|
|
|
|
|
|
|
use_PrivateKey_file |
847
|
|
|
|
|
|
|
use_RSAPrivateKey |
848
|
|
|
|
|
|
|
use_RSAPrivateKey_ASN1 |
849
|
|
|
|
|
|
|
use_RSAPrivateKey_file |
850
|
|
|
|
|
|
|
use_certificate |
851
|
|
|
|
|
|
|
use_certificate_ASN1 |
852
|
|
|
|
|
|
|
use_certificate_file |
853
|
|
|
|
|
|
|
write |
854
|
|
|
|
|
|
|
d2i_OCSP_RESPONSE |
855
|
|
|
|
|
|
|
i2d_OCSP_RESPONSE |
856
|
|
|
|
|
|
|
OCSP_RESPONSE_free |
857
|
|
|
|
|
|
|
d2i_OCSP_REQUEST |
858
|
|
|
|
|
|
|
i2d_OCSP_REQUEST |
859
|
|
|
|
|
|
|
OCSP_REQUEST_free |
860
|
|
|
|
|
|
|
OCSP_cert2ids |
861
|
|
|
|
|
|
|
OCSP_ids2req |
862
|
|
|
|
|
|
|
OCSP_response_status |
863
|
|
|
|
|
|
|
OCSP_response_status_str |
864
|
|
|
|
|
|
|
OCSP_response_verify |
865
|
|
|
|
|
|
|
OCSP_response_results |
866
|
|
|
|
|
|
|
); |
867
|
|
|
|
|
|
|
|
868
|
|
|
|
|
|
|
@EXPORT_OK = ( @constants, @functions ); |
869
|
|
|
|
|
|
|
|
870
|
|
|
|
|
|
|
sub AUTOLOAD { |
871
|
|
|
|
|
|
|
# This AUTOLOAD is used to 'autoload' constants from the constant() |
872
|
|
|
|
|
|
|
# XS function. If a constant is not found then control is passed |
873
|
|
|
|
|
|
|
# to the AUTOLOAD in AutoLoader. |
874
|
|
|
|
|
|
|
|
875
|
940
|
|
|
940
|
|
147489
|
my $constname; |
876
|
940
|
|
|
|
|
5965
|
($constname = $AUTOLOAD) =~ s/.*:://; |
877
|
940
|
|
|
|
|
7825
|
my $val = constant($constname); |
878
|
940
|
100
|
|
|
|
5161
|
if ($! != 0) { |
879
|
228
|
100
|
66
|
|
|
3630
|
if ($! =~ /((Invalid)|(not valid))/i || $!{EINVAL}) { |
880
|
90
|
|
|
|
|
521
|
$AutoLoader::AUTOLOAD = $AUTOLOAD; |
881
|
90
|
|
|
|
|
838
|
goto &AutoLoader::AUTOLOAD; |
882
|
|
|
|
|
|
|
} |
883
|
|
|
|
|
|
|
else { |
884
|
138
|
|
|
|
|
19470
|
croak "Your vendor has not defined SSLeay macro $constname"; |
885
|
|
|
|
|
|
|
} |
886
|
|
|
|
|
|
|
} |
887
|
712
|
|
|
65
|
1
|
33786
|
eval "sub $AUTOLOAD { $val }"; |
|
65
|
|
|
103
|
1
|
54245
|
|
|
65
|
|
|
448
|
0
|
316
|
|
|
65
|
|
|
219
|
1
|
188
|
|
|
65
|
|
|
415
|
0
|
275
|
|
|
99
|
|
|
78
|
0
|
7353
|
|
|
132
|
|
|
9
|
0
|
14858
|
|
|
3
|
|
|
8
|
0
|
21
|
|
|
3
|
|
|
7
|
0
|
12
|
|
|
3
|
|
|
7
|
0
|
24
|
|
|
3
|
|
|
8
|
0
|
13
|
|
|
4
|
|
|
7
|
0
|
23
|
|
|
3
|
|
|
5
|
0
|
10
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
12
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
7
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
9
|
0
|
|
|
|
|
|
|
6
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
9
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
12
|
0
|
|
|
|
|
|
|
6
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
6
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
6
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
6
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
3
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
3
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
10
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
4
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
5
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
2
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
3
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
|
|
888
|
712
|
|
|
|
|
20739
|
goto &$AUTOLOAD; |
889
|
|
|
|
|
|
|
} |
890
|
|
|
|
|
|
|
|
891
|
|
|
|
|
|
|
eval { |
892
|
|
|
|
|
|
|
require XSLoader; |
893
|
|
|
|
|
|
|
XSLoader::load('Net::SSLeay', $VERSION); |
894
|
|
|
|
|
|
|
1; |
895
|
|
|
|
|
|
|
} or do { |
896
|
|
|
|
|
|
|
require DynaLoader; |
897
|
|
|
|
|
|
|
push @ISA, 'DynaLoader'; |
898
|
|
|
|
|
|
|
bootstrap Net::SSLeay $VERSION; |
899
|
|
|
|
|
|
|
}; |
900
|
|
|
|
|
|
|
|
901
|
|
|
|
|
|
|
# Preloaded methods go here. |
902
|
|
|
|
|
|
|
|
903
|
|
|
|
|
|
|
$CRLF = "\x0d\x0a"; # because \r\n is not fully portable |
904
|
|
|
|
|
|
|
|
905
|
|
|
|
|
|
|
### Print SSLeay error stack |
906
|
|
|
|
|
|
|
|
907
|
|
|
|
|
|
|
sub print_errs { |
908
|
42
|
|
|
42
|
1
|
127
|
my ($msg) = @_; |
909
|
42
|
|
|
|
|
184
|
my ($count, $err, $errs, $e) = (0,0,''); |
910
|
42
|
|
|
|
|
447
|
while ($err = ERR_get_error()) { |
911
|
4
|
|
|
|
|
9
|
$count ++; |
912
|
4
|
|
|
|
|
68
|
$e = "$msg $$: $count - " . ERR_error_string($err) . "\n"; |
913
|
4
|
|
|
|
|
10
|
$errs .= $e; |
914
|
4
|
100
|
|
|
|
49
|
warn $e if $Net::SSLeay::trace; |
915
|
|
|
|
|
|
|
} |
916
|
42
|
|
|
|
|
1035
|
return $errs; |
917
|
|
|
|
|
|
|
} |
918
|
|
|
|
|
|
|
|
919
|
|
|
|
|
|
|
# Death is conditional to SSLeay errors existing, i.e. this function checks |
920
|
|
|
|
|
|
|
# for errors and only dies in affirmative. |
921
|
|
|
|
|
|
|
# usage: Net::SSLeay::write($ssl, "foo") or die_if_ssl_error("SSL write ($!)"); |
922
|
|
|
|
|
|
|
|
923
|
|
|
|
|
|
|
sub die_if_ssl_error { |
924
|
4
|
|
|
4
|
1
|
23
|
my ($msg) = @_; |
925
|
4
|
100
|
|
|
|
7
|
die "$$: $msg\n" if print_errs($msg); |
926
|
|
|
|
|
|
|
} |
927
|
|
|
|
|
|
|
|
928
|
|
|
|
|
|
|
# Unconditional death. Used to print SSLeay errors before dying. |
929
|
|
|
|
|
|
|
# usage: Net::SSLeay::connect($ssl) or die_now("Failed SSL connect ($!)"); |
930
|
|
|
|
|
|
|
|
931
|
|
|
|
|
|
|
sub die_now { |
932
|
4
|
|
|
4
|
1
|
16
|
my ($msg) = @_; |
933
|
4
|
|
|
|
|
9
|
print_errs($msg); |
934
|
4
|
|
|
|
|
27
|
die "$$: $msg\n"; |
935
|
|
|
|
|
|
|
} |
936
|
|
|
|
|
|
|
|
937
|
|
|
|
|
|
|
# Perl 5.6.* unicode support causes that length() no longer reliably |
938
|
|
|
|
|
|
|
# reflects the byte length of a string. This eval is to fix that. |
939
|
|
|
|
|
|
|
# Thanks to Sean Burke for the snippet. |
940
|
|
|
|
|
|
|
|
941
|
|
|
|
|
|
|
BEGIN{ |
942
|
54
|
50
|
|
54
|
1
|
68587
|
eval 'use bytes; sub blength ($) { defined $_[0] ? length $_[0] : 0 }'; |
|
54
|
|
|
54
|
|
31748
|
|
|
54
|
|
|
304
|
|
2024
|
|
|
54
|
|
|
|
|
280
|
|
|
304
|
|
|
|
|
6520
|
|
943
|
54
|
50
|
|
|
|
6513
|
$@ and eval ' sub blength ($) { defined $_[0] ? length $_[0] : 0 }' ; |
944
|
|
|
|
|
|
|
} |
945
|
|
|
|
|
|
|
|
946
|
|
|
|
|
|
|
# Autoload methods go after __END__, and are processed by the autosplit program. |
947
|
|
|
|
|
|
|
|
948
|
|
|
|
|
|
|
|
949
|
|
|
|
|
|
|
1; |
950
|
|
|
|
|
|
|
__END__ |