[BACK]Return to Keyring.pm CVS log [TXT][DIR] Up to [local] / palm / Palm-Keyring / lib / Palm

Diff for /palm/Palm-Keyring/lib/Palm/Keyring.pm between version 1.11 and 1.13

version 1.11, 2007/01/27 23:59:29 version 1.13, 2007/01/28 18:13:28
Line 8 
Line 8 
 #  #
 #   This started as Memo.pm, I just made it work for Keyring.  #   This started as Memo.pm, I just made it work for Keyring.
 #  #
 # $Id$  # $RedRiver: Keyring.pm,v 1.12 2007/01/28 00:18:46 andrew Exp $
 # $RedRiver: Keyring.pm,v 1.10 2006/12/06 18:45:42 andrew Exp $  
   
 use strict;  use strict;
 package Palm::Keyring;  package Palm::Keyring;
Line 37 
Line 36 
   
 =head1 SYNOPSIS  =head1 SYNOPSIS
   
           use Palm::PDB;
         use Palm::Keyring;          use Palm::Keyring;
           my $pdb = new Palm::PDB;
         $pdb->Load($file);          $pdb->Load($file);
         $pdb->Decrypt($assword);          foreach my $record (@{ $pdb->{'records'} }) {
                   print "$record->{'plaintext'}->{'name'}\n";
           }
           $pdb->Decrypt($password);
           # do something with the decrypted parts
   
 =head1 DESCRIPTION  =head1 DESCRIPTION
   
Line 47 
Line 52 
 parses Keyring for Palm OS databases.  See  parses Keyring for Palm OS databases.  See
 L<http://gnukeyring.sourceforge.net/>.  L<http://gnukeyring.sourceforge.net/>.
   
 It has the standard Palm::Raw with 2 additional public methods.  It has the standard Palm::PDB methods with 2 additional public methods.
 Decrypt and Encrypt.  Decrypt and Encrypt.
   
   It currently supports the v4 Keyring databases.  The v5 databases from the pre-release keyring-2.0 are not supported.
   
 =cut  =cut
   
 =head2 new  =head2 new
   
         $pdb = new Palm::Keyring($password);          $pdb = new Palm::Keyring([$password]);
   
 Create a new PDB, initialized with the various Palm::Keyring fields  Create a new PDB, initialized with the various Palm::Keyring fields
 and an empty record list.  and an empty record list.
   
 Use this method if you're creating a Keyring PDB from scratch.  Use this method if you're creating a Keyring PDB from scratch otherwise you
   can just use Palm::PDB::new().
   
 =cut  =cut
   
Line 252 
Line 260 
   
         $self->{digest} ||= _calc_keys($self->{password});          $self->{digest} ||= _calc_keys($self->{password});
   
           my $recordcount = 0;
         foreach my $record (@{ $self->{records} }) {          foreach my $record (@{ $self->{records} }) {
                 next unless defined $record->{data};                  $recordcount++;
                   # always skip the first record that has the password in it.
                   next if $recordcount <= 1;
                   unless (defined $record->{data}) {
                           warn "Invalid record " . ($recordcount - 1) . "\n";
                           next;
                   }
   
                 my ($name, $encrypted) = split /\000/, $record->{data}, 2;                  my ($name, $encrypted) = split /\000/, $record->{data}, 2;
                 next unless $encrypted;                  next unless $encrypted;
Line 443 
Line 458 
   
 =head1 AUTHOR  =head1 AUTHOR
   
 Andrew Fresh E<lt>andrew@mad-techies.org<gt>  Andrew Fresh E<lt>andrew@mad-techies.orgE<gt>
   
 =head1 SEE ALSO  =head1 SEE ALSO
   

Legend:
Removed from v.1.11  
changed lines
  Added in v.1.13

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>