Fix prime generation loop in crypto/bn/bn_prime.pl by making
authorRalf S. Engelschall <rse@openssl.org>
Thu, 25 Sep 2003 13:57:58 +0000 (13:57 +0000)
committerRalf S. Engelschall <rse@openssl.org>
Thu, 25 Sep 2003 13:57:58 +0000 (13:57 +0000)
sure the loop does correctly stop and breaking ("division by zero")
modulus operations are not performed. The (pre-generated) prime
table crypto/bn/bn_prime.h was already correct, but it could not be
re-generated on some platforms because of the "division by zero"
situation in the script.

CHANGES
crypto/bn/bn_prime.pl

diff --git a/CHANGES b/CHANGES
index fc57065..5e68e62 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -4,6 +4,14 @@
 
  Changes between 0.9.7c and 0.9.8  [xx XXX xxxx]
 
+  *) Fix prime generation loop in crypto/bn/bn_prime.pl by making
+     sure the loop does correctly stop and breaking ("division by zero")
+     modulus operations are not performed. The (pre-generated) prime
+     table crypto/bn/bn_prime.h was already correct, but it could not be
+     re-generated on some platforms because of the "division by zero"
+     situation in the script.
+     [Ralf S. Engelschall]
+
   *) Update support for ECC-based TLS ciphersuites according to
      draft-ietf-tls-ecc-03.txt: the KDF1 key derivation function with
      SHA-1 now is only used for "small" curves (where the
index 9fc3765..e583d1d 100644 (file)
@@ -11,7 +11,7 @@ loop: while ($#primes < $num-1)
        $p+=2;
        $s=int(sqrt($p));
 
-       for ($i=0; $primes[$i]<=$s; $i++)
+       for ($i=0; defined($primes[$i]) && $primes[$i]<=$s; $i++)
                {
                next loop if (($p%$primes[$i]) == 0);
                }