| Server IP : 112.74.42.100 / Your IP : 216.73.216.142 Web Server : nginx/1.20.2 System : Linux iZwz96lx4pjqiy84w4hni7Z 5.10.134-17.3.al8.x86_64 #1 SMP Thu Oct 31 14:29:57 CST 2024 x86_64 User : www ( 1000) PHP Version : 8.0.26 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/doc/perl-Net-SSLeay/examples/ |
Upload File : |
#!/usr/bin/perl
# ssl-inetd-serv.pl - SSL echo server run from inetd
#
# Copyright (c) 1996,1998 Sampo Kellomaki <sampo@iki.fi>. All Rights Reserved.
# Date: 27.6.1996, 19.6.1998
#
# /etc/inetd.conf:
# ssltst stream tcp nowait root /usr/sampo/ssl-inetd-serv.pl ssl-inetd
#
# /etc/services:
# ssltst 1234/tcp
#
use Net::SSLeay qw(die_now die_if_ssl_error);
Net::SSLeay::load_error_strings();
Net::SSLeay::SSLeay_add_ssl_algorithms();
chdir '/usr/sampo' or die "chdir: $!";
$| = 1; # STDOUT Piping hot!
open LOG, ">>log" or die "Can't open log file $!";
select LOG; $| = 1;
print "ssl-inetd-serv.pl started\n";
print "Creating SSL context...\n";
$ctx = Net::SSLeay::CTX_new or die_now("CTX_new ($ctx) ($!)");
print "Setting private key and certificate...\n";
Net::SSLeay::set_server_cert_and_key($ctx, 'cert.pem', 'key.pem') or die "key";
print "Creating SSL connection (context was '$ctx')...\n";
$ssl = Net::SSLeay::new($ctx) or die_now("new ($ssl) ($!)");
print "Setting fds (ctx $ctx, con $ssl)...\n";
Net::SSLeay::set_rfd($ssl, fileno(STDIN));
Net::SSLeay::set_wfd($ssl, fileno(STDOUT));
print "Entering SSL negotiation phase...\n";
Net::SSLeay::accept($ssl);
die_if_ssl_error("accept: $!");
print "Cipher '" . Net::SSLeay::get_cipher($ssl) . "'\n";
#
# Connected. Exchange some data.
#
$got = Net::SSLeay::ssl_read_all($ssl) or die "$$: ssl read failed";
print "Got `$got' (" . length ($got) . " chars)\n";
$got = uc $got;
Net::SSLeay::ssl_write_all($ssl, $got) or die "$$: ssl write failed";
print "Tearing down the connection.\n";
Net::SSLeay::free ($ssl);
Net::SSLeay::CTX_free ($ctx);
close LOG;
__END__