[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@18.117.145.109: ~ $
# 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 1079 "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;
    initialize();

    $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;

Filemanager

Name Type Size Permission Actions
SSLeay.so File 423.98 KB 0755
autosplit.ix File 1.54 KB 0644
debug_read.al File 677 B 0644
do_https.al File 507 B 0644
do_https2.al File 446 B 0644
do_https3.al File 466 B 0644
do_https4.al File 357 B 0644
do_httpx2.al File 535 B 0644
do_httpx3.al File 1.52 KB 0644
do_httpx4.al File 544 B 0644
dump_peer_certificate.al File 958 B 0644
get_http.al File 316 B 0644
get_http3.al File 319 B 0644
get_http4.al File 319 B 0644
get_https.al File 319 B 0644
get_https3.al File 322 B 0644
get_https4.al File 322 B 0644
get_httpx.al File 316 B 0644
get_httpx3.al File 319 B 0644
get_httpx4.al File 319 B 0644
head_http.al File 319 B 0644
head_http3.al File 322 B 0644
head_http4.al File 346 B 0644
head_https.al File 322 B 0644
head_https3.al File 325 B 0644
head_https4.al File 333 B 0644
head_httpx.al File 319 B 0644
head_httpx3.al File 322 B 0644
head_httpx4.al File 399 B 0644
http_cat.al File 1.18 KB 0644
https_cat.al File 2.96 KB 0644
httpx_cat.al File 558 B 0644
initialize.al File 814 B 0644
make_form.al File 604 B 0644
make_headers.al File 575 B 0644
new_x_ctx.al File 1.2 KB 0644
open_proxy_tcp_connection.al File 1.25 KB 0644
open_tcp_connection.al File 1.4 KB 0644
post_http.al File 318 B 0644
post_http3.al File 321 B 0644
post_http4.al File 321 B 0644
post_https.al File 321 B 0644
post_https3.al File 324 B 0644
post_https4.al File 324 B 0644
post_httpx.al File 318 B 0644
post_httpx3.al File 321 B 0644
post_httpx4.al File 321 B 0644
put_http.al File 316 B 0644
put_http3.al File 319 B 0644
put_http4.al File 319 B 0644
put_https.al File 319 B 0644
put_https3.al File 322 B 0644
put_https4.al File 322 B 0644
put_httpx.al File 316 B 0644
put_httpx3.al File 319 B 0644
put_httpx4.al File 319 B 0644
randomize.al File 1.05 KB 0644
set_cert_and_key.al File 805 B 0644
set_proxy.al File 540 B 0644
set_server_cert_and_key.al File 413 B 0644
ssl_read_CRLF.al File 384 B 0644
ssl_read_all.al File 801 B 0644
ssl_read_until.al File 3.04 KB 0644
ssl_write_CRLF.al File 812 B 0644
ssl_write_all.al File 5.6 KB 0644
sslcat.al File 3.05 KB 0644
tcp_read_CRLF.al File 400 B 0644
tcp_read_all.al File 756 B 0644
tcp_read_until.al File 970 B 0644
tcp_write_CRLF.al File 793 B 0644
tcp_write_all.al File 1.2 KB 0644
tcpcat.al File 1.33 KB 0644
tcpxcat.al File 485 B 0644
want_X509_lookup.al File 441 B 0644
want_nothing.al File 357 B 0644
want_read.al File 309 B 0644
want_write.al File 312 B 0644