use SOAP::Lite; my $proxy="https://some/address"; my $client = SOAP::Lite->proxy( $proxy ); ... my $response; eval { $response = $client->call( $method => @params ) }; #### DEBUG: .../IO/Socket/SSL.pm:1596: new ctx 73492512 DEBUG: .../IO/Socket/SSL.pm:338: socket not yet connected DEBUG: .../IO/Socket/SSL.pm:340: socket connected DEBUG: .../IO/Socket/SSL.pm:358: ssl handshake not started DEBUG: .../IO/Socket/SSL.pm:406: set socket to non-blocking to enforce timeout=30 DEBUG: .../IO/Socket/SSL.pm:419: Net::SSLeay::connect -> -1 DEBUG: .../IO/Socket/SSL.pm:429: ssl handshake in progress DEBUG: .../IO/Socket/SSL.pm:439: waiting for fd to become ready: SSL wants a read first DEBUG: .../IO/Socket/SSL.pm:459: socket ready, retrying connect DEBUG: .../IO/Socket/SSL.pm:419: Net::SSLeay::connect -> -1 DEBUG: .../IO/Socket/SSL.pm:429: ssl handshake in progress DEBUG: .../IO/Socket/SSL.pm:439: waiting for fd to become ready: SSL wants a read first DEBUG: .../IO/Socket/SSL.pm:459: socket ready, retrying connect DEBUG: .../IO/Socket/SSL.pm:419: Net::SSLeay::connect -> 1 DEBUG: .../IO/Socket/SSL.pm:474: ssl handshake done DEBUG: .../IO/Socket/SSL.pm:1633: free ctx 73492512 open=73492512 DEBUG: .../IO/Socket/SSL.pm:1641: OK free ctx 73492512 #### $client->transport->ssl_opts( SSL_session_cache_size => 0, )