summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl.straw/lib/auto/Net
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/tlperl.straw/lib/auto/Net')
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SMTP/TLS/.packlist1
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/.packlist79
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/SSLeay.bs0
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/SSLeay.dllbin0 -> 233472 bytes
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/autosplit.ix78
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/debug_read.al22
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https.al18
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https2.al13
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https3.al13
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https4.al12
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx2.al18
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx3.al43
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx4.al19
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/dump_peer_certificate.al29
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http3.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http4.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https3.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https4.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx3.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx4.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http.al10
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http3.al10
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http4.al12
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https.al10
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https3.al10
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https4.al12
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx.al10
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx3.al10
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx4.al13
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/http_cat.al34
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/https_cat.al97
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/httpx_cat.al18
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/make_form.al25
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/make_headers.al21
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/new_x_ctx.al16
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/open_proxy_tcp_connection.al31
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/open_tcp_connection.al40
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http3.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http4.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https3.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https4.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx3.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx4.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http3.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http4.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https3.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https4.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx3.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx4.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/randomize.al31
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_cert_and_key.al23
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_proxy.al16
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_server_cert_and_key.al14
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_CRLF.al10
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_all.al28
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_until.al95
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_write_CRLF.al23
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_write_all.al38
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/sslcat.al99
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_CRLF.al11
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_all.al26
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_until.al34
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_write_CRLF.al23
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_write_all.al36
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcpcat.al37
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcpxcat.al17
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_X509_lookup.al15
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_nothing.al16
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_read.al9
-rwxr-xr-xMaster/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_write.al9
79 files changed, 1577 insertions, 0 deletions
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SMTP/TLS/.packlist b/Master/tlpkg/tlperl.straw/lib/auto/Net/SMTP/TLS/.packlist
new file mode 100755
index 00000000000..13dcecdb913
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SMTP/TLS/.packlist
@@ -0,0 +1 @@
+C:\strawberry\perl\vendor\lib\Net\SMTP\TLS.pm
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/.packlist b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/.packlist
new file mode 100755
index 00000000000..9e3886a79cf
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/.packlist
@@ -0,0 +1,79 @@
+C:\strawberry\perl\vendor\lib\Net\SSLeay.pm
+C:\strawberry\perl\vendor\lib\Net\SSLeay\Handle.pm
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\SSLeay.bs
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\SSLeay.dll
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\autosplit.ix
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\debug_read.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_https.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_https2.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_https3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_https4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_httpx2.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_httpx3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\do_httpx4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\dump_peer_certificate.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_http.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_http3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_http4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_https.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_https3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_https4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_httpx.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_httpx3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\get_httpx4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_http.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_http3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_http4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_https.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_https3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_https4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_httpx.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_httpx3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\head_httpx4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\http_cat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\https_cat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\httpx_cat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\make_form.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\make_headers.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\new_x_ctx.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\open_proxy_tcp_connection.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\open_tcp_connection.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_http.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_http3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_http4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_https.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_https3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_https4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_httpx.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_httpx3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\post_httpx4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_http.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_http3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_http4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_https.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_https3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_https4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_httpx.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_httpx3.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\put_httpx4.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\randomize.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\set_cert_and_key.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\set_proxy.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\set_server_cert_and_key.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\ssl_read_CRLF.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\ssl_read_all.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\ssl_read_until.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\ssl_write_CRLF.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\ssl_write_all.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\sslcat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcp_read_CRLF.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcp_read_all.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcp_read_until.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcp_write_CRLF.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcp_write_all.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcpcat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\tcpxcat.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\want_X509_lookup.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\want_nothing.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\want_read.al
+C:\strawberry\perl\vendor\lib\auto\Net\SSLeay\want_write.al
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/SSLeay.bs b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/SSLeay.bs
new file mode 100755
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/SSLeay.bs
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/SSLeay.dll b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/SSLeay.dll
new file mode 100755
index 00000000000..61c88241073
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/SSLeay.dll
Binary files differ
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/autosplit.ix b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/autosplit.ix
new file mode 100755
index 00000000000..48af6553b06
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/autosplit.ix
@@ -0,0 +1,78 @@
+# Index created by AutoSplit for blib\lib\Net\SSLeay.pm
+# (file acts as timestamp)
+package Net::SSLeay;
+sub want_nothing ;
+sub want_read ;
+sub want_write ;
+sub want_X509_lookup ;
+sub open_tcp_connection ;
+sub open_proxy_tcp_connection ;
+sub debug_read ;
+sub ssl_read_all ;
+sub tcp_read_all ;
+sub ssl_write_all ;
+sub tcp_write_all ;
+sub ssl_read_until ($;$$);
+sub tcp_read_until ;
+sub ssl_read_CRLF ($;$);
+sub tcp_read_CRLF ;
+sub ssl_write_CRLF ($$);
+sub tcp_write_CRLF ;
+sub dump_peer_certificate ($);
+sub randomize (;$$);
+sub new_x_ctx ;
+sub sslcat ;
+sub tcpcat ;
+sub tcpxcat ;
+sub https_cat ;
+sub http_cat ;
+sub httpx_cat ;
+sub set_cert_and_key ($$$);
+sub set_server_cert_and_key ($$$);
+sub set_proxy ($$;**);
+sub make_form ;
+sub make_headers ;
+sub do_httpx3 ;
+sub do_https3 ;
+sub do_httpx2 ;
+sub do_https2 ;
+sub do_httpx4 ;
+sub do_https4 ;
+sub get_https ;
+sub post_https ;
+sub put_https ;
+sub head_https ;
+sub get_https3 ;
+sub post_https3 ;
+sub put_https3 ;
+sub head_https3 ;
+sub get_https4 ;
+sub post_https4 ;
+sub put_https4 ;
+sub head_https4 ;
+sub get_http ;
+sub post_http ;
+sub put_http ;
+sub head_http ;
+sub get_http3 ;
+sub post_http3 ;
+sub put_http3 ;
+sub head_http3 ;
+sub get_http4 ;
+sub post_http4 ;
+sub put_http4 ;
+sub head_http4 ;
+sub get_httpx ;
+sub post_httpx ;
+sub put_httpx ;
+sub head_httpx ;
+sub get_httpx3 ;
+sub post_httpx3 ;
+sub put_httpx3 ;
+sub head_httpx3 ;
+sub get_httpx4 ;
+sub post_httpx4 ;
+sub put_httpx4 ;
+sub head_httpx4 ;
+sub do_https ;
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/debug_read.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/debug_read.al
new file mode 100755
index 00000000000..b9a2a73fa9f
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/debug_read.al
@@ -0,0 +1,22 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1856 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\debug_read.al)"
+###
+### read and write helpers that block
+###
+
+sub debug_read {
+ my ($replyr, $gotr) = @_;
+ my $vm = $trace>2 && $linux_debug ?
+ (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
+ warn " got " . blength($$gotr) . ':'
+ . blength($$replyr) . " bytes (VM=$vm).\n" if $trace == 3;
+ warn " got `$$gotr' (" . blength($$gotr) . ':'
+ . blength($$replyr) . " bytes, VM=$vm)\n" if $trace>3;
+}
+
+# end of Net::SSLeay::debug_read
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https.al
new file mode 100755
index 00000000000..91a207be120
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2601 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_https.al)"
+sub do_https {
+ my ($site, $port, $path, $method, $headers,
+ $content, $mime_type, $crt_path, $key_path) = @_;
+
+ do_https2($method, $site, $port, $path, $headers,
+ $content, $mime_type, $crt_path, $key_path);
+}
+
+1;
+__END__
+1;
+# end of Net::SSLeay::do_https
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https2.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https2.al
new file mode 100755
index 00000000000..192e31a2948
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https2.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2529 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_https2.al)"
+sub do_https2 { splice(@_,1,0) = 1; do_httpx2; } # Legacy undocumented
+
+### Returns headers as a hash where multiple instances of same header
+### are handled correctly.
+
+# end of Net::SSLeay::do_https2
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https3.al
new file mode 100755
index 00000000000..c7dc9690d5a
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https3.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2514 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_https3.al)"
+sub do_https3 { splice(@_,1,0) = 1; do_httpx3; } # Legacy undocumented
+
+### do_https2() is a legacy version in the sense that it is unable
+### to return all instances of duplicate headers.
+
+# end of Net::SSLeay::do_https3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https4.al
new file mode 100755
index 00000000000..55207adad59
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_https4.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2545 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_https4.al)"
+sub do_https4 { splice(@_,1,0) = 1; do_httpx4; } # Legacy undocumented
+
+# https
+
+# end of Net::SSLeay::do_https4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx2.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx2.al
new file mode 100755
index 00000000000..e94566d1db2
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx2.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2519 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_httpx2.al)"
+sub do_httpx2 {
+ my ($page, $response, $headers, $server_cert) = &do_httpx3;
+ X509_free($server_cert) if defined $server_cert;
+ return ($page, $response,
+ map( { ($h,$v)=/^(\S+)\:\s*(.*)$/; (uc($h),$v); }
+ split(/\s?\n/, $headers)
+ )
+ );
+}
+
+# end of Net::SSLeay::do_httpx2
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx3.al
new file mode 100755
index 00000000000..af352036cdc
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx3.al
@@ -0,0 +1,43 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2479 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_httpx3.al)"
+sub do_httpx3 {
+ my ($method, $usessl, $site, $port, $path, $headers,
+ $content, $mime_type, $crt_path, $key_path) = @_;
+ my ($response, $page, $h,$v);
+
+ if ($content) {
+ $mime_type = "application/x-www-form-urlencoded" unless $mime_type;
+ my $len = blength($content);
+ $content = "Content-Type: $mime_type$CRLF"
+ . "Content-Length: $len$CRLF$CRLF$content";
+ } else {
+ $content = "$CRLF$CRLF";
+ }
+ my $req = "$method $path HTTP/1.0$CRLF";
+ unless (defined $headers && $headers =~ /^Host:/m) {
+ $req .= "Host: $site";
+ unless (($port == 80 && !$usessl) || ($port == 443 && $usessl)) {
+ $req .= ":$port";
+ }
+ $req .= $CRLF;
+ }
+ $req .= (defined $headers ? $headers : '') . "Accept: */*$CRLF$content";
+
+ warn "do_httpx3($method,$usessl,$site:$port)" if $trace;
+ my ($http, $errs, $server_cert)
+ = httpx_cat($usessl, $site, $port, $req, $crt_path, $key_path);
+ return (undef, "HTTP/1.0 900 NET OR SSL ERROR$CRLF$CRLF$errs") if $errs;
+
+ $http = '' if !defined $http;
+ ($headers, $page) = split /\s?\n\s?\n/, $http, 2;
+ warn "headers >$headers< page >>$page<< http >>>$http<<<" if $trace>1;
+ ($response, $headers) = split /\s?\n/, $headers, 2;
+ return ($page, $response, $headers, $server_cert);
+}
+
+# end of Net::SSLeay::do_httpx3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx4.al
new file mode 100755
index 00000000000..c7666531579
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/do_httpx4.al
@@ -0,0 +1,19 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2534 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\do_httpx4.al)"
+sub do_httpx4 {
+ my ($page, $response, $headers, $server_cert) = &do_httpx3;
+ X509_free($server_cert) if defined $server_cert;
+ my %hr = ();
+ for my $hh (split /\s?\n/, $headers) {
+ my ($h,$v)=/^(\S+)\:\s*(.*)$/;
+ push @{$hr{uc($h)}}, $v;
+ }
+ return ($page, $response, \%hr);
+}
+
+# end of Net::SSLeay::do_httpx4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/dump_peer_certificate.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/dump_peer_certificate.al
new file mode 100755
index 00000000000..b37a1eff84b
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/dump_peer_certificate.al
@@ -0,0 +1,29 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2114 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\dump_peer_certificate.al)"
+### Quickly print out with whom we're talking
+
+sub dump_peer_certificate ($) {
+ my ($ssl) = @_;
+ my $cert = get_peer_certificate($ssl);
+ return if print_errs('get_peer_certificate');
+ print "no cert defined\n" if !defined($cert);
+ # Cipher=NONE with empty cert fix
+ if (!defined($cert) || ($cert == 0)) {
+ warn "cert = `$cert'\n" if $trace;
+ return "Subject Name: undefined\nIssuer Name: undefined\n";
+ } else {
+ my $x = 'Subject Name: '
+ . X509_NAME_oneline(X509_get_subject_name($cert)) . "\n"
+ . 'Issuer Name: '
+ . X509_NAME_oneline(X509_get_issuer_name($cert)) . "\n";
+ Net::SSLeay::X509_free($cert);
+ return $x;
+ }
+}
+
+# end of Net::SSLeay::dump_peer_certificate
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http.al
new file mode 100755
index 00000000000..91b6882b25a
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2566 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_http.al)"
+sub get_http { do_httpx2(GET => 0, @_) }
+# end of Net::SSLeay::get_http
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http3.al
new file mode 100755
index 00000000000..2877134a5c1
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2571 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_http3.al)"
+sub get_http3 { do_httpx3(GET => 0, @_) }
+# end of Net::SSLeay::get_http3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http4.al
new file mode 100755
index 00000000000..3b7aeb8bfb3
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_http4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2576 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_http4.al)"
+sub get_http4 { do_httpx4(GET => 0, @_) }
+# end of Net::SSLeay::get_http4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https.al
new file mode 100755
index 00000000000..d66a0c1f181
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2549 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_https.al)"
+sub get_https { do_httpx2(GET => 1, @_) }
+# end of Net::SSLeay::get_https
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https3.al
new file mode 100755
index 00000000000..013d6591618
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2554 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_https3.al)"
+sub get_https3 { do_httpx3(GET => 1, @_) }
+# end of Net::SSLeay::get_https3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https4.al
new file mode 100755
index 00000000000..36448f196ee
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_https4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2559 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_https4.al)"
+sub get_https4 { do_httpx4(GET => 1, @_) }
+# end of Net::SSLeay::get_https4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx.al
new file mode 100755
index 00000000000..07a74658149
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2583 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_httpx.al)"
+sub get_httpx { do_httpx2(GET => @_) }
+# end of Net::SSLeay::get_httpx
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx3.al
new file mode 100755
index 00000000000..10307f280fd
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2588 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_httpx3.al)"
+sub get_httpx3 { do_httpx3(GET => @_) }
+# end of Net::SSLeay::get_httpx3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx4.al
new file mode 100755
index 00000000000..0f400add2a8
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/get_httpx4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2593 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\get_httpx4.al)"
+sub get_httpx4 { do_httpx4(GET => @_) }
+# end of Net::SSLeay::get_httpx4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http.al
new file mode 100755
index 00000000000..8f8fc2ea672
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2569 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_http.al)"
+sub head_http { do_httpx2(HEAD => 0, @_) }
+
+# end of Net::SSLeay::head_http
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http3.al
new file mode 100755
index 00000000000..d1cd62e1831
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http3.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2574 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_http3.al)"
+sub head_http3 { do_httpx3(HEAD => 0, @_) }
+
+# end of Net::SSLeay::head_http3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http4.al
new file mode 100755
index 00000000000..9078198a378
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_http4.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2579 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_http4.al)"
+sub head_http4 { do_httpx4(HEAD => 0, @_) }
+
+# Either https or http
+
+# end of Net::SSLeay::head_http4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https.al
new file mode 100755
index 00000000000..98d2739ad6a
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2552 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_https.al)"
+sub head_https { do_httpx2(HEAD => 1, @_) }
+
+# end of Net::SSLeay::head_https
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https3.al
new file mode 100755
index 00000000000..f97eb8f9ff5
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https3.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2557 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_https3.al)"
+sub head_https3 { do_httpx3(HEAD => 1, @_) }
+
+# end of Net::SSLeay::head_https3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https4.al
new file mode 100755
index 00000000000..f5262f16c21
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_https4.al
@@ -0,0 +1,12 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2562 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_https4.al)"
+sub head_https4 { do_httpx4(HEAD => 1, @_) }
+
+# http
+
+# end of Net::SSLeay::head_https4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx.al
new file mode 100755
index 00000000000..7877cae2e60
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2586 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_httpx.al)"
+sub head_httpx { do_httpx2(HEAD => @_) }
+
+# end of Net::SSLeay::head_httpx
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx3.al
new file mode 100755
index 00000000000..c3759fb0f51
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx3.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2591 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_httpx3.al)"
+sub head_httpx3 { do_httpx3(HEAD => @_) }
+
+# end of Net::SSLeay::head_httpx3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx4.al
new file mode 100755
index 00000000000..9170fabaab4
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/head_httpx4.al
@@ -0,0 +1,13 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2596 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\head_httpx4.al)"
+sub head_httpx4 { do_httpx4(HEAD => @_) }
+
+### Legacy, don't use
+# ($page, $respone_or_err, %headers) = do_https(...);
+
+# end of Net::SSLeay::head_httpx4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/http_cat.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/http_cat.al
new file mode 100755
index 00000000000..fc6672e7280
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/http_cat.al
@@ -0,0 +1,34 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2384 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\http_cat.al)"
+sub http_cat { # address, port, message --> returns reply / (reply,errs,cert)
+ my ($dest_serv, $port, $out_message) = @_;
+ my ($got, $errs, $written);
+
+ ($got, $errs) = open_proxy_tcp_connection($dest_serv, $port);
+ return (wantarray ? (undef, $errs) : undef) unless $got;
+
+ ### Connected. Exchange some data (doing repeated tries if necessary).
+
+ warn "http_cat $$: sending " . blength($out_message) . " bytes...\n"
+ if $trace==3;
+ warn "http_cat $$: sending `$out_message' (" . blength($out_message)
+ . " bytes)...\n" if $trace>3;
+ ($written, $errs) = tcp_write_all($out_message);
+ goto cleanup unless $written;
+
+ warn "waiting for reply...\n" if $trace>2;
+ ($got, $errs) = tcp_read_all(200000);
+ warn "Got " . blength($got) . " bytes.\n" if $trace==3;
+ warn "Got `$got' (" . blength($got) . " bytes)\n" if $trace>3;
+
+cleanup:
+ close SSLCAT_S;
+ return wantarray ? ($got, $errs) : $got;
+}
+
+# end of Net::SSLeay::http_cat
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/https_cat.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/https_cat.al
new file mode 100755
index 00000000000..33bf8053702
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/https_cat.al
@@ -0,0 +1,97 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2295 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\https_cat.al)"
+###
+### Basic request - response primitive, this is different from sslcat
+### because this does not shutdown the connection.
+###
+
+sub https_cat { # address, port, message --> returns reply / (reply,errs,cert)
+ my ($dest_serv, $port, $out_message, $crt_path, $key_path) = @_;
+ my ($ctx, $ssl, $got, $errs, $written);
+
+ ($got, $errs) = open_proxy_tcp_connection($dest_serv, $port);
+ return (wantarray ? (undef, $errs) : undef) unless $got;
+
+ ### Do SSL negotiation stuff
+
+ warn "Creating SSL $ssl_version context...\n" if $trace>2;
+ load_error_strings(); # Some bloat, but I'm after ease of use
+ SSLeay_add_ssl_algorithms(); # and debuggability.
+ randomize();
+
+ $ctx = new_x_ctx();
+ goto cleanup2 if $errs = print_errs('CTX_new') or !$ctx;
+
+ CTX_set_options($ctx, &OP_ALL);
+ goto cleanup2 if $errs = print_errs('CTX_set_options');
+
+ warn "Cert `$crt_path' given without key" if $crt_path && !$key_path;
+ set_cert_and_key($ctx, $crt_path, $key_path) if $crt_path;
+
+ warn "Creating SSL connection (context was '$ctx')...\n" if $trace>2;
+ $ssl = new($ctx);
+ goto cleanup if $errs = print_errs('SSL_new') or !$ssl;
+
+ warn "Setting fd (ctx $ctx, con $ssl)...\n" if $trace>2;
+ set_fd($ssl, fileno(SSLCAT_S));
+ goto cleanup if $errs = print_errs('set_fd');
+
+ warn "Entering SSL negotiation phase...\n" if $trace>2;
+
+ if ($trace>2) {
+ my $i = 0;
+ my $p = '';
+ my $cipher_list = 'Cipher list: ';
+ $p=Net::SSLeay::get_cipher_list($ssl,$i);
+ $cipher_list .= $p if $p;
+ do {
+ $i++;
+ $cipher_list .= ', ' . $p if $p;
+ $p=Net::SSLeay::get_cipher_list($ssl,$i);
+ } while $p;
+ $cipher_list .= '\n';
+ warn $cipher_list;
+ }
+
+ $got = Net::SSLeay::connect($ssl);
+ warn "SSLeay connect failed" if $trace>2 && $got==0;
+ goto cleanup if $errs = print_errs('SSL_connect');
+
+ my $server_cert = get_peer_certificate($ssl);
+ print_errs('get_peer_certificate');
+ if ($trace>1) {
+ warn "Cipher `" . get_cipher($ssl) . "'\n";
+ print_errs('get_ciper');
+ warn dump_peer_certificate($ssl);
+ }
+
+ ### Connected. Exchange some data (doing repeated tries if necessary).
+
+ warn "https_cat $$: sending " . blength($out_message) . " bytes...\n"
+ if $trace==3;
+ warn "https_cat $$: sending `$out_message' (" . blength($out_message)
+ . " bytes)...\n" if $trace>3;
+ ($written, $errs) = ssl_write_all($ssl, $out_message);
+ goto cleanup unless $written;
+
+ warn "waiting for reply...\n" if $trace>2;
+ ($got, $errs) = ssl_read_all($ssl);
+ warn "Got " . blength($got) . " bytes.\n" if $trace==3;
+ warn "Got `$got' (" . blength($got) . " bytes)\n" if $trace>3;
+
+cleanup:
+ free ($ssl);
+ $errs .= print_errs('SSL_free');
+cleanup2:
+ CTX_free ($ctx);
+ $errs .= print_errs('CTX_free');
+ close SSLCAT_S;
+ return wantarray ? ($got, $errs, $server_cert) : $got;
+}
+
+# end of Net::SSLeay::https_cat
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/httpx_cat.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/httpx_cat.al
new file mode 100755
index 00000000000..aaa98aeb732
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/httpx_cat.al
@@ -0,0 +1,18 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2410 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\httpx_cat.al)"
+sub httpx_cat {
+ my ($usessl, $site, $port, $req, $crt_path, $key_path) = @_;
+ warn "httpx_cat: usessl=$usessl ($site:$port)" if $trace;
+ if ($usessl) {
+ return https_cat($site, $port, $req, $crt_path, $key_path);
+ } else {
+ return http_cat($site, $port, $req);
+ }
+}
+
+# end of Net::SSLeay::httpx_cat
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/make_form.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/make_form.al
new file mode 100755
index 00000000000..cdc20a2d49d
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/make_form.al
@@ -0,0 +1,25 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2449 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\make_form.al)"
+###
+### Easy https manipulation routines
+###
+
+sub make_form {
+ my (@fields) = @_;
+ my $form;
+ while (@fields) {
+ my ($name, $data) = (shift(@fields), shift(@fields));
+ $data =~ s/([^\w\-.\@\$ ])/sprintf("%%%2.2x",ord($1))/gse;
+ $data =~ tr[ ][+];
+ $form .= "$name=$data&";
+ }
+ chop $form;
+ return $form;
+}
+
+# end of Net::SSLeay::make_form
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/make_headers.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/make_headers.al
new file mode 100755
index 00000000000..171483bc4ae
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/make_headers.al
@@ -0,0 +1,21 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2466 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\make_headers.al)"
+sub make_headers {
+ my (@headers) = @_;
+ my $headers;
+ while (@headers) {
+ my $header = shift(@headers);
+ my $value = shift(@headers);
+ $header =~ s/:$//;
+ $value =~ s/\x0d?\x0a$//; # because we add it soon, see below
+ $headers .= "$header: $value$CRLF";
+ }
+ return $headers;
+}
+
+# end of Net::SSLeay::make_headers
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/new_x_ctx.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/new_x_ctx.al
new file mode 100755
index 00000000000..97fa45556ca
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/new_x_ctx.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2158 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\new_x_ctx.al)"
+sub new_x_ctx {
+ if ($ssl_version == 2) { $ctx = CTX_v2_new(); }
+ elsif ($ssl_version == 3) { $ctx = CTX_v3_new(); }
+ elsif ($ssl_version == 10) { $ctx = CTX_tlsv1_new(); }
+ else { $ctx = CTX_new(); }
+ return $ctx;
+}
+
+# end of Net::SSLeay::new_x_ctx
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/open_proxy_tcp_connection.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/open_proxy_tcp_connection.al
new file mode 100755
index 00000000000..19ce508c465
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/open_proxy_tcp_connection.al
@@ -0,0 +1,31 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1833 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\open_proxy_tcp_connection.al)"
+### Open connection via standard web proxy, if one was defined
+### using set_proxy().
+
+sub open_proxy_tcp_connection {
+ my ($dest_serv, $port) = @_;
+ return open_tcp_connection($dest_serv, $port) if !$proxyhost;
+
+ warn "Connect via proxy: $proxyhost:$proxyport" if $trace>2;
+ my ($ret, $errs) = open_tcp_connection($proxyhost, $proxyport);
+ return wantarray ? (0, $errs) : 0 if !$ret; # Connection fail
+
+ warn "Asking proxy to connect to $dest_serv:$port" if $trace>2;
+ #print SSLCAT_S "CONNECT $dest_serv:$port HTTP/1.0$proxyauth$CRLF$CRLF";
+ #my $line = <SSLCAT_S>; # *** bug? Mixing stdio with syscall read?
+ ($ret, $errs) =
+ tcp_write_all("CONNECT $dest_serv:$port HTTP/1.0$proxyauth$CRLF$CRLF");
+ return wantarray ? (0,$errs) : 0 if $errs;
+ ($line, $errs) = tcp_read_until($CRLF . $CRLF, 1024);
+ warn "Proxy response: $line" if $trace>2;
+ return wantarray ? (0,$errs) : 0 if $errs;
+ return wantarray ? (1,'') : 1; # Success
+}
+
+# end of Net::SSLeay::open_proxy_tcp_connection
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/open_tcp_connection.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/open_tcp_connection.al
new file mode 100755
index 00000000000..ddad138f36c
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/open_tcp_connection.al
@@ -0,0 +1,40 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1801 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\open_tcp_connection.al)"
+sub open_tcp_connection {
+ my ($dest_serv, $port) = @_;
+ my ($errs);
+
+ $port = getservbyname($port, 'tcp') unless $port =~ /^\d+$/;
+ my $dest_serv_ip = gethostbyname($dest_serv);
+ unless (defined($dest_serv_ip)) {
+ $errs = "$0 $$: open_tcp_connection: destination host not found:"
+ . " `$dest_serv' (port $port) ($!)\n";
+ warn $errs if $trace;
+ return wantarray ? (0, $errs) : 0;
+ }
+ my $sin = sockaddr_in($port, $dest_serv_ip);
+
+ warn "Opening connection to $dest_serv:$port (" .
+ inet_ntoa($dest_serv_ip) . ")" if $trace>2;
+
+ my $proto = getprotobyname('tcp');
+ if (socket (SSLCAT_S, &PF_INET(), &SOCK_STREAM(), $proto)) {
+ warn "next connect" if $trace>3;
+ if (CORE::connect (SSLCAT_S, $sin)) {
+ my $old_out = select (SSLCAT_S); $| = 1; select ($old_out);
+ warn "connected to $dest_serv, $port" if $trace>3;
+ return wantarray ? (1, undef) : 1; # Success
+ }
+ }
+ $errs = "$0 $$: open_tcp_connection: failed `$dest_serv', $port ($!)\n";
+ warn $errs if $trace;
+ close SSLCAT_S;
+ return wantarray ? (0, $errs) : 0; # Fail
+}
+
+# end of Net::SSLeay::open_tcp_connection
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http.al
new file mode 100755
index 00000000000..23dd45dcb95
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2567 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_http.al)"
+sub post_http { do_httpx2(POST => 0, @_) }
+# end of Net::SSLeay::post_http
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http3.al
new file mode 100755
index 00000000000..2b1d62628bb
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2572 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_http3.al)"
+sub post_http3 { do_httpx3(POST => 0, @_) }
+# end of Net::SSLeay::post_http3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http4.al
new file mode 100755
index 00000000000..3139b18e5ea
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_http4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2577 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_http4.al)"
+sub post_http4 { do_httpx4(POST => 0, @_) }
+# end of Net::SSLeay::post_http4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https.al
new file mode 100755
index 00000000000..e1506be2ced
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2550 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_https.al)"
+sub post_https { do_httpx2(POST => 1, @_) }
+# end of Net::SSLeay::post_https
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https3.al
new file mode 100755
index 00000000000..a81201b57d5
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2555 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_https3.al)"
+sub post_https3 { do_httpx3(POST => 1, @_) }
+# end of Net::SSLeay::post_https3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https4.al
new file mode 100755
index 00000000000..f3ad2d7dc72
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_https4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2560 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_https4.al)"
+sub post_https4 { do_httpx4(POST => 1, @_) }
+# end of Net::SSLeay::post_https4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx.al
new file mode 100755
index 00000000000..28a8e56ae9d
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2584 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_httpx.al)"
+sub post_httpx { do_httpx2(POST => @_) }
+# end of Net::SSLeay::post_httpx
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx3.al
new file mode 100755
index 00000000000..263f4feb0f9
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2589 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_httpx3.al)"
+sub post_httpx3 { do_httpx3(POST => @_) }
+# end of Net::SSLeay::post_httpx3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx4.al
new file mode 100755
index 00000000000..dd022e2d23d
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/post_httpx4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2594 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\post_httpx4.al)"
+sub post_httpx4 { do_httpx4(POST => @_) }
+# end of Net::SSLeay::post_httpx4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http.al
new file mode 100755
index 00000000000..ac7bbd648cf
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2568 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_http.al)"
+sub put_http { do_httpx2(PUT => 0, @_) }
+# end of Net::SSLeay::put_http
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http3.al
new file mode 100755
index 00000000000..42e1a6d35b6
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2573 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_http3.al)"
+sub put_http3 { do_httpx3(PUT => 0, @_) }
+# end of Net::SSLeay::put_http3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http4.al
new file mode 100755
index 00000000000..c27a2135152
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_http4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2578 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_http4.al)"
+sub put_http4 { do_httpx4(PUT => 0, @_) }
+# end of Net::SSLeay::put_http4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https.al
new file mode 100755
index 00000000000..c2bda1f4e8d
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2551 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_https.al)"
+sub put_https { do_httpx2(PUT => 1, @_) }
+# end of Net::SSLeay::put_https
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https3.al
new file mode 100755
index 00000000000..5471ed36331
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2556 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_https3.al)"
+sub put_https3 { do_httpx3(PUT => 1, @_) }
+# end of Net::SSLeay::put_https3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https4.al
new file mode 100755
index 00000000000..0e3ee8addfe
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_https4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2561 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_https4.al)"
+sub put_https4 { do_httpx4(PUT => 1, @_) }
+# end of Net::SSLeay::put_https4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx.al
new file mode 100755
index 00000000000..f203c211743
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2585 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_httpx.al)"
+sub put_httpx { do_httpx2(PUT => @_) }
+# end of Net::SSLeay::put_httpx
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx3.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx3.al
new file mode 100755
index 00000000000..1bb34e1cb9f
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx3.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2590 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_httpx3.al)"
+sub put_httpx3 { do_httpx3(PUT => @_) }
+# end of Net::SSLeay::put_httpx3
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx4.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx4.al
new file mode 100755
index 00000000000..d85cf654363
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/put_httpx4.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2595 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\put_httpx4.al)"
+sub put_httpx4 { do_httpx4(PUT => @_) }
+# end of Net::SSLeay::put_httpx4
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/randomize.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/randomize.al
new file mode 100755
index 00000000000..7aee1949055
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/randomize.al
@@ -0,0 +1,31 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2135 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\randomize.al)"
+### Arrange some randomness for eay PRNG
+
+sub randomize (;$$) {
+ my ($rn_seed_file, $seed, $egd_path) = @_;
+ my $rnsf = defined($rn_seed_file) && -r $rn_seed_file;
+
+ $egd_path = '';
+ $egd_path = $ENV{'EGD_PATH'} if $ENV{'EGD_PATH'};
+
+ RAND_seed(rand() + $$); # Stir it with time and pid
+
+ unless ($rnsf || -r $Net::SSLeay::random_device || $seed || -S $egd_path) {
+ warn "Random number generator not seeded!!!" if $trace;
+ }
+
+ RAND_load_file($rn_seed_file, -s _) if $rnsf;
+ RAND_seed($seed) if $seed;
+ RAND_seed($ENV{RND_SEED}) if $ENV{RND_SEED};
+ RAND_egd($egd_path) if -e $egd_path && -S _;
+ RAND_load_file($Net::SSLeay::random_device, $Net::SSLeay::how_random/8)
+ if -r $Net::SSLeay::random_device;
+}
+
+# end of Net::SSLeay::randomize
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_cert_and_key.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_cert_and_key.al
new file mode 100755
index 00000000000..c01d81b05ca
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_cert_and_key.al
@@ -0,0 +1,23 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2420 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\set_cert_and_key.al)"
+###
+### Easy set up of private key and certificate
+###
+
+sub set_cert_and_key ($$$) {
+ my ($ctx, $cert_path, $key_path) = @_;
+ my $errs = '';
+ # Following will ask password unless private key is not encrypted
+ CTX_use_RSAPrivateKey_file ($ctx, $key_path, &FILETYPE_PEM);
+ $errs .= print_errs("private key `$key_path' ($!)");
+ CTX_use_certificate_file ($ctx, $cert_path, &FILETYPE_PEM);
+ $errs .= print_errs("certificate `$cert_path' ($!)");
+ return wantarray ? (undef, $errs) : ($errs eq '');
+}
+
+# end of Net::SSLeay::set_cert_and_key
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_proxy.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_proxy.al
new file mode 100755
index 00000000000..3488e566e8f
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_proxy.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2441 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\set_proxy.al)"
+sub set_proxy ($$;**) {
+ ($proxyhost, $proxyport, $proxyuser, $proxypass) = @_;
+ require MIME::Base64 if $proxyuser;
+ $proxyauth = $CRLF . 'Proxy-authorization: Basic '
+ . MIME::Base64::encode("$proxyuser:$proxypass", '')
+ if $proxyuser;
+}
+
+# end of Net::SSLeay::set_proxy
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_server_cert_and_key.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_server_cert_and_key.al
new file mode 100755
index 00000000000..d0677fee0e4
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/set_server_cert_and_key.al
@@ -0,0 +1,14 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2435 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\set_server_cert_and_key.al)"
+### Old deprecated API
+
+sub set_server_cert_and_key ($$$) { &set_cert_and_key }
+
+### Set up to use web proxy
+
+# end of Net::SSLeay::set_server_cert_and_key
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_CRLF.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_CRLF.al
new file mode 100755
index 00000000000..a2e3dcffc47
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_CRLF.al
@@ -0,0 +1,10 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2079 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\ssl_read_CRLF.al)"
+# ssl_read_CRLF($ssl [, $max_length])
+sub ssl_read_CRLF ($;$) { ssl_read_until($_[0], $CRLF, $_[1]) }
+# end of Net::SSLeay::ssl_read_CRLF
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_all.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_all.al
new file mode 100755
index 00000000000..73154b37a6d
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_all.al
@@ -0,0 +1,28 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1870 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\ssl_read_all.al)"
+sub ssl_read_all {
+ my ($ssl,$how_much) = @_;
+ $how_much = 2000000000 unless $how_much;
+ my ($got, $errs);
+ my $reply = '';
+
+ while ($how_much > 0) {
+ $got = Net::SSLeay::read($ssl,
+ ($how_much > 32768) ? 32768 : $how_much
+ );
+ last if $errs = print_errs('SSL_read');
+ $how_much -= blength($got);
+ debug_read(\$reply, \$got) if $trace>1;
+ last if $got eq ''; # EOF
+ $reply .= $got;
+ }
+
+ return wantarray ? ($reply, $errs) : $reply;
+}
+
+# end of Net::SSLeay::ssl_read_all
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_until.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_until.al
new file mode 100755
index 00000000000..252b4400516
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_read_until.al
@@ -0,0 +1,95 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1966 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\ssl_read_until.al)"
+### from patch by Clinton Wong <clintdw@netcom.com>
+
+# ssl_read_until($ssl [, $delimit [, $max_length]])
+# if $delimit missing, use $/ if it exists, otherwise use \n
+# read until delimiter reached, up to $max_length chars if defined
+
+sub ssl_read_until ($;$$) {
+ my ($ssl,$delim, $max_length) = @_;
+ local $[;
+
+ # guess the delim string if missing
+ if ( ! defined $delim ) {
+ if ( defined $/ && length $/ ) { $delim = $/ }
+ else { $delim = "\n" } # Note: \n,$/ value depends on the platform
+ }
+ my $len_delim = length $delim;
+
+ my ($got);
+ my $reply = '';
+
+ # If we have OpenSSL 0.9.6a or later, we can use SSL_peek to
+ # speed things up.
+ # N.B. 0.9.6a has security problems, so the support for
+ # anything earlier than 0.9.6e will be dropped soon.
+ if (&Net::SSLeay::OPENSSL_VERSION_NUMBER >= 0x0090601f) {
+ $max_length = 2000000000 unless (defined $max_length);
+ my ($pending, $peek_length, $found, $done);
+ while (blength($reply) < $max_length and !$done) {
+ #Block if necessary until we get some data
+ $got = Net::SSLeay::peek($ssl,1);
+ last if print_errs('SSL_peek');
+
+ $pending = Net::SSLeay::pending($ssl) + blength($reply);
+ $peek_length = ($pending > $max_length) ? $max_length : $pending;
+ $peek_length -= blength($reply);
+ $got = Net::SSLeay::peek($ssl, $peek_length);
+ last if print_errs('SSL_peek');
+ $peek_length = blength($got);
+
+ #$found = index($got, $delim); # Old and broken
+
+ # the delimiter may be split across two gets, so we prepend
+ # a little from the last get onto this one before we check
+ # for a match
+ my $match;
+ if(blength($reply) >= blength($delim) - 1) {
+ #if what we've read so far is greater or equal
+ #in length of what we need to prepatch
+ $match = substr $reply, blength($reply) - blength($delim) + 1;
+ } else {
+ $match = $reply;
+ }
+
+ $match .= $got;
+ $found = index($match, $delim);
+
+ if ($found > -1) {
+ #$got = Net::SSLeay::read($ssl, $found+$len_delim);
+ #read up to the end of the delimiter
+ $got = Net::SSLeay::read($ssl,
+ $found + $len_delim
+ - ((blength $match) - (blength $got)));
+ $done = 1;
+ } else {
+ $got = Net::SSLeay::read($ssl, $peek_length);
+ $done = 1 if ($peek_length == $max_length - blength($reply));
+ }
+
+ last if print_errs('SSL_read');
+ debug_read(\$reply, \$got) if $trace>1;
+ last if $got eq '';
+ $reply .= $got;
+ }
+ } else {
+ while (!defined $max_length || length $reply < $max_length) {
+ $got = Net::SSLeay::read($ssl,1); # one by one
+ last if print_errs('SSL_read');
+ debug_read(\$reply, \$got) if $trace>1;
+ last if $got eq '';
+ $reply .= $got;
+ last if $len_delim
+ && substr($reply, blength($reply)-$len_delim) eq $delim;
+ }
+ }
+ return $reply;
+}
+
+# end of Net::SSLeay::ssl_read_until
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_write_CRLF.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_write_CRLF.al
new file mode 100755
index 00000000000..586198b4132
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_write_CRLF.al
@@ -0,0 +1,23 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2084 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\ssl_write_CRLF.al)"
+sub ssl_write_CRLF ($$) {
+ # the next line uses less memory but might use more network packets
+ return ssl_write_all($_[0], $_[1]) + ssl_write_all($_[0], $CRLF);
+
+ # the next few lines do the same thing at the expense of memory, with
+ # the chance that it will use less packets, since CRLF is in the original
+ # message and won't be sent separately.
+
+ #my $data_ref;
+ #if (ref $_[1]) { $data_ref = $_[1] }
+ # else { $data_ref = \$_[1] }
+ #my $message = $$data_ref . $CRLF;
+ #return ssl_write_all($_[0], \$message);
+}
+
+# end of Net::SSLeay::ssl_write_CRLF
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_write_all.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_write_all.al
new file mode 100755
index 00000000000..cf18ffd4eb1
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/ssl_write_all.al
@@ -0,0 +1,38 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1908 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\ssl_write_all.al)"
+sub ssl_write_all {
+ my $ssl = $_[0];
+ my ($data_ref, $errs);
+ if (ref $_[1]) {
+ $data_ref = $_[1];
+ } else {
+ $data_ref = \$_[1];
+ }
+ my ($wrote, $written, $to_write) = (0,0, blength($$data_ref));
+ my $vm = $trace>2 && $linux_debug ?
+ (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
+ warn " write_all VM at entry=$vm\n" if $trace>2;
+ while ($to_write) {
+ #sleep 1; # *** DEBUG
+ warn "partial `$$data_ref'\n" if $trace>3;
+ $wrote = write_partial($ssl, $written, $to_write, $$data_ref);
+ if (defined $wrote && ($wrote > 0)) { # write_partial can return -1
+ $written += $wrote;
+ $to_write -= $wrote;
+ }
+ $vm = $trace>2 && $linux_debug ?
+ (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
+ warn " written so far $wrote:$written bytes (VM=$vm)\n" if $trace>2;
+
+ $errs .= print_errs('SSL_write');
+ return (wantarray ? (undef, $errs) : undef) if $errs;
+ }
+ return wantarray ? ($written, $errs) : $written;
+}
+
+# end of Net::SSLeay::ssl_write_all
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/sslcat.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/sslcat.al
new file mode 100755
index 00000000000..9cb18a3a842
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/sslcat.al
@@ -0,0 +1,99 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2166 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\sslcat.al)"
+###
+### Basic request - response primitive (don't use for https)
+###
+
+sub sslcat { # address, port, message, $crt, $key --> reply / (reply,errs,cert)
+ my ($dest_serv, $port, $out_message, $crt_path, $key_path) = @_;
+ my ($ctx, $ssl, $got, $errs, $written);
+
+ ($got, $errs) = open_proxy_tcp_connection($dest_serv, $port);
+ return (wantarray ? (undef, $errs) : undef) unless $got;
+
+ ### Do SSL negotiation stuff
+
+ warn "Creating SSL $ssl_version context...\n" if $trace>2;
+ load_error_strings(); # Some bloat, but I'm after ease of use
+ SSLeay_add_ssl_algorithms(); # and debuggability.
+ randomize();
+
+ $ctx = new_x_ctx();
+ goto cleanup2 if $errs = print_errs('CTX_new') or !$ctx;
+
+ CTX_set_options($ctx, &OP_ALL);
+ goto cleanup2 if $errs = print_errs('CTX_set_options');
+
+ warn "Cert `$crt_path' given without key" if $crt_path && !$key_path;
+ set_cert_and_key($ctx, $crt_path, $key_path) if $crt_path;
+
+ warn "Creating SSL connection (context was '$ctx')...\n" if $trace>2;
+ $ssl = new($ctx);
+ goto cleanup if $errs = print_errs('SSL_new') or !$ssl;
+
+ warn "Setting fd (ctx $ctx, con $ssl)...\n" if $trace>2;
+ set_fd($ssl, fileno(SSLCAT_S));
+ goto cleanup if $errs = print_errs('set_fd');
+
+ warn "Entering SSL negotiation phase...\n" if $trace>2;
+
+ if ($trace>2) {
+ my $i = 0;
+ my $p = '';
+ my $cipher_list = 'Cipher list: ';
+ $p=Net::SSLeay::get_cipher_list($ssl,$i);
+ $cipher_list .= $p if $p;
+ do {
+ $i++;
+ $cipher_list .= ', ' . $p if $p;
+ $p=Net::SSLeay::get_cipher_list($ssl,$i);
+ } while $p;
+ $cipher_list .= '\n';
+ warn $cipher_list;
+ }
+
+ $got = Net::SSLeay::connect($ssl);
+ warn "SSLeay connect returned $got\n" if $trace>2;
+ goto cleanup if $errs = print_errs('SSL_connect');
+
+ my $server_cert = get_peer_certificate($ssl);
+ print_errs('get_peer_certificate');
+ if ($trace>1) {
+ warn "Cipher `" . get_cipher($ssl) . "'\n";
+ print_errs('get_ciper');
+ warn dump_peer_certificate($ssl);
+ }
+
+ ### Connected. Exchange some data (doing repeated tries if necessary).
+
+ warn "sslcat $$: sending " . blength($out_message) . " bytes...\n"
+ if $trace==3;
+ warn "sslcat $$: sending `$out_message' (" . blength($out_message)
+ . " bytes)...\n" if $trace>3;
+ ($written, $errs) = ssl_write_all($ssl, $out_message);
+ goto cleanup unless $written;
+
+ sleep $slowly if $slowly; # Closing too soon can abort broken servers
+ CORE::shutdown SSLCAT_S, 1; # Half close --> No more output, send EOF to server
+
+ warn "waiting for reply...\n" if $trace>2;
+ ($got, $errs) = ssl_read_all($ssl);
+ warn "Got " . blength($got) . " bytes.\n" if $trace==3;
+ warn "Got `$got' (" . blength($got) . " bytes)\n" if $trace>3;
+
+cleanup:
+ free ($ssl);
+ $errs .= print_errs('SSL_free');
+cleanup2:
+ CTX_free ($ctx);
+ $errs .= print_errs('CTX_free');
+ close SSLCAT_S;
+ return wantarray ? ($got, $errs, $server_cert) : $got;
+}
+
+# end of Net::SSLeay::sslcat
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_CRLF.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_CRLF.al
new file mode 100755
index 00000000000..1cbec66b70f
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_CRLF.al
@@ -0,0 +1,11 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2081 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcp_read_CRLF.al)"
+sub tcp_read_CRLF { tcp_read_until($CRLF, $_[0]) }
+
+# ssl_write_CRLF($ssl, $message) writes $message and appends CRLF
+# end of Net::SSLeay::tcp_read_CRLF
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_all.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_all.al
new file mode 100755
index 00000000000..4b583610227
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_all.al
@@ -0,0 +1,26 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1890 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcp_read_all.al)"
+sub tcp_read_all {
+ my ($how_much) = @_;
+ $how_much = 2000000000 unless $how_much;
+ my ($n, $got, $errs);
+ my $reply = '';
+
+ my $bsize = 0x10000;
+ while ($how_much > 0) {
+ $n = sysread(SSLCAT_S,$got, (($bsize < $how_much) ? $bsize : $how_much));
+ warn "Read error: $! ($n,$how_much)" unless defined $n;
+ last if !$n; # EOF
+ $how_much -= $n;
+ debug_read(\$reply, \$got) if $trace>1;
+ $reply .= $got;
+ }
+ return wantarray ? ($reply, $errs) : $reply;
+}
+
+# end of Net::SSLeay::tcp_read_all
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_until.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_until.al
new file mode 100755
index 00000000000..c6be56ed626
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_read_until.al
@@ -0,0 +1,34 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2053 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcp_read_until.al)"
+sub tcp_read_until {
+ my ($delim, $max_length) = @_;
+ local $[;
+
+ # guess the delim string if missing
+ if ( ! defined $delim ) {
+ if ( defined $/ && length $/ ) { $delim = $/ }
+ else { $delim = "\n" } # Note: \n,$/ value depends on the platform
+ }
+ my $len_delim = length $delim;
+
+ my ($n,$got);
+ my $reply = '';
+
+ while (!defined $max_length || length $reply < $max_length) {
+ $n = sysread(SSLCAT_S, $got, 1); # one by one
+ warn "tcp_read_until: $!" if !defined $n;
+ debug_read(\$reply, \$got) if $trace>1;
+ last if !$n; # EOF
+ $reply .= $got;
+ last if $len_delim
+ && substr($reply, blength($reply)-$len_delim) eq $delim;
+ }
+ return $reply;
+}
+
+# end of Net::SSLeay::tcp_read_until
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_write_CRLF.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_write_CRLF.al
new file mode 100755
index 00000000000..fc3f04af922
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_write_CRLF.al
@@ -0,0 +1,23 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2099 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcp_write_CRLF.al)"
+sub tcp_write_CRLF {
+ # the next line uses less memory but might use more network packets
+ return tcp_write_all($_[0]) + tcp_write_all($CRLF);
+
+ # the next few lines do the same thing at the expense of memory, with
+ # the chance that it will use less packets, since CRLF is in the original
+ # message and won't be sent separately.
+
+ #my $data_ref;
+ #if (ref $_[1]) { $data_ref = $_[1] }
+ # else { $data_ref = \$_[1] }
+ #my $message = $$data_ref . $CRLF;
+ #return tcp_write_all($_[0], \$message);
+}
+
+# end of Net::SSLeay::tcp_write_CRLF
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_write_all.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_write_all.al
new file mode 100755
index 00000000000..0c701728a86
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcp_write_all.al
@@ -0,0 +1,36 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1938 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcp_write_all.al)"
+sub tcp_write_all {
+ my ($data_ref, $errs);
+ if (ref $_[0]) {
+ $data_ref = $_[0];
+ } else {
+ $data_ref = \$_[0];
+ }
+ my ($wrote, $written, $to_write) = (0,0, blength($$data_ref));
+ my $vm = $trace>2 && $linux_debug ?
+ (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
+ warn " write_all VM at entry=$vm to_write=$to_write\n" if $trace>2;
+ while ($to_write) {
+ warn "partial `$$data_ref'\n" if $trace>3;
+ $wrote = syswrite(SSLCAT_S, $$data_ref, $to_write, $written);
+ if (defined $wrote && ($wrote > 0)) { # write_partial can return -1
+ $written += $wrote;
+ $to_write -= $wrote;
+ } elsif (!defined($wrote)) {
+ warn "tcp_write_all: $!";
+ return (wantarray ? (undef, "$!") : undef);
+ }
+ $vm = $trace>2 && $linux_debug ?
+ (split ' ', `cat /proc/$$/stat`)[22] : 'vm_unknown';
+ warn " written so far $wrote:$written bytes (VM=$vm)\n" if $trace>2;
+ }
+ return wantarray ? ($written, '') : $written;
+}
+
+# end of Net::SSLeay::tcp_write_all
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcpcat.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcpcat.al
new file mode 100755
index 00000000000..b36faeae7a2
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcpcat.al
@@ -0,0 +1,37 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2257 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcpcat.al)"
+sub tcpcat { # address, port, message, $crt, $key --> reply / (reply,errs,cert)
+ my ($dest_serv, $port, $out_message) = @_;
+ my ($got, $errs, $written);
+
+ ($got, $errs) = open_proxy_tcp_connection($dest_serv, $port);
+ return (wantarray ? (undef, $errs) : undef) unless $got;
+
+ ### Connected. Exchange some data (doing repeated tries if necessary).
+
+ warn "tcpcat $$: sending " . blength($out_message) . " bytes...\n"
+ if $trace==3;
+ warn "tcpcat $$: sending `$out_message' (" . blength($out_message)
+ . " bytes)...\n" if $trace>3;
+ ($written, $errs) = tcp_write_all($out_message);
+ goto cleanup unless $written;
+
+ sleep $slowly if $slowly; # Closing too soon can abort broken servers
+ CORE::shutdown SSLCAT_S, 1; # Half close --> No more output, send EOF to server
+
+ warn "waiting for reply...\n" if $trace>2;
+ ($got, $errs) = tcp_read_all($ssl);
+ warn "Got " . blength($got) . " bytes.\n" if $trace==3;
+ warn "Got `$got' (" . blength($got) . " bytes)\n" if $trace>3;
+
+cleanup:
+ close SSLCAT_S;
+ return wantarray ? ($got, $errs) : $got;
+}
+
+# end of Net::SSLeay::tcpcat
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcpxcat.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcpxcat.al
new file mode 100755
index 00000000000..4e79ce00087
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/tcpxcat.al
@@ -0,0 +1,17 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 2286 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\tcpxcat.al)"
+sub tcpxcat {
+ my ($usessl, $site, $port, $req, $crt_path, $key_path) = @_;
+ if ($usessl) {
+ return sslcat($site, $port, $req, $crt_path, $key_path);
+ } else {
+ return tcpcat($site, $port, $req);
+ }
+}
+
+# end of Net::SSLeay::tcpxcat
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_X509_lookup.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_X509_lookup.al
new file mode 100755
index 00000000000..e17c706f565
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_X509_lookup.al
@@ -0,0 +1,15 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1794 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\want_X509_lookup.al)"
+sub want_X509_lookup { want(shift) == 4 }
+
+###
+### Open TCP stream to given host and port, looking up the details
+### from system databases or DNS.
+###
+
+# end of Net::SSLeay::want_X509_lookup
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_nothing.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_nothing.al
new file mode 100755
index 00000000000..df3d1005d24
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_nothing.al
@@ -0,0 +1,16 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1784 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\want_nothing.al)"
+# Documentation. Use `perl-root/pod/pod2html SSLeay.pm` to output html
+
+
+# ';
+
+### Some methods that are macros in C
+
+sub want_nothing { want(shift) == 1 }
+# end of Net::SSLeay::want_nothing
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_read.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_read.al
new file mode 100755
index 00000000000..e3a41612772
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_read.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1792 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\want_read.al)"
+sub want_read { want(shift) == 2 }
+# end of Net::SSLeay::want_read
+1;
diff --git a/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_write.al b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_write.al
new file mode 100755
index 00000000000..941e1853bbe
--- /dev/null
+++ b/Master/tlpkg/tlperl.straw/lib/auto/Net/SSLeay/want_write.al
@@ -0,0 +1,9 @@
+# NOTE: Derived from blib\lib\Net\SSLeay.pm.
+# Changes made here will be lost when autosplit is run again.
+# See AutoSplit.pm.
+package Net::SSLeay;
+
+#line 1793 "blib\lib\Net\SSLeay.pm (autosplit into blib\lib\auto\Net\SSLeay\want_write.al)"
+sub want_write { want(shift) == 3 }
+# end of Net::SSLeay::want_write
+1;