X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=perl%2Fs2.pl;fp=perl%2Fs2.pl;h=540ca7c8174a8c8c868218b3268a754c5f44de72;hp=0000000000000000000000000000000000000000;hb=58964a492275ca9a59a0cd9c8155cb2491b4b909;hpb=d02b48c63a58ea4367a0e905979f140b7d090f86 diff --git a/perl/s2.pl b/perl/s2.pl new file mode 100644 index 0000000000..540ca7c817 --- /dev/null +++ b/perl/s2.pl @@ -0,0 +1,49 @@ +#!/usr/local/bin/perl + +use ExtUtils::testlib; + +use SSLeay; + +$ssl_ctx=SSL::CTX->new("SSLv3"); + +$ssl_ctx->set_options("-info_callback" => + sub { + print STDERR $_[0]->state()."\n"; + } + ); + +$conn="localhost:4433"; +$conn=$ARGV[0] if $#ARGV >= 0; +$cbio=BIO->new("connect"); +$cbio->hostname($conn) || die $ssl->error(); + +$ssl=$ssl_ctx->new_ssl; +$sbio=BIO->new("ssl"); +$sbio->set_ssl($ssl); +$ssl->set_options("-connect_state"); + +$bio=BIO->new("buffer"); + +$sbio->push($cbio); +$bio->push($sbio); + +($bio->do_handshake() > 0) || die $bio->error(); + +(($ret=$bio->syswrite("GET / HTTP/1.0\r\n\r\n")) > 0) || die $ssl->error(); +$bio->flush() || die $bio->error(); + +$data=""; +while ($_=$bio->getline()) + { + if (/^Server:/) + { + print; + last; + } + } + +if ($bio->peek_error()) + { + print "There was an error:".$ssl->error(); + } +print "exit\n";