Bug#728679: libnet-http-perl: version 6.06-1 breaks https communication through a proxy server.
kumon at aa.mbn.or.jp
kumon at aa.mbn.or.jp
Mon Nov 4 03:32:53 UTC 2013
Package: libnet-http-perl
Version: 6.06-1
Severity: important
-- System Information:
Debian Release: jessie/sid
APT prefers testing
APT policy: (500, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 3.2.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash
Versions of packages libnet-http-perl depends on:
ii perl 5.18.1-4
Versions of packages libnet-http-perl recommends:
ii libio-socket-ssl-perl 1.954-1
libnet-http-perl suggests no packages.
-- no debconf information
When I upgrade libnet-http-perl from version 6.03-2 to 6.06-1,
https communication takes long long time (more than tens seconds) to finish.
Before upgradeing, it takes only 1 to 2 seconds.
Strace of the perl-process shows it waits some select() until timeout.
Here is the test program to show the phenomenon.
It accesses https://www.google.com
Other sites such as:
https://www.twitter.com
show same.
Following facts are known:
* By using version 6.03-2, it runs without timeout.
* By removing $ua->conn_cacne() setting, it runs without timeout.
* By removing $ua->agent() setting, it runs without timeout.
--------------------------------------
#!/usr/bin/perl
use strict;
$ENV{HTTPS_DEBUG} = 1;
require LWP::UserAgent;
require LWP::ConnCache;
$ENV{PERL_NET_HTTPS_SSL_SOCKET_CLASS} = "Net::SSL";
$ENV{PERL_LWP_SSL_VERIFY_HOSTNAME} = 0;
##### Set apropriate proxy server
my $proxy = 'http://10.1.1.1:8080';
$ENV{HTTPS_PROXY} = $proxy;
$ENV{HTTPS_PROXY} = $proxy;
if (1) {
## Need only for version printing
require Net::HTTPS;
print "$Net::HTTPS::VERSION \n";
}
my $ua = create_ua();
my $response = $ua->get("https://www.google.com/");
exit(0);
#########################################
sub create_ua {
my $ua = LWP::UserAgent->new;
$ua->agent('Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.15) Gecko/20110303 Firefox/3.6.15 ( .NET CLR 3.5.30729; .NET4.0E)');
$ua->conn_cache(LWP::ConnCache->new());
$ua;
}
__END__
More information about the pkg-perl-maintainers
mailing list