BN_mod_sqrt documentation/comment
[openssl.git] / CHANGES
diff --git a/CHANGES b/CHANGES
index 370ec0f9b7b2025f58fec4f1831262eab8156ed8..9a1ad16fe38201888a277d060f631a1557d79765 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -3,9 +3,46 @@
 
  Changes between 0.9.6 and 0.9.7  [xx XXX 2000]
 
-  *) BN_bin2bn bugfix (off-by-one error).
+  *) Changed the LHASH code to use prototypes for callbacks, and created
+     macros to declare and implement thin (optionally static) functions
+     that provide type-safety and avoid function pointer casting for the
+     type-specific callbacks.
+     [Geoff Thorpe]
+
+  *) Use better test patterns in bntest.
+     [Ulf Möller]
+
+  *) Added Kerberos Cipher Suites to be used with TLS, as written in
+     RFC 2712.
+     [Veers Staats <staatsvr@asc.hpc.mil>,
+      Jeffrey Altman <jaltman@columbia.edu>, via Richard Levitte]
+
+  *) rand_win.c fix for Borland C.
+     [Ulf Möller]
+  *) BN_rshift bugfix for n == 0.
      [Bodo Moeller]
 
+  *) Reformat the FAQ so the different questions and answers can be divided
+     in sections depending on the subject.
+     [Richard Levitte]
+
+  *) Have the zlib compression code load ZLIB.DLL dynamically under
+     Windows.
+     [Richard Levitte]
+
+  *) New function BN_mod_sqrt for computing square roots modulo a prime
+     (using the probabilistic Tonelli-Shanks algorithm unless
+     p == 3 (mod 4)  or  p == 5 (mod 8),  which are cases that can
+     be handled deterministically).
+     [Lenka Fibikova <fibikova@exp-math.uni-essen.de>, Bodo Moeller]
+
+  *) Store verify_result within SSL_SESSION also for client side to
+     avoid potential security hole. (Re-used sessions on the client side
+     always resulted in verify_result==X509_V_OK, not using the original
+     result of the server certificate verification.)
+     [Lutz Jaenicke]
+
   *) Make BN_mod_inverse faster by explicitly handling small quotients
      in the Euclid loop. (Speed gain about 20% for small moduli [256 or
      512 bits], about 30% for larger ones [1024 or 2048 bits].)
      BN_is_one(), and BN_is_word().
      [Bodo Moeller]
 
-  *) Initialise "ex_data" member of an RSA structure prior to calling the
-     method-specific "init()" handler, and clean up ex_data after calling
-     the method-specific "finish()" handler. Previously, this was happening
-     the other way round.
+  *) Initialise "ex_data" member of RSA/DSA/DH structures prior to calling
+     the method-specific "init()" handler. Also clean up ex_data after
+     calling the method-specific "finish()" handler. Previously, this was
+     happening the other way round.
      [Geoff Thorpe]
 
   *) New function BN_swap.
@@ -59,7 +96,7 @@
      [Bodo Moeller]
 
   *) Move BN_mod_... functions into new file crypto/bn/bn_mod.c
-     (except for exponentation, which stays in crypto/bn/bn_exp.c,
+     (except for exponentiation, which stays in crypto/bn/bn_exp.c,
      and BN_mod_mul_reciprocal, which stays in crypto/bn/bn_recp.c)
      and add new functions:
 
   *) Remove a few calls to bn_wexpand() in BN_sqr() (the one in there
      was actually never needed) and in BN_mul().  The removal in BN_mul()
      required a small change in bn_mul_part_recursive() and the addition
-     of the static functions bn_cmp_part_words(), bn_sub_part_words()
-     and bn_add_part_words() which do the same thing as bn_cmp_words(),
+     of the functions bn_cmp_part_words(), bn_sub_part_words() and
+     bn_add_part_words(), which do the same thing as bn_cmp_words(),
      bn_sub_words() and bn_add_words() except they take arrays with
      differing sizes.
      [Richard Levitte]