You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
117 lines
3.8 KiB
117 lines
3.8 KiB
diff -up razor-agents-2.85/lib/Razor2/Client/Engine.pm.old razor-agents-2.85/lib/Razor2/Client/Engine.pm |
|
--- razor-agents-2.85/lib/Razor2/Client/Engine.pm.old 2005-06-14 01:42:25.000000000 +0200 |
|
+++ razor-agents-2.85/lib/Razor2/Client/Engine.pm 2010-12-22 09:14:57.644814001 +0100 |
|
@@ -1,7 +1,6 @@ |
|
package Razor2::Client::Engine; |
|
|
|
use strict; |
|
-use Digest::SHA1 qw(sha1_hex); |
|
use Data::Dumper; |
|
use Razor2::Signature::Ephemeral; |
|
use Razor2::Engine::VR8; |
|
diff -up razor-agents-2.85/lib/Razor2/Signature/Ephemeral.pm.old razor-agents-2.85/lib/Razor2/Signature/Ephemeral.pm |
|
--- razor-agents-2.85/lib/Razor2/Signature/Ephemeral.pm.old 2003-03-04 00:09:50.000000000 +0100 |
|
+++ razor-agents-2.85/lib/Razor2/Signature/Ephemeral.pm 2010-12-22 09:14:57.646814001 +0100 |
|
@@ -2,9 +2,13 @@ |
|
|
|
package Razor2::Signature::Ephemeral; |
|
use strict; |
|
-use Digest::SHA1; |
|
use Data::Dumper; |
|
|
|
+BEGIN { |
|
+ eval { require Digest::SHA; import Digest::SHA qw(sha1_hex); 1 } |
|
+ or do { require Digest::SHA1; import Digest::SHA1 qw(sha1_hex) } |
|
+} |
|
+ |
|
sub new { |
|
|
|
my ($class, %args) = @_; |
|
@@ -86,16 +90,12 @@ sub hexdigest { |
|
} |
|
|
|
my $digest; |
|
- my $ctx = Digest::SHA1->new; |
|
|
|
if ($seclength > 128) { |
|
- $ctx->add($section1); |
|
- $ctx->add($section2); |
|
- $digest = $ctx->hexdigest; |
|
+ $digest = sha1_hex($section1, $section2); |
|
} else { |
|
debug("Sections too small... reverting back to orginal content."); |
|
- $ctx->add($content); |
|
- $digest = $ctx->hexdigest; |
|
+ $digest = sha1_hex($content); |
|
} |
|
|
|
debug("Computed e-hash is $digest"); |
|
diff -up razor-agents-2.85/lib/Razor2/Signature/Whiplash.pm.old razor-agents-2.85/lib/Razor2/Signature/Whiplash.pm |
|
--- razor-agents-2.85/lib/Razor2/Signature/Whiplash.pm.old 2007-05-09 00:22:36.000000000 +0200 |
|
+++ razor-agents-2.85/lib/Razor2/Signature/Whiplash.pm 2010-12-22 09:14:57.648814001 +0100 |
|
@@ -7,7 +7,10 @@ |
|
|
|
package Razor2::Signature::Whiplash; |
|
|
|
-use Digest::SHA1; |
|
+BEGIN { |
|
+ eval { require Digest::SHA; import Digest::SHA qw(sha1_hex); 1 } |
|
+ or do { require Digest::SHA1; import Digest::SHA1 qw(sha1_hex) } |
|
+} |
|
|
|
sub new { |
|
|
|
@@ -683,13 +686,8 @@ sub whiplash { |
|
# the value of length to the nearest multiple of ``length_error''. |
|
# Take the first 20 hex chars from SHA1 and call it the signature. |
|
|
|
- my $sha1 = Digest::SHA1->new(); |
|
- |
|
- $sha1->add($host); |
|
- $sig = substr $sha1->hexdigest, 0, 12; |
|
- |
|
- $sha1->add($corrected_length); |
|
- $sig .= substr $sha1->hexdigest, 0, 4; |
|
+ $sig = substr sha1_hex($host), 0, 12; |
|
+ $sig .= substr sha1_hex($corrected_length), 0, 4; |
|
|
|
push @sigs, $sig; |
|
$sig_meta{$sig} = [$host, $corrected_length]; |
|
diff -up razor-agents-2.85/lib/Razor2/String.pm.old razor-agents-2.85/lib/Razor2/String.pm |
|
--- razor-agents-2.85/lib/Razor2/String.pm.old 2005-06-13 23:09:59.000000000 +0200 |
|
+++ razor-agents-2.85/lib/Razor2/String.pm 2010-12-22 09:14:57.651814001 +0100 |
|
@@ -1,11 +1,15 @@ |
|
# $Id: String.pm,v 1.48 2005/06/13 21:09:59 vipul Exp $ |
|
package Razor2::String; |
|
|
|
-use Digest::SHA1 qw(sha1_hex); |
|
use URI::Escape; |
|
use Razor2::Preproc::enBase64; |
|
use Data::Dumper; |
|
|
|
+BEGIN { |
|
+ eval { require Digest::SHA; import Digest::SHA qw(sha1_hex); 1 } |
|
+ or do { require Digest::SHA1; import Digest::SHA1 qw(sha1_hex) } |
|
+} |
|
+ |
|
#use MIME::Parser; |
|
|
|
require Exporter; |
|
@@ -69,15 +73,8 @@ sub hmac2_sha1 { |
|
return unless $text && $iv1 && $iv2; |
|
die "no ref's allowed" if ref($text); |
|
|
|
- my $ctx = Digest::SHA1->new; |
|
- $ctx->add($iv2); |
|
- $ctx->add($text); |
|
- my $digest = $ctx->hexdigest; |
|
- |
|
- $ctx = Digest::SHA1->new; |
|
- $ctx->add($iv1); |
|
- $ctx->add($digest); |
|
- $digest = $ctx->hexdigest; |
|
+ my $digest = sha1_hex($iv2, $text); |
|
+ $digest = sha1_hex($iv1, $digest); |
|
|
|
return (hextobase64($digest), $digest); |
|
}
|
|
|