Strange behaviour of LWP::UserAgent

J

Josef Moellers

I'm trying to use LWP::UserAgent on Kubuntu 10.04.

When setting a proxy, I use this code to load my wget's proxy settings:

if (open(my $wgetrc, '<', $ENV{HOME} . '/.wgetrc')) {
while (<$wgetrc>) {
if (/(http|ftp|https)_proxy\s*=\s*(\S+)/) {
print STDERR "\$ua->proxy($1, $2)\n";
my $old = $ua->proxy($1, $2);
print "... was ", $old ? $old : 'None', "\n";
# push @protocols_allowed, $1;
next;
} elsif (/user-agent\s*=\s*(\S.*\S)\s*$/) {
print STDERR "\$ua->agent($1)\n";
$ua->agent($1);
}
}
close $wgetrc;
}

The prints all come out OK, showing the proxy URLs like
$ua->proxy(http, http://<proxy-address>:81/)
$ua->proxy(https, http://<proxy-address>:81/)
$ua->proxy(ftp, http://<proxy-address>:81/)

However, a $ua->get('http://www.google.de/') fails.

I've taken the liberty (being root ;-) to insert a few prints into the
sub proxy in /usr/share/perl5/LWP/UserAgent.pm and found that prior to
the Carp::croak("'$key' is not a valid URI scheme") unless $key =~
/^$URI::scheme_re\z/;
@_ contained the proxy-URL and after that command, @_[0] is empty!

When I comment that line, the $ua->get('http://www.google.de/') succeeds.

Does anybody have an idea what happens?

Josef
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,967
Messages
2,570,148
Members
46,694
Latest member
LetaCadwal

Latest Threads

Top