OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Ralf S. Engelschall
Root: /v/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 04-Nov-2007 11:15:39
Branch: HEAD Handle: 2007110410153900
Modified files:
openpkg-src/openssl openssl.patch
Log:
one more upstream bugfix (again)
Summary:
Revision Changes Path
1.36 +63 -0 openpkg-src/openssl/openssl.patch
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/openssl/openssl.patch
============================================================================
$ cvs diff -u -r1.35 -r1.36 openssl.patch
--- openpkg-src/openssl/openssl.patch 4 Nov 2007 10:11:02 -0000 1.35
+++ openpkg-src/openssl/openssl.patch 4 Nov 2007 10:15:39 -0000 1.36
@@ -121,3 +121,66 @@
s->init_num=0;
break;
}
+Index: crypto/bn/bn_mul.c
+--- crypto/bn/bn_mul.c 8 Jul 2007 18:54:30 -0000 1.36.2.1
++++ crypto/bn/bn_mul.c 3 Nov 2007 20:09:29 -0000 1.36.2.2
+@@ -389,6 +389,7 @@
+ * a[0]*b[0]+a[1]*b[1]+(a[0]-a[1])*(b[1]-b[0])
+ * a[1]*b[1]
+ */
++/* dnX may not be positive, but n2/2+dnX has to be */
+ void bn_mul_recursive(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b, int n2,
+ int dna, int dnb, BN_ULONG *t)
+ {
+@@ -398,7 +399,7 @@
+ BN_ULONG ln,lo,*p;
+
+ # ifdef BN_COUNT
+- fprintf(stderr," bn_mul_recursive %d * %d\n",n2,n2);
++ fprintf(stderr," bn_mul_recursive %d%+d * %d%+d\n",n2,dna,n2,dnb);
+ # endif
+ # ifdef BN_MUL_COMBA
+ # if 0
+@@ -545,6 +546,7 @@
+
+ /* n+tn is the word length
+ * t needs to be n*4 is size, as does r */
++/* tnX may not be negative but less than n */
+ void bn_mul_part_recursive(BN_ULONG *r, BN_ULONG *a, BN_ULONG *b, int n,
+ int tna, int tnb, BN_ULONG *t)
+ {
+@@ -553,8 +555,8 @@
+ BN_ULONG ln,lo,*p;
+
+ # ifdef BN_COUNT
+- fprintf(stderr," bn_mul_part_recursive (%d+%d) * (%d+%d)\n",
+- tna, n, tnb, n);
++ fprintf(stderr," bn_mul_part_recursive (%d%+d) * (%d%+d)\n",
++ n, tna, n, tnb);
+ # endif
+ if (n < 8)
+ {
+@@ -655,16 +657,19 @@
+ for (;;)
+ {
+ i/=2;
+- if (i <= tna && tna == tnb)
++ /* these simplified conditions work
++ * exclusively because difference
++ * between tna and tnb is 1 or 0 */
++ if (i < tna || i < tnb)
+ {
+- bn_mul_recursive(&(r[n2]),
++ bn_mul_part_recursive(&(r[n2]),
+ &(a[n]),&(b[n]),
+ i,tna-i,tnb-i,p);
+ break;
+ }
+- else if (i < tna || i < tnb)
++ else if (i == tna || i == tnb)
+ {
+- bn_mul_part_recursive(&(r[n2]),
++ bn_mul_recursive(&(r[n2]),
+ &(a[n]),&(b[n]),
+ i,tna-i,tnb-i,p);
+ break;
@@ .
______________________________________________________________________
OpenPKG http://openpkg.org
CVS Repository Commit List [email protected]