jwright has asked for the wisdom of the Perl Monks concerning the following question:

I am trying to use Net::SSLeay::Handle to use print to request a web page, and print the output. Normally I do this with IO::Socket() like this:
#!/usr/bin/perl use IO::Socket; $host = "www.citizensbankonline.com"; $port = 443; $socket = IO::Socket::INET->new(PeerAddr => $host, PeerPort => $port, Proto => "tcp", Type => SOCK_STREAM, Timeout => 5, Reuse => 1) or die "Couldn't connect to $remote_host:$remote_port : $@.\n"; print $socket "GET / HTTP/1.0\n\n"; print while(<$socket>); close $socket;
Taking right from the example for the Net::SSLeay::Handle module, I tried this:
#!/usr/bin/perl use IO::Socket; use Net::SSLeay::Handle; $host = "www.citizensbankonline.com"; $port = 443; tie(*SSL, "Net::SSLeay::Handle", $host, $port); print SSL "GET / HTTP/1.0\n\n"; shutdown(\*SSL,1); print while(<SSL>); close SSL;
But I don't get anything from the print while(<SSL>) statement. Running tcpdump, I see a connection to the https server, and an ACK from the server when I send the GET request, but no output. Any tips? Thanks. -Josh