diff options
Diffstat (limited to 'lib/GnuPG/Fingerprint.pm')
-rw-r--r-- | lib/GnuPG/Fingerprint.pm | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/lib/GnuPG/Fingerprint.pm b/lib/GnuPG/Fingerprint.pm new file mode 100644 index 0000000..81c38a7 --- /dev/null +++ b/lib/GnuPG/Fingerprint.pm @@ -0,0 +1,93 @@ +# Fingerprint.pm +# - providing an object-oriented approach to GnuPG key fingerprints +# +# Copyright (C) 2000 Frank J. Tobin <ftobin@cpan.org> +# +# This module is free software; you can redistribute it and/or modify it +# under the same terms as Perl itself. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +# $Id: Fingerprint.pm,v 1.8 2001/08/21 13:31:50 ftobin Exp $ +# + +package GnuPG::Fingerprint; +use Moo; +use MooX::late; +with qw(GnuPG::HashInit); + +has as_hex_string => ( + isa => 'Any', + is => 'rw', +); + +sub compare { + my ($self, $other) = @_; + return 0 unless $other->isa('GnuPG::Fingerprint'); + return $self->as_hex_string() eq $other->as_hex_string(); +} + +# DEPRECATED +sub hex_data +{ + my ( $self, $v ) = @_; + $self->as_hex_string( $v ) if defined $v; + return $self->as_hex_string(); +} + +1; + +__END__ + +=head1 NAME + +GnuPG::Fingerprint - GnuPG Fingerprint Objects + +=head1 SYNOPSIS + + # assumes a GnuPG::Key in $key + my $fingerprint = $key->fingerprint->as_hex_string(); + +=head1 DESCRIPTION + +GnuPG::Fingerprint objects are generally part of GnuPG::Key +objects, and are not created on their own. + +=head1 OBJECT METHODS + +=head2 Initialization Methods + +=over 4 + +=item new( I<%initialization_args> ) + +This methods creates a new object. The optional arguments are +initialization of data members. + +=item hash_init( I<%args> ). + +=item compare( I<$other> ) + +Returns non-zero only when this fingerprint is identical to the other +GnuPG::Fingerprint. + +=back + +=head1 OBJECT DATA MEMBERS + +=over 4 + +=item as_hex_string + +This is the hex value of the fingerprint that the object embodies, +in string format. + +=back + +=head1 SEE ALSO + +L<GnuPG::Key>, + +=cut |