Subject: | connecting with Socket6 installed |
Date: | Wed, 9 Oct 2013 16:35:32 +0100 |
To: | "bug-LWP-Protocol-connect [...] rt.cpan.org" <bug-LWP-Protocol-connect [...] rt.cpan.org> |
From: | "CRADOCK, Christopher" <christopher.cradock [...] oup.com> |
The LWP::Protocol::connect module trips Socket6 up during connection setup (even though the attempt will ultimately be via IPV4 addresses).
During the connection setup I get an Exception invoked:
Bad arg length for Socket6::unpack_sockaddr_in6, length is 16, should be 28 at /usr/lib64/perl5/Socket6.pm line 282.
This is invoked during the second call to 'LWP::Protocol::http::_get_sock_info' with the stack reading:
@ = Socket6::sockaddr_in6('^B^@^_M-^P^J^@M-^B]^@^@^@^@^@^@^@^@') called from file `/usr/share/perl5/IO/Socket/INET6.pm' line 406
$ = IO::Socket::INET6::peeraddr(ref(LWP::Protocol::https::connect::Socket)) called from file `/usr/share/perl5/IO/Socket/INET6.pm' line 419
$ = IO::Socket::INET6::peerhost(ref(LWP::Protocol::https::connect::Socket)) called from file `/usr/local/share/perl5/LWP/Protocol/http.pm' line 84
. = LWP::Protocol::http::_get_sock_info(ref(LWP::Protocol::https::connect), ref(HTTP::Response), ref(LWP::Protocol::https::connect::Socket)) called from file `/usr/share/perl5/LWP/Protocol/https.pm' line 31
. = LWP::Protocol::https::_get_sock_info(ref(LWP::Protocol::https::connect), ref(HTTP::Response), ref(LWP::Protocol::https::connect::Socket)) called from file `/usr/local/share/perl5/LWP/Protocol/http.pm' line 393
$ = LWP::Protocol::http::request(ref(LWP::Protocol::https::connect), ref(HTTP::Request), undef, undef, undef, 180) called from file `/usr/local/share/perl5/LWP/Protocol/connect.pm' line 33
$ = LWP::Protocol::connect::request(ref(LWP::Protocol::connect), ref(HTTP::Request), ref(URI::connect), undef, undef, 180) called from file `/usr/local/share/perl5/LWP/UserAgent.pm' line 192
. = eval {...} called from file `/usr/local/share/perl5/LWP/UserAgent.pm' line 191
$ = LWP::UserAgent::send_request(ref(SOAP::Transport::HTTP::Client), ref(HTTP::Request), undef, undef) called from file `/usr/local/share/perl5/LWP/UserAgent.pm' line 274
$ = LWP::UserAgent::simple_request(ref(SOAP::Transport::HTTP::Client), ref(HTTP::Request), undef, undef) called from file `/usr/local/share/perl5/LWP/UserAgent.pm' line 282
@ = LWP::UserAgent::request(ref(SOAP::Transport::HTTP::Client), ref(HTTP::Request)) called from file `/usr/local/share/perl5/SOAP/Transport/HTTP.pm' line 270
.
.
.
Just before the error occurs.
HTTP proxy connections are no problem via LWP.
This is running on Red Hat Enterprise Linux Server release 6.4 (Santiago)
Perl 5.10.1
Socket6.pm V0.23
LWP V6.05
LWP::Protocol::connect V6.0.6
For the time being simply removing Socket6.pm cures the problem.
Chris Cradock
Senior Systems Developer
Oxford University Press (UK) Disclaimer
This message is confidential. You should not copy it or disclose its contents to anyone. You may use and apply the information for the intended purpose only. OUP does not accept legal responsibility for the contents of this message. Any views or opinions presented are those of the author only and not of OUP. If this email has come to you in error, please delete it, along with any attachments. Please note that OUP may intercept incoming and outgoing email communications.