Remove SSL_state and SSL_set_state
[openssl.git] / CHANGES
diff --git a/CHANGES b/CHANGES
index 3d9c1833ffbfa83f1990b34051d46603d069ba53..46f058a4b8434c5187e11a4ee5913dec21a56520 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -3,6 +3,46 @@
  _______________
 
  Changes between 1.0.2 and 1.1.0  [xx XXX xxxx]
+
+  *) State machine rewrite. The state machine code has been significantly
+     refactored in order to remove much duplication of code and solve issues
+     with the old code (see ssl/statem/README for further details). This change
+     does have some associated API changes. Notably the SSL_state() function
+     has been removed and replaced by SSL_get_state which now returns an
+     "OSSL_HANDSHAKE_STATE" instead of an int. SSL_set_state() has been removed
+     altogether. The previous handshake states defined in ssl.h and ssl3.h have
+     been redefined to be the nearest equivalent OSS_HANDSHAKE_STATE value. Not
+     all states have an equivalent value, (e.g. SSL_ST_CW_FLUSH). New
+     application code should not use the old handshake state values, but should
+     instead use OSSL_HANDSHAKE_STATE.
+     [Matt Caswell]
+
+  *) The demo files in crypto/threads were moved to demo/threads.
+     [Rich Salz]
+
+  *) Removed obsolete engines: 4758cca, aep, atalla, cswift, nuron and sureware.
+     [Matt Caswell]
+
+  *) New ASN.1 embed macro.
+
+     New ASN.1 macro ASN1_EMBED. This is the same as ASN1_SIMPLE except the
+     structure is not allocated: it is part of the parent. That is instead of
+
+     FOO *x;
+
+     it must be:
+
+     FOO x;
+
+     This reduces memory fragmentation and make it impossible to accidentally
+     set a mandatory field to NULL.
+
+     This currently only works for some fields specifically a SEQUENCE, CHOICE,
+     or ASN1_STRING type which is part of a parent SEQUENCE. Since it is
+     equivalent to ASN1_SIMPLE it cannot be tagged, OPTIONAL, SET OF or
+     SEQUENCE OF.
+     [Steve Henson]
+
   *) Remove EVP_CHECK_DES_KEY, a compile-time option that never compiled.
      [Emilia Käsper]
 
@@ -20,6 +60,7 @@
   *) Fix no-stdio build.
     [ David Woodhouse <David.Woodhouse@intel.com> and also
       Ivan Nestlerode <ivan.nestlerode@sonos.com> ]
+
   *) New testing framework
      The testing framework has been largely rewritten and is now using
      perl and the perl modules Test::Harness and an extended variant of