=================================================================== RCS file: /cvs/palm/Palm-Keyring/lib/Palm/Keyring.pm,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- palm/Palm-Keyring/lib/Palm/Keyring.pm 2006/01/31 23:03:39 1.2 +++ palm/Palm-Keyring/lib/Palm/Keyring.pm 2006/02/02 00:59:08 1.3 @@ -8,8 +8,8 @@ # # This started as Memo.pm, I just made it work for Keyring. # -# $Id: Keyring.pm,v 1.2 2006/01/31 23:03:39 andrew Exp $ -# $RedRiver: Keyring.pm,v 1.1 2006/01/26 20:54:19 andrew Exp $ +# $Id: Keyring.pm,v 1.3 2006/02/02 00:59:08 andrew Exp $ +# $RedRiver: Keyring.pm,v 1.2 2006/01/31 23:03:39 andrew Exp $ use strict; package Palm::Keyring; @@ -27,7 +27,7 @@ # One liner, to allow MakeMaker to work. -$VERSION = do { my @r = (q$Revision: 1.2 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r }; +$VERSION = do { my @r = (q$Revision: 1.3 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r }; @ISA = qw( Palm::StdAppInfo Palm::Raw ); @@ -111,6 +111,26 @@ &Palm::PDB::RegisterPDBHandlers(__PACKAGE__, [ "Gtkr", "Gkyr" ], ); +} + +sub Load +{ + my $self = shift; + $self->SUPER::Load(@_); + + # Skip the first 2 records because they are special + # and don't have any plaintext + my $skip = 0; + foreach my $record (@{ $self->{records} }) { + if ($skip < 2) { + $skip++; + next; + } + my ($name, $encrypted) = split /\000/, $record->{data}, 2; + $record->{plaintext}->{name} = $name; + $record->{encrypted} = $encrypted; + } + 1; } sub Encrypt