[packages/openssl102: 289/432] - x86_64 asm fixes

adwol adwol at pld-linux.org
Sat Sep 29 01:25:51 CEST 2018


commit 710a3d68ec6e404b3e065778c9aba8ae8a58d1d5
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Thu Nov 12 12:57:01 2009 +0000

    - x86_64 asm fixes
    
    Changed files:
        openssl-x86_64-asm.patch -> 1.1
        openssl.spec -> 1.208

 openssl-x86_64-asm.patch | 56 ++++++++++++++++++++++++++++++++++++++++++++++++
 openssl.spec             |  2 ++
 2 files changed, 58 insertions(+)
---
diff --git a/openssl.spec b/openssl.spec
index 25bad76..70f8c43 100644
--- a/openssl.spec
+++ b/openssl.spec
@@ -35,6 +35,7 @@ Patch8:		%{name}-fips_install.patch
 Patch9:		%{name}-CVE-2009-1377-1378-1379.patch
 Patch10:	%{name}-ldflags.patch
 Patch11:	%{name}-parallel-build.patch
+Patch12:	%{name}-x86_64-asm.patch
 URL:		http://www.openssl.org/
 BuildRequires:	bc
 BuildRequires:	perl-devel >= 1:5.6.1
@@ -207,6 +208,7 @@ бібліотеки для розробки програм з використ
 %patch9 -p1
 %patch10 -p1
 %patch11 -p1
+%patch12 -p1
 
 %{__perl} -pi -e 's#%{_prefix}/local/bin/perl#%{__perl}#g' \
 	`grep -l -r "%{_prefix}/local/bin/perl" *`
diff --git a/openssl-x86_64-asm.patch b/openssl-x86_64-asm.patch
new file mode 100644
index 0000000..512a717
--- /dev/null
+++ b/openssl-x86_64-asm.patch
@@ -0,0 +1,56 @@
+diff -ur openssl-0.9.8l.org/crypto/md5/asm/md5-x86_64.pl openssl-0.9.8l/crypto/md5/asm/md5-x86_64.pl
+--- openssl-0.9.8l.org/crypto/md5/asm/md5-x86_64.pl	2007-11-11 14:34:06.000000000 +0100
++++ openssl-0.9.8l/crypto/md5/asm/md5-x86_64.pl	2009-11-06 23:23:15.528442820 +0100
+@@ -19,6 +19,7 @@
+ sub round1_step
+ {
+     my ($pos, $dst, $x, $y, $z, $k_next, $T_i, $s) = @_;
++    $T_i = unpack("l",pack("l", hex($T_i))); # convert to 32-bit signed decimal
+     $code .= " mov	0*4(%rsi),	%r10d		/* (NEXT STEP) X[0] */\n" if ($pos == -1);
+     $code .= " mov	%edx,		%r11d		/* (NEXT STEP) z' = %edx */\n" if ($pos == -1);
+     $code .= <<EOF;
+@@ -42,6 +43,7 @@
+ sub round2_step
+ {
+     my ($pos, $dst, $x, $y, $z, $k_next, $T_i, $s) = @_;
++    $T_i = unpack("l",pack("l", hex($T_i))); # convert to 32-bit signed decimal
+     $code .= " mov	1*4(%rsi),	%r10d		/* (NEXT STEP) X[1] */\n" if ($pos == -1);
+     $code .= " mov	%ecx,		%r11d		/* (NEXT STEP) y' = %ecx */\n" if ($pos == -1);
+     $code .= <<EOF;
+@@ -65,6 +67,7 @@
+ sub round3_step
+ {
+     my ($pos, $dst, $x, $y, $z, $k_next, $T_i, $s) = @_;
++    $T_i = unpack("l",pack("l", hex($T_i))); # convert to 32-bit signed decimal
+     $code .= " mov	5*4(%rsi),	%r10d		/* (NEXT STEP) X[5] */\n" if ($pos == -1);
+     $code .= " mov	%ecx,		%r11d		/* (NEXT STEP) y' = %ecx */\n" if ($pos == -1);
+     $code .= <<EOF;
+@@ -87,6 +90,7 @@
+ sub round4_step
+ {
+     my ($pos, $dst, $x, $y, $z, $k_next, $T_i, $s) = @_;
++    $T_i = unpack("l",pack("l", hex($T_i))); # convert to 32-bit signed decimal
+     $code .= " mov	0*4(%rsi),	%r10d		/* (NEXT STEP) X[0] */\n" if ($pos == -1);
+     $code .= " mov	\$0xffffffff,	%r11d\n" if ($pos == -1);
+     $code .= " xor	%edx,		%r11d		/* (NEXT STEP) not z' = not %edx*/\n"
+
+--- openssl-0.9.8l/crypto/sha/asm/sha1-x86_64.pl-x	2007-11-11 14:56:47.000000000 +0100
++++ openssl-0.9.8l/crypto/sha/asm/sha1-x86_64.pl	2009-11-12 13:52:12.350872046 +0100
+@@ -143,7 +143,7 @@
+ sub BODY_20_39 {
+ my ($i,$a,$b,$c,$d,$e,$f)=@_;
+ my $j=$i+1;
+-my $K=($i<40)?0x6ed9eba1:0xca62c1d6;
++my $K=($i<40)?0x6ed9eba1:-0x359d3e2a;
+ $code.=<<___ if ($i<79);
+ 	lea	$K($xi,$e),$f
+ 	mov	`4*($j%16)`(%rsp),$xi
+@@ -180,7 +180,7 @@
+ my ($i,$a,$b,$c,$d,$e,$f)=@_;
+ my $j=$i+1;
+ $code.=<<___;
+-	lea	0x8f1bbcdc($xi,$e),$f
++	lea	-0x70e44324($xi,$e),$f
+ 	mov	`4*($j%16)`(%rsp),$xi
+ 	mov	$b,$t0
+ 	mov	$b,$t1
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/openssl102.git/commitdiff/9fc1b1b87b259e8a327c99835865e91a391efc9e



More information about the pld-cvs-commit mailing list