stumpr
Virtuoso
Virtuoso

The maintainers of IO::Socket::SSL added the additional check in a recent version (1.79 maybe?).

The problem I believe is that the LWP::UserAgent doesn't even expose the configuraiton options for environment variables.  To make it more complicated, the VMware VICommon.pm has two seperate locations where UserAgent is created (Vim::query_server_version & SoapClient::new).  Both would have to be changed to effectively fix the issue.

Just out of curiousity, what version of IO::Socket::SSL are you using?  Run the following to print out the version number.

perl -M'IO::Socket::SSL' -e 'print "$IO::Socket::SSL::VERSION\n"'

I haven't been able to try this since none of my environments are using one of the newest IO::Socket::SSL versions, but maybe try switching to Net::SSL as a work around?  Alternatively, perhaps drop down to an older version of IO::Socket::SSL.

Try adding this to the end of your script, let me know if it works.  This _should_ switch to Net::SSL.  You may have to install Net::SSL. 

BEGIN {

   $ENV{PERL_NET_HTTPS_SSL_SOCKET_CLASS} = "Net::SSL";

   $ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0;

}

Reuben Stump | http://www.virtuin.com | @ReubenStump
Reply
0 Kudos