Skip Menu |

This queue is for tickets about the PlRPC CPAN distribution.

Report information
The Basics
Id: 7575
Status: resolved
Priority: 0/
Queue: PlRPC

People
Owner: Nobody in particular
Requestors: lorensen [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 0.2018
Fixed in: (no value)



Subject: Child died: Storable binary image v21.86 more recent than I am (v2.6)
When trying to install PlRPC-0.2018 the "crypt" test failes all subtests. In the messages log i get the message bellow: Sep 8 10:59:23 richter CalcServer[21476]: Child died: Storable binary image v21.86 more recent than I am (v2.6) at ../../lib/Storable.pm (autosplit into ../../lib/auto/Storable/thaw.al) line 363, at blib/lib/RPC/PlServer/Comm.pm line 179 I'm running on: SunOS richter 5.9 Generic_117171-05 sun4u sparc SUNW,Sun-Fire-V240 with perl, v5.8.5 built for sun4-solaris. Attached is the complete output from the failing test-script
t/crypt....Starting server: /pack/perl-5.8.5/bin/perl -Iblib/lib -Iblib/arch t/server --mode=single --debug --timeout 60 --configfile t/crypt.cfg Use of uninitialized value in concatenation (.) or string at t/lib.pl line 30. Use of uninitialized value in concatenation (.) or string at t/lib.pl line 31. Use of uninitialized value in concatenation (.) or string at t/lib.pl line 32. Use of uninitialized value in concatenation (.) or string at t/lib.pl line 30. Use of uninitialized value in concatenation (.) or string at t/lib.pl line 31. Use of uninitialized value in concatenation (.) or string at t/lib.pl line 32. 1..18 not ok 1 Failed to make second connection: Unexpected EOF from server at /.cpanplus/5.8.5/build/PlRPC-0.2018/blib/lib/RPC/PlClient.pm line 79. not ok 2 Failed to create calculator: Can't call method "ClientObject" on an undefined value at t/lib.pl line 28. Calculator is . Handle is . Client is . not ok 3 Expected 17, got undef, errstr Can't call method "add" on unblessed reference at t/lib.pl line 35. not ok 4 not ok 5 not ok 6 not ok 7 not ok 8 not ok 9 not ok 10 Failed to make second connection: Unexpected EOF from server at /.cpanplus/5.8.5/build/PlRPC-0.2018/blib/lib/RPC/PlClient.pm line 79. not ok 11 Failed to create calculator: Can't call method "ClientObject" on unblessed reference at t/lib.pl line 28. Calculator is . Handle is . Client is . not ok 12 Expected 17, got undef, errstr Can't call method "add" on unblessed reference at t/lib.pl line 35. not ok 13 not ok 14 not ok 15 not ok 16 not ok 17 not ok 18 FAILED tests 1-18 Failed 18/18 tests, 0.00% okay Failed 1/1 test scripts, 0.00% okay. 18/18 subtests failed, 0.00% okay. Failed Test Stat Wstat Total Fail Failed List of Failed ------------------------------------------------------------------------------- t/crypt.t 18 18 100.00% 1-18
From: rwjanes [...] primus.ca
[guest - Wed Sep 8 05:07:25 2004]: I had the exact same error, Linux, fedora 2, even with the v21.86 version stamp. This is Storable complaining about a pile of data it can't thaw because it doesn't recognize the contents. The reason it doesn't recognize the contents is because the contents have not been decrypted on the server side. Looks like the cipher moved around, that or the comm object moved. The quick fix is to move the cipher setup in the config file in crypt.t up one line. However, that fix doesn't really use different ciphers like the test is supposed to, ie it passes the test but doesn't fix the problem. The user cipher is never used. The comm object holds the effective cipher now, but the test code, and the server code only update the server object. Here's a patch for part of the t tests. This is where they try to connect with a user that has a special cipher, different from the host cipher. The first part of the chat takes place with the host cipher, but after the accepting welcome message is sent, the remainder of the dialogue is under the user cipher. This patch is at the point where the client side switches ciphers at the same time as the server switches ciphers. Again, the correct cipher object is in the comm object, not the client/server object. --- t/lib.pl.orig 1999-01-12 16:35:29.000000000 -0500 +++ t/lib.pl 2004-09-19 21:50:00.390036776 -0400 @@ -22,7 +22,7 @@ # Making a new connection Test($client = eval { RPC::PlClient->new(@_) }) or print "Failed to make second connection: $@\n"; - if ($key) { $client->{'cipher'} = $key } + if ($key) { $client->{'comm'}->{'cipher'} = $key } # Creating a calculator object my $calculator = eval { $client->ClientObject('Calculator', 'new') }; -----------------------snip!!! Here's a patch for the Server. Again, my only addition to the code is to make sure the correct cipher is updated. --- lib/RPC/PlServer.pm.orig 2004-07-19 03:52:23.000000000 -0400 +++ lib/RPC/PlServer.pm 2004-09-19 21:48:45.435431608 -0400 @@ -138,7 +138,7 @@ if ($client = $self->{'client'}) { if (my $cipher = $client->{'cipher'}) { $self->Debug("Host encryption: %s", $cipher); - $self->{'cipher'} = $cipher; + $comm->{'cipher'} = $self->{'cipher'} = $cipher; } } @@ -174,7 +174,7 @@ if (my $au = $self->{'authorized_user'}) { if (ref($au) && (my $cipher = $au->{'cipher'})) { $self->Debug("User encryption: %s", $cipher); - $self->{'cipher'} = $cipher; + $comm->{'cipher'} = $self->{'cipher'} = $cipher; } } Show quoted text
> > When trying to install PlRPC-0.2018 the "crypt" test failes all > subtests. In the messages log i get the message bellow: > > Sep 8 10:59:23 richter CalcServer[21476]: Child died: Storable binary > image v21.86 more recent than I am (v2.6) at ../../lib/Storable.pm > (autosplit into ../../lib/auto/Storable/thaw.al) line 363, at > blib/lib/RPC/PlServer/Comm.pm line 179 > > I'm running on: SunOS richter 5.9 Generic_117171-05 sun4u sparc > SUNW,Sun-Fire-V240 with perl, v5.8.5 built for sun4-solaris. > > Attached is the complete output from the failing test-script > > >
This is a very old bug report CPAN Testers report no bugs in version 0.2019. Version 0.2020 is the same as 0.2019 except for getting rid of some .svn directories that got caught in the 0.2019 tar.gz file.