| line |
!l |
l&&!r |
l&&r |
condition |
|
88
|
0 |
0 |
89 |
defined &Net::SSLeay::P_next_proto_negotiated && !&Net::SSLeay::constant('LIBRESSL_VERSION_NUMBER') |
|
93
|
0 |
0 |
0 |
defined &Net::SSLeay::CTX_set_tmp_ecdh && ($openssl_version != 268439631 || length pack('P', 0) == 4) |
|
106
|
0 |
0 |
89 |
$can_ecdh && $openssl_version >= 268443648 |
|
108
|
0 |
0 |
89 |
defined &Net::SSLeay::OCSP_cert2ids && ($netssleay_version < 1.75 || $netssleay_version > 1.77) |
|
111
|
0 |
0 |
89 |
$can_ocsp && defined &Net::SSLeay::set_tlsext_status_type |
|
113
|
0 |
0 |
89 |
defined &Net::SSLeay::CTX_set_tlsext_ticket_getkey_cb && $netssleay_version >= 1.8 |
|
124
|
0 |
0 |
89 |
$session_upref and defined &Net::SSLeay::CTX_sess_set_new_cb |
|
|
0 |
0 |
89 |
$session_upref and defined &Net::SSLeay::CTX_sess_set_new_cb and defined &Net::SSLeay::CTX_sess_set_remove_cb |
|
133
|
0 |
0 |
89 |
defined &Net::SSLeay::CTX_get0_param && eval {
do {
Net::SSLeay::X509_V_FLAG_PARTIAL_CHAIN()
}
} |
|
533
|
54 |
0 |
0 |
not %default_ca and do {
local $SIG{'__DIE__'};
eval {
do {
require Mozilla::CA;
1
}
}
} |
|
658
|
0 |
0 |
72 |
$IOCLASS eq "IO::Socket::IP" and not defined $arg_hash->{'GetAddrInfoFlags'} |
|
663
|
125 |
0 |
2 |
defined $blocking and not $blocking |
|
733
|
82 |
0 |
15 |
defined $sh and not $sh |
|
752
|
197 |
0 |
0 |
$args->{'SSL_usebio'} and not $biosock |
|
842
|
185 |
5 |
7 |
$ctx->{'session_cache'} and my $session = $ctx->{'session_cache'}->get_session($arg_hash->{'SSL_session_key'}) |
|
856
|
188 |
0 |
11 |
defined $timeout and $timeout > 0 |
|
|
188 |
0 |
11 |
defined $timeout and $timeout > 0 and $self->blocking(0) |
|
866
|
188 |
0 |
11 |
defined $timeout && time |
|
877
|
34 |
17 |
18 |
not $err and $dobio |
|
973
|
162 |
0 |
0 |
not %sess_cb and $ctx->{'session_cache'} |
|
|
0 |
0 |
0 |
not %sess_cb and $ctx->{'session_cache'} and my $session = &Net::SSLeay::get1_session($ssl) |
|
1024
|
48 |
0 |
19 |
defined $sh and not $sh |
|
1042
|
0 |
0 |
0 |
$usebio and not $biosock |
|
1054
|
80 |
9 |
48 |
@_ && UNIVERSAL::isa($_[0], 'IO::Handle') |
|
1092
|
123 |
0 |
14 |
defined $timeout and $timeout > 0 |
|
|
123 |
0 |
14 |
defined $timeout and $timeout > 0 and $socket->blocking(0) |
|
1101
|
123 |
0 |
14 |
defined $timeout && time |
|
1111
|
17 |
20 |
9 |
not $err and $dobio |
|
1301
|
0 |
0 |
0 |
$ssleay_set_msg_callback and my $ssl = do {
*$self
}->{'_SSL_object'} |
|
1312
|
501 |
0 |
218 |
@_ and $auto_retry |
|
1342
|
16 |
8 |
0 |
not $! and $err == $Net_SSLeay_ERROR_SSL || $err == $Net_SSLeay_ERROR_SYSCALL |
|
1408
|
2 |
1 |
0 |
$biosock and UNIVERSAL::can($biosock, "peek") |
|
1423
|
0 |
0 |
6 |
!$rc && do {
*$self
}->{'_SSL_object'} |
|
1443
|
2 |
1 |
6167 |
!$rc && do {
*$self
}->{'_SSL_object'} |
|
1460
|
1 |
5 |
88 |
!$rc && do {
*$self
}->{'_SSL_object'} |
|
1468
|
5 |
0 |
0 |
$fd and UNIVERSAL::can($fd, "peek") |
|
1495
|
63 |
0 |
0 |
not $written and $errs |
|
1530
|
0 |
0 |
64 |
!$wc && do {
*$self
}->{'_SSL_object'} |
|
1553
|
5 |
1 |
9553 |
!$wc && do {
*$self
}->{'_SSL_object'} |
|
1660
|
25 |
0 |
62 |
$pending and (my $pb = &Net::SSLeay::peek($ssl, $pending)) ne "" |
|
1694
|
3 |
57 |
2 |
$eod and $delim1 eq '' || $eod < length $buf |
|
1749
|
115 |
28 |
52 |
$status & 1 and $status & 2 || $stop_args->{'SSL_fast_shutdown'} |
|
1773
|
0 |
0 |
2 |
not $err and $dobio |
|
1825
|
257 |
0 |
2 |
$stop_args->{'SSL_ctx_free'} and my $ctx = delete do {
*$self
}->{'_SSL_ctx'} |
|
1869
|
24 |
320 |
310 |
$keys->{'_SSL_object'} and my $ssl = do {
*$self
}->{'_SSL_object'} |
|
1876
|
91 |
529 |
34 |
$keys->{'_SSL_certificate'} and my $cert = delete do {
*$self
}->{'_SSL_certificate'} |
|
1888
|
343 |
5 |
306 |
$untie and not do {
*$self
}->{'_SSL_bio_socket'} |
|
1912
|
0 |
0 |
0 |
$ctx_object && $ctx_object->{'context'} |
|
2009
|
0 |
0 |
0 |
@chain and not $self->peer_certificate |
|
2050
|
79 |
0 |
0 |
$reload and do {
*$self
}->{'_SSL_certificate'} |
|
2232
|
106 |
66 |
116 |
$wtyp eq "anywhere" and $name =~ /^([a-zA-Z0-9_\-]*)\*(.+)/ |
|
|
76 |
70 |
26 |
$wtyp =~ /^(?:full_label|leftmost)$/ and $name =~ /^\*(\..+)$/ |
|
2233
|
82 |
30 |
4 |
$1 ne "" and substr($identity, 0, 4) eq "xn--" |
|
2256
|
248 |
46 |
53 |
$ipn and $type == GEN_IPADD() |
|
|
46 |
47 |
201 |
not $ipn and $type == GEN_DNS() |
|
2269
|
0 |
14 |
87 |
$scheme->{'check_cn'} eq "when_only" and not $alt_dnsNames |
|
2367
|
0 |
0 |
52 |
ref $self && do {
*$self
}->{'_SSL_last_err'} |
|
2376
|
50 |
0 |
1 |
defined $error_trap and ref $error_trap eq "CODE" |
|
2413
|
84 |
2 |
17 |
not ref $self and $CURRENT_SSL_OBJECT |
|
2575
|
1 |
4 |
0 |
IO::Handle::opened($self) && do {
*$self
}->{'_SSL_opened'} |
|
2691
|
102 |
179 |
6 |
not $is_server || defined $arg_hash->{'SSL_use_cert'} and grep {$arg_hash->{$_};} "SSL_cert", "SSL_cert_file" |
|
|
281 |
0 |
6 |
not $is_server || defined $arg_hash->{'SSL_use_cert'} and grep {$arg_hash->{$_};} "SSL_cert", "SSL_cert_file" and grep {$arg_hash->{$_};} "SSL_key", "SSL_key_file" |
|
2721
|
1971 |
325 |
0 |
defined $arg_hash->{$_} and $arg_hash->{$_} eq "" |
|
2744
|
100 |
84 |
103 |
not $is_server and $verify_mode & 1 |
|
|
184 |
61 |
42 |
not $is_server and $verify_mode & 1 and !$vcn_scheme || $vcn_scheme ne 'none' |
|
2785
|
100 |
0 |
0 |
$arg_hash->{'SSL_ticket_keycb'} and not $can_tckt_keycb |
|
2803
|
287 |
0 |
0 |
$ver and $v ne $ver |
|
2866
|
26 |
254 |
20 |
$ver eq "SSLv23" and not $ssl_op & $SSL_OP_NO{'SSLv3'} |
|
2882
|
186 |
105 |
9 |
$arg_hash->{'SSL_server'} and my $id = $arg_hash->{'SSL_session_id_context'} || $arg_hash->{'SSL_verify_mode'} & 1 && "$ctx" |
|
2972
|
117 |
0 |
0 |
ref $file eq "SCALAR" and not $$file |
|
2974
|
117 |
0 |
0 |
ref $dir eq "SCALAR" and not $$dir |
|
2984
|
34 |
83 |
0 |
$file || $dir and not &Net::SSLeay::CTX_load_verify_locations($ctx, scalar($file || ''), scalar($dir || '')) |
|
2994
|
183 |
0 |
0 |
not &Net::SSLeay::CTX_load_verify_locations($ctx, scalar($ca{'SSL_ca_file'} || ''), scalar($dir || '')) and $verify_mode != $Net_SSLeay_VERIFY_NONE |
|
3002
|
186 |
105 |
9 |
$is_server and $verify_mode & $Net_SSLeay_VERIFY_PEER |
|
3072
|
1 |
0 |
1 |
not $cert and $arg_hash->{'SSL_passwd_cb'} |
|
|
0 |
0 |
1 |
not $cert and $arg_hash->{'SSL_passwd_cb'} and defined(my $pw = $arg_hash->{'SSL_passwd_cb'}->(0)) |
|
3091
|
0 |
2 |
0 |
$key and not &Net::SSLeay::CTX_use_PrivateKey($ctx, $key) |
|
3131
|
116 |
0 |
186 |
not $is_server and $can_pha |
|
|
116 |
178 |
8 |
not $is_server and $can_pha and $havecert |
|
|
178 |
0 |
8 |
not $is_server and $can_pha and $havecert and $havekey |
|
3165
|
6 |
4 |
0 |
$arg_hash->{'SSL_server'} and $curve eq "auto" |
|
3223
|
275 |
0 |
11 |
@accept_fp && do {
my $fail;
my $force = $arg_hash->{'SSL_force_fingerprint'};
sub {
my($ok, $cert, $depth) = @_;
$fail = 1 unless $ok;
return 1 if $depth > 0;
my %fp;
foreach $_ (@accept_fp) {
my $fp = ($fp{join $;, $_->[0], $_->[1]} ||= $_->[1] ? &Net::SSLeay::X509_pubkey_digest($cert, scalar &$algo2digest($_->[0])) : &Net::SSLeay::X509_digest($cert, scalar &$algo2digest($_->[0])));
next if $fp ne $_->[2];
return 1;
};
return $force ? 0 : !$fail;
}
} |
|
3252
|
164 |
0 |
23 |
$error &&= &Net::SSLeay::ERR_error_string($error) |
|
3258
|
183 |
0 |
103 |
($verify_cb || @accept_fp) && sub {
my($ok, $ctx_store) = @_;
my($certname, $cert, $error, $depth);
if ($ctx_store) {
$cert = &Net::SSLeay::X509_STORE_CTX_get_current_cert($ctx_store);
$error = &Net::SSLeay::X509_STORE_CTX_get_error($ctx_store);
$depth = &Net::SSLeay::X509_STORE_CTX_get_error_depth($ctx_store);
$certname = &Net::SSLeay::X509_NAME_oneline(scalar &Net::SSLeay::X509_get_issuer_name($cert)) . &Net::SSLeay::X509_NAME_oneline(scalar &Net::SSLeay::X509_get_subject_name($cert));
$error &&= &Net::SSLeay::ERR_error_string($error);
};
DEBUG("ok=$ok [$depth] $certname") if $IO::Socket::SSL::DEBUG >= 3;
$ok = &$verify_cb($ok, $ctx_store, $certname, $error, $cert, $depth) if $verify_cb;
$ok = &$verify_fingerprint($ok, $cert, $depth) if $verify_fingerprint and $cert;
return $ok;
}
|
|
3277
|
100 |
0 |
186 |
not $is_server and $can_ocsp_staple |
|
|
100 |
11 |
175 |
not $is_server and $can_ocsp_staple and not $verify_fingerprint |
|
3333
|
0 |
0 |
0 |
$status and $status->[2] |
|
3358
|
0 |
0 |
0 |
@results and $chain[0] == $iossl->peer_certificate |
|
3428
|
283 |
0 |
3 |
$self->{'session_cache'} and %sess_cb |
|
3584
|
5 |
11 |
0 |
$v && $v->[0] |
|
3739
|
0 |
0 |
0 |
$e->{'expire'} and time < $e->{'expire'} |
|
3743
|
0 |
0 |
0 |
$e->{'nextUpdate'} and time < $e->{'nextUpdate'} |
|
3914
|
0 |
0 |
0 |
@miss and @found |
|
3968
|
0 |
0 |
0 |
$resp->{'success'} && $resp->{'content'} |
|
4119
|
0 |
0 |
0 |
$ssl_ver and $content_type != $trace_constants{'SSL3_RT_HEADER'} |
|
|
0 |
0 |
0 |
$ssl_ver and $content_type != $trace_constants{'SSL3_RT_HEADER'} and $content_type != $trace_constants{'SSL3_RT_INNER_CONTENT_TYPE'} |
|
4132
|
0 |
0 |
0 |
$ssl_ver == $trace_constants{'SSL3_VERSION_MAJOR'} && $content_type |
| line |
l |
!l |
condition |
|
155
|
89 |
0 |
eval {
do {
Net::SSLeay::MODE_AUTO_RETRY()
}
} || 4 |
|
361
|
89 |
0 |
eval {
do {
require Socket;
'Socket'->VERSION(1.95);
die unless Socket::inet_pton(10, '::1') and 10;
'Socket'->import('inet_pton', 'NI_NUMERICHOST', 'NI_NUMERICSERV');
*_getnameinfo = sub {
return unless my($err, $host, $port) = Socket::getnameinfo(@_);
return if $err;
return $host, $port;
}
;
'Socket'
}
} || eval {
do {
require Socket6;
die unless Socket6::inet_pton(10, '::1') and 10;
'Socket6'->import('inet_pton', 'NI_NUMERICHOST', 'NI_NUMERICSERV');
*_getnameinfo = sub {
return Socket6::getnameinfo(@_);
}
;
'Socket6'
}
} || undef |
|
670
|
0 |
304 |
$arg_hash->{'Proto'} ||= "tcp" |
|
673
|
20 |
196 |
$arg_hash->{'Listen'} || 0 |
|
705
|
41 |
45 |
$! ||= 11 |
|
714
|
97 |
0 |
shift() || (return _invalid_object()) |
|
741
|
0 |
197 |
$_[0] || {} |
|
756
|
197 |
0 |
&Net::SSLeay::new($ctx->{'context'}) || (return $self->error('SSL structure creation failed')) |
|
913
|
1 |
0 |
$! ||= 110 |
|
1012
|
67 |
0 |
shift() || (return _invalid_object()) |
|
1013
|
0 |
67 |
shift() || 'IO::Socket::SSL' |
|
1019
|
67 |
0 |
$self->SUPER::accept($class) || (return) |
|
1055
|
0 |
128 |
$_[0] || {} |
|
1065
|
134 |
0 |
&Net::SSLeay::new(do {
*$socket
}->{'_SSL_ctx'}{'context'}) || (return $socket->error('SSL structure creation failed')) |
|
1142
|
1 |
0 |
$! ||= 110 |
|
1211
|
7 |
14 |
$write || 0 |
|
1276
|
0 |
0 |
+($SSL_OBJECT{$_[5]} || (return))->[0] || (return) |
|
1312
|
58 |
160 |
do {
*$self
}->{'_SSL_object'} || (last) |
|
1332
|
10 |
2 |
do {
*$self
}->{'_SSL_bio_sub'} || 0 |
|
1355
|
25 |
6218 |
$offset ||= 0 |
|
1422
|
0 |
6 |
do {
*$self
}->{'_SSL_read_closed'} || 0 |
|
1442
|
2 |
6168 |
do {
*$self
}->{'_SSL_read_closed'} || 0 |
|
1459
|
1 |
93 |
do {
*$self
}->{'_SSL_read_closed'} || 0 |
|
1483
|
2 |
9615 |
$offset ||= 0 |
|
1504
|
2 |
0 |
$! ||= 32 |
|
1518
|
0 |
0 |
$! ||= 32 |
|
1529
|
0 |
64 |
do {
*$self
}->{'_SSL_write_closed'} || 0 |
|
1552
|
5 |
9554 |
do {
*$self
}->{'_SSL_write_closed'} || 0 |
|
1573
|
0 |
61 |
$, || '' |
|
|
0 |
61 |
$\ || '' |
|
1703
|
278 |
0 |
shift() || (return _invalid_object()) |
|
1728
|
335 |
0 |
shift() || (return _invalid_object()) |
|
1756
|
129 |
0 |
do {
*$self
}->{'_SSL_opened'} || 0 |
|
1781
|
0 |
0 |
$! ||= 32 |
|
1801
|
0 |
0 |
$! ||= 32 |
|
1849
|
350 |
304 |
$keys ||= \%all_my_keys |
|
1923
|
1 |
0 |
do {
*$self
}->{'_SSL_object'} || (return) |
|
1988
|
1 |
0 |
$ISA[0]->new_from_fd($fd, '+<') || (return $class->error('Could not create socket from file descriptor.')) |
|
1999
|
1 |
0 |
(shift())->_get_ssl_object || (return) |
|
2007
|
0 |
0 |
$self->_get_ssl_object || (return) |
|
2067
|
6 |
0 |
$self->_get_ssl_object || (return) |
|
2068
|
6 |
0 |
&Net::SSLeay::get_certificate($ssl) || (return) |
|
2174
|
161 |
48 |
shift() || 'default' |
|
2221
|
278 |
10 |
$wtyp ||= "" |
|
2307
|
7 |
0 |
$algo || 'sha256' |
|
|
14 |
0 |
$algo || 'sha256' |
|
2314
|
19 |
2 |
$algo ||= "sha256" |
|
2320
|
11 |
0 |
(shift())->_get_ssl_object || (return) |
|
2325
|
34 |
0 |
(shift())->_get_ssl_object || (return) |
|
2339
|
0 |
0 |
(shift())->_get_ssl_object || (return) |
|
2344
|
3 |
0 |
(shift())->_get_ssl_object || (return) |
|
2352
|
0 |
0 |
$self->_get_ssl_object || (return) |
|
2368
|
0 |
0 |
$SSL_ERROR || '' |
|
2395
|
0 |
1 |
Net::SSLeay::print_errs('SSL error: ') || '' |
|
2562
|
2 |
0 |
$self->_get_ssl_object || (return) |
|
2569
|
2 |
0 |
$self->_get_ssl_object || (return) |
|
2702
|
0 |
34 |
undef $arg_hash->{'SSL_ca_path'} ||= undef |
|
2704
|
0 |
0 |
$arg_hash->{'SSL_ca_file'} ||= undef |
|
2705
|
0 |
69 |
$arg_hash->{'SSL_ca_path'} ||= undef |
|
2730
|
106 |
181 |
$arg_hash->{'SSL_verify_mode'} || 0 |
|
2733
|
28 |
184 |
$arg_hash->{$_} || (next) |
|
2984
|
83 |
0 |
$file || '' |
|
|
0 |
83 |
$dir || '' |
|
2994
|
183 |
0 |
$ca{'SSL_ca_file'} || '' |
|
|
161 |
22 |
$dir || '' |
|
3138
|
0 |
0 |
&Net::SSLeay::BIO_new_file($f, 'r') || (return 'IO::Socket::SSL'->error("Failed to open DH file $f")) |
|
3189
|
0 |
0 |
&Net::SSLeay::OBJ_txt2nid($curve) || (return 'IO::Socket::SSL'->error("cannot find NID for curve name '${curve}'")) |
|
3220
|
1 |
12 |
$pubkey || '' |
|
3372
|
0 |
0 |
$cl->{$_} || $cl->{''} || $DEFAULT_SSL_ARGS{'SSL_cipher_list'} || (next) |
|
3382
|
0 |
0 |
$cl->{$_} || $cl->{''} || $DEFAULT_SSL_ARGS{'SSL_cipher_list'} || (next) |
|
3550
|
0 |
0 |
~~@del || 'none' |
|
3731
|
0 |
0 |
$size || 100 |
|
3805
|
0 |
0 |
$hard_error ||= "" |
|
4143
|
0 |
0 |
eval {
do {
&Net::SSLeay::alert_desc_string_long($msg_type)
}
} || 'Unknown alert' |
| line |
l |
!l&&r |
!l&&!r |
condition |
|
439
|
0 |
267 |
0 |
UNIVERSAL::can('Net::SSLeay', $name) || sub {
$value;
}
|
|
505
|
0 |
54 |
0 |
$openssldir ||= &Net::SSLeay::SSLeay_version(5) =~ /^OPENSSLDIR: "(.+)"$/ ? $1 : (&Net::SSLeay::SSLeay_version(4) =~ /^OPENSSLDIR: "(.+)"$/ ? $1 : "cannot-determine-openssldir-from-ssleay-version") |
|
512
|
0 |
54 |
0 |
$ENV{'SSL_CERT_DIR'} || ($^O =~ /vms/i ? 'SSLCERTS:' : "$openssldir/certs") |
|
524
|
0 |
54 |
0 |
$ENV{'SSL_CERT_FILE'} || ($^O =~ /vms/i ? 'SSLCERTS:cert.pem' : "$openssldir/cert.pem") |
|
558
|
0 |
0 |
0 |
UNIVERSAL::isa($class, "IO::Socket::INET6") or UNIVERSAL::isa($class, "IO::Socket::IP") |
|
652
|
72 |
0 |
68 |
$arg_hash->{'Domain'} || $arg_hash->{'Family'} |
|
|
0 |
72 |
68 |
$arg_hash->{$family_key} ||= $arg_hash->{'Domain'} || $arg_hash->{'Family'} |
|
762
|
6 |
6 |
0 |
$arg_hash->{'SSL_session_key'} ||= do {
my $host = $arg_hash->{'PeerAddr'} || $arg_hash->{'PeerHost'} || $self->_update_peer;
my $port = $arg_hash->{'PeerPort'} || $arg_hash->{'PeerService'};
$port ? "${host}:$port" : $host
} |
|
764
|
5 |
1 |
0 |
$arg_hash->{'PeerAddr'} || $arg_hash->{'PeerHost'} || $self->_update_peer |
|
765
|
1 |
5 |
0 |
$arg_hash->{'PeerPort'} || $arg_hash->{'PeerService'} |
|
781
|
0 |
0 |
197 |
$DEBUG >= 2 or do {
*$self
}->{'_SSL_msg_callback'} |
|
785
|
2 |
83 |
95 |
$arg_hash->{'PeerAddr'} || $arg_hash->{'PeerHost'} |
|
793
|
85 |
0 |
0 |
not $host =~ /[a-z_]/i or $host =~ /:/ |
|
810
|
2 |
98 |
97 |
$arg_hash->{'PeerAddr'} or $arg_hash->{'PeerHost'} |
|
814
|
42 |
8 |
64 |
$arg_hash->{'SSL_verifycn_name'} || $arg_hash->{'SSL_hostname'} |
|
816
|
23 |
41 |
0 |
$arg_hash->{'PeerAddr'} || $arg_hash->{'PeerHost'} |
|
849
|
197 |
2 |
0 |
$ssl ||= do {
*$self
}->{'_SSL_object'} |
|
945
|
160 |
2 |
0 |
$ctx ||= do {
*$self
}->{'_SSL_ctx'} |
|
1041
|
0 |
0 |
67 |
$biosock || $args->{'SSL_usebio'} |
|
1080
|
0 |
0 |
134 |
$DEBUG >= 2 or do {
*$self
}->{'_SSL_msg_callback'} |
|
1083
|
134 |
3 |
0 |
$ssl ||= do {
*$socket
}->{'_SSL_object'} |
|
1199
|
0 |
21 |
61 |
$wbuf ne "" or &Net::SSLeay::BIO_pending($wbio) > 0 |
|
1202
|
0 |
0 |
21 |
not defined $buf or $buf eq "" |
|
1214
|
0 |
0 |
0 |
$!{'EAGAIN'} or $!{'EWOULDBLOCK'} |
|
1250
|
0 |
0 |
0 |
$!{'EAGAIN'} or $!{'EWOULDBLOCK'} |
|
1303
|
0 |
0 |
0 |
$DEBUG >= 2 || do {
*$self
}->{'_SSL_msg_callback'} |
|
1342
|
8 |
0 |
0 |
$err == $Net_SSLeay_ERROR_SSL || $err == $Net_SSLeay_ERROR_SYSCALL |
|
1361
|
6221 |
8 |
14 |
$length or $justpeek |
|
1397
|
0 |
0 |
2 |
do {
*$self
}->{'_SSL_bio_socket'} || (do {
*$self
}->{'_SSL_rawfd'} ||= do {
open my $fh, '+<&=', $self;
$fh
}) |
|
1412
|
1 |
2 |
0 |
$biosock || $self |
|
1469
|
0 |
5 |
0 |
$fd ||= $self |
|
1482
|
9553 |
64 |
0 |
$length ||= $buf_len |
|
1591
|
2 |
5 |
85 |
not defined $/ or wantarray |
|
1599
|
0 |
0 |
0 |
$! == 11 or $! == 11 |
|
1629
|
0 |
0 |
0 |
$! == 11 or $! == 11 |
|
1650
|
18 |
8 |
62 |
not defined $poke or $poke eq "" |
|
1694
|
58 |
1 |
0 |
$delim1 eq '' || $eod < length $buf |
|
1715
|
2 |
65 |
0 |
$biosock || $self |
|
1749
|
17 |
49 |
14 |
$status & 2 || $stop_args->{'SSL_fast_shutdown'} |
|
1820
|
6 |
253 |
0 |
do {
*$self
}->{'_SSL_bio_socket'} || $self |
|
1833
|
0 |
31 |
17 |
$downgrade or not defined $downgrade |
|
1904
|
242 |
0 |
0 |
do {
*$self
}->{'_SSL_object'} || 'IO::Socket::SSL'->_internal_error('Undefined SSL object', 9) |
|
1940
|
6 |
157 |
1 |
$usebio or defined $original_fileno |
|
1960
|
159 |
0 |
4 |
not defined $start_handshake or $start_handshake |
|
2052
|
42 |
35 |
2 |
do {
*$self
}->{'_SSL_certificate'} ||= &Net::SSLeay::get_peer_certificate($ssl) |
|
2178
|
209 |
0 |
0 |
$scheme{$scheme} || croak("scheme $scheme not defined") |
|
2203
|
0 |
3 |
52 |
4 != @ip or 4 != grep({$_ < 256 if defined $_;} @ip) |
|
2269
|
16 |
87 |
14 |
$scheme->{'check_cn'} eq "always" or $scheme->{'check_cn'} eq "when_only" and not $alt_dnsNames |
|
2298
|
0 |
8 |
0 |
do {
*$self
}->{'_SSL_servername'} ||= do {
return unless my $ssl = $self->_get_ssl_object;
&Net::SSLeay::get_servername($ssl)
} |
|
2306
|
2 |
19 |
0 |
$cert ||= $self->peer_certificate |
|
2359
|
0 |
0 |
0 |
$ctx->{'ocsp_cache'} ||= "IO::Socket::SSL::OCSP_Cache"->new |
|
2376
|
34 |
0 |
16 |
do {
*$self
}->{'_SSL_ioclass_upgraded'} or do {
*$self
}->{'_SSL_arguments'}{'SSL_keepSocketOnError'} |
|
2416
|
66 |
5 |
30 |
not $oe or $oe->[1] <= $severity |
|
2475
|
211 |
0 |
0 |
not $use_threads or delete $CREATED_IN_THIS_THREAD{$ssl} |
|
2691
|
100 |
2 |
185 |
$is_server || defined $arg_hash->{'SSL_use_cert'} |
|
2702
|
0 |
0 |
34 |
$arg_hash->{'SSL_ca_file'} ||= (undef $arg_hash->{'SSL_ca_path'} ||= undef) |
|
2713
|
3264 |
1779 |
0 |
defined $arg_hash->{$_} or delete $arg_hash->{$_} |
|
2744
|
61 |
42 |
0 |
!$vcn_scheme || $vcn_scheme ne 'none' |
|
2759
|
90 |
0 |
0 |
$verify_name || ref $vcn_scheme && $vcn_scheme->{'callback'} && 'unknown' |
|
2799
|
741 |
525 |
0 |
$2 || $3 |
|
2882
|
0 |
9 |
105 |
$arg_hash->{'SSL_session_id_context'} || $arg_hash->{'SSL_verify_mode'} & 1 && "$ctx" |
|
2935
|
0 |
0 |
0 |
$psk->{$identity} || $psk->{''} || 'IO::Socket::SSL'->_internal_error("no PSK for given identity '${identity}' and no default") |
|
2968
|
34 |
83 |
183 |
$arg_hash->{'SSL_ca'} or defined $arg_hash->{'SSL_ca_file'} |
|
|
117 |
0 |
183 |
$arg_hash->{'SSL_ca'} or defined $arg_hash->{'SSL_ca_file'} or defined $arg_hash->{'SSL_ca_path'} |
|
2984
|
83 |
0 |
34 |
$file || $dir |
|
3112
|
181 |
2 |
119 |
not $havecert or $havekey |
|
|
90 |
1 |
0 |
$arg_hash->{'SSL_key_file'} || ($havecert eq 'PEM' ? $arg_hash->{'SSL_cert_file'} : undef) |
|
3213
|
13 |
0 |
0 |
$algo ||= length $digest == 32 ? "md5" : (length $digest == 40 ? "sha1" : (length $digest == 64 ? "sha256" : (return "IO::Socket::SSL"->_internal_error("cannot detect hash algorithm from fingerprint '${_}'", 9)))) |
|
3233
|
1 |
14 |
0 |
$fp{join $;, $_->[0], $_->[1]} ||= $_->[1] ? &Net::SSLeay::X509_pubkey_digest($cert, scalar &$algo2digest($_->[0])) : &Net::SSLeay::X509_digest($cert, scalar &$algo2digest($_->[0])) |
|
3388
|
286 |
0 |
0 |
$ctx{''} || (values %ctx)[0] |
|
3389
|
6 |
0 |
280 |
keys %ctx > 1 or not exists $ctx{''} |
|
3397
|
13 |
6 |
0 |
$ctx{lc $host} || $ctx{''} |
|
3434
|
15 |
0 |
0 |
$SSL_OBJECT{$ssl} || do {
warn "callback session new: no known SSL object for $ssl";
return
} |
|
3468
|
284 |
0 |
0 |
not $use_threads or delete $CTX_CREATED_IN_THIS_THREAD{$ctx} |
|
3831
|
0 |
0 |
0 |
not $todo or $self->{'error'} |
|
4113
|
0 |
0 |
0 |
$tc_ver2s{$ssl_ver} || "(version=$ssl_ver)" |
|
4132
|
0 |
0 |
0 |
$tc_type2s{$content_type} || "TLS Unknown (type=$content_type)" |
|
4146
|
0 |
0 |
0 |
$tc_msgtype2s{join $;, $ssl_ver, $msg_type} || "Unknown (ssl_ver=$ssl_ver, msg=$msg_type)" |