From b741a38a939c6da44cbb1edcdd8bf43ca0690cc9 Mon Sep 17 00:00:00 2001 From: Dan Reading Date: Tue, 11 Mar 2014 12:11:57 -0600 Subject: [PATCH] fix bit-rot to match current perl 5.14.2 and current cpan respository. Need to pull in more modules for xml-rpc ssl support. --- testsuite/testswap/lib/TestBed/XMLRPC/Client.pm | 15 ++++++++++++++- testsuite/testswap/t/xmlrpc/emulab.t | 3 ++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/testsuite/testswap/lib/TestBed/XMLRPC/Client.pm b/testsuite/testswap/lib/TestBed/XMLRPC/Client.pm index c57d0f3b1..1b8f87145 100644 --- a/testsuite/testswap/lib/TestBed/XMLRPC/Client.pm +++ b/testsuite/testswap/lib/TestBed/XMLRPC/Client.pm @@ -25,6 +25,9 @@ package TestBed::XMLRPC::Client; use SemiModern::Perl; use Mouse; use RPC::XML::Client; +use Net::SSL; +use LWP::Protocol::https; +use IO::Socket::SSL qw( SSL_VERIFY_NONE ); use TBConfig; use Data::Dumper; use Carp; @@ -40,12 +43,22 @@ BEGIN { use TBConfig; $ENV{HTTPS_CERT_FILE} = glob($TBConfig::SSL_CLIENT_CERT); $ENV{HTTPS_KEY_FILE} = glob($TBConfig::SSL_CLIENT_KEY); + $ENV{HTTPS_DEBUG} = 0; } #constructs RPC::XML::Client with 10 minute socket timeout has 'client' => ( isa => 'RPC::XML::Client', is => 'rw', default => sub { my $HTTP_TIMEOUT = $TBConfig::XMLRPC_SERVER_TIMEOUT; - my $c = RPC::XML::Client->new($TBConfig::XMLRPC_SERVER, 'timeout' => ($HTTP_TIMEOUT)); + my $c = RPC::XML::Client->new($TBConfig::XMLRPC_SERVER, + useragent => [ + ssl_opts => { + verify_hostname => 0, + SSL_verify_mode => SSL_VERIFY_NONE, + }, + ], + error_handler => sub { die "Transport error: $_[0]" }, + 'timeout' => ($HTTP_TIMEOUT), + ); $c->{'__useragent'}->timeout($HTTP_TIMEOUT); $c; } ); diff --git a/testsuite/testswap/t/xmlrpc/emulab.t b/testsuite/testswap/t/xmlrpc/emulab.t index caab2ba87..6bbf5e0d5 100644 --- a/testsuite/testswap/t/xmlrpc/emulab.t +++ b/testsuite/testswap/t/xmlrpc/emulab.t @@ -36,5 +36,6 @@ ok($emuclient, 'Emulab new works'); isa_ok($emuclient, 'TestBed::XMLRPC::Client::Emulab'); my $time = timegm(0,0,0,1,0,2008); -my $resp = $emuclient->news('starting' => time2iso8601($time)); +my $utctime => time2iso8601($time); # chop off the Z +my $resp = $emuclient->news('starting' => chop($utctime)); #? chop off the trailing Z ok($resp, 'Valid Emulab::new response'); -- GitLab