📄 signature.pm
字号:
package CPANPLUS::Module::Signature;use strict;use Cwd;use CPANPLUS::Error;use Params::Check qw[check];use Module::Load::Conditional qw[can_load];### detached sig, not actually used afaik --kane ####sub get_signature {# my $self = shift;## my $clone = $self->clone;# $clone->package( $self->package . '.sig' );## return $clone->fetch;#}sub check_signature { my $self = shift; my $cb = $self->parent; my $conf = $cb->configure_object; my %hash = @_; my $verbose; my $tmpl = { verbose => {default => $conf->get_conf('verbose'), store => \$verbose}, }; check( $tmpl, \%hash ) or return; my $dir = $self->status->extract or ( error( loc( "Do not know what dir '%1' was extracted to; ". "Cannot check signature", $self->module ) ), return ); my $cwd = cwd(); unless( $cb->_chdir( dir => $dir ) ) { error(loc( "Could not chdir to '%1', cannot verify distribution '%2'", $dir, $self->module )); return; } ### check prerequisites my $flag; my $use_list = { 'Module::Signature' => '0.06' }; if( can_load( modules => $use_list, verbose => 1 ) ) { my $rv = Module::Signature::verify(); unless ($rv eq Module::Signature::SIGNATURE_OK() or $rv eq Module::Signature::SIGNATURE_MISSING() ) { $flag++; # whoops, bad sig } } $cb->_chdir( dir => $cwd ); return $flag ? 0 : 1;}1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -