Version 1.9.16, 2011-04-11 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ * Second release candidate for 1.10.0 * The documentation, previously written in LaTeX, is now in reStructuredText suitable for processing by `Sphinx `_, which can generate nicely formatted HTML and PDFs. The documentation has also been greatly updated and expanded. * The class ``EC_Domain_Params`` has been renamed ``EC_Group``, with a typedef for backwards compatability. * ``EC_Group``'s string constructor didn't understand the standard names like "secp160r1", forcing use of the OIDs. * Two constructors for ECDSA private keys, the one that creates a new random key, and the one that provides a preset private key as a ``BigInt``, have been merged. This matches the existing interface for DSA and DH keys. If you previously used the version taking a ``BigInt`` private key, you'll have to additionally pass in a ``RandomNumberGenerator`` object starting in this release. * It is now possible to create ECDH keys with a preset ``BigInt`` private key; previously no method for this was available. * The overload of ``generate_passhash9`` that takes an explicit algorithm identifier has been merged with the one that does not. The algorithm identifier code has been moved from the second parameter to the fourth. See :ref:`passhash9` for details. * Change shared library versioning to match the normal Unix conventions. Instead of ``libbotan-X.Y.Z.so``, the shared lib is named ``libbotan-X.Y.so.Z``; this allows the runtime linker to do its runtime linky magic. It can be safely presumed that any change in the major or minor version indicates ABI incompatability. * Remove the socket wrapper code; it was not actually used by anything in the library, only in the examples, and you can use whatever kind of (blocking) socket interface you like with the SSL/TLS code. It's available as socket.h in the examples directory if you want to use it. * Disable the by-default 'strong' checking of private keys that are loaded from storage. You can always request key material sanity checking using Private_Key::check_key. * Bring back removed functions ``min_keylength_of``, ``max_keylength_of``, ``keylength_multiple_of`` in ``lookup.h`` to avoid breaking applications written against 1.8