Nettle: Moved modes CTR and CCM to submodules. CTR is now a submodule to Nettle.BlockCipher, and CCM and CCM8 are submodules to Nettle.BlockCipher16. Added fallback C-implementation of CTR if the Nettle library lacks one. All common modes should now be submodules.
AutoDoc: Fixed some markup bugs in Nettle.
Nettle: Moved CBC from a class to a submodule of BlockCipher. This adds things like Crypto.AES.CBC analogous to Crypto.AES.GCM.
Use system realloc, strtol and strtod, when available.
Nettle: Moved GCM to a Cipher submodule. The various tastes of GCM now follow the AEAD API properly. Crypto.GCM is no more, instead there are Crypto.AES.GCM, Crypto.Camellia.GCM etc. Also updates the SSL code accordingly.
Crypto.CCM: Added Counter with CBC-MAC mode. This cipher mode is specified in NIST Special Publication 800-38C.
Merge branch '8.0' into gobject-introspection
SSL.Cipher: Improved TLS 1.2 compatibility. The TLS 1.2 prf is now derived from the hash function used for the MAC for the suite, as this seems to be the convention for all the suites that have been defined after TLS 1.2. This simplifies implementation of the prf selection behaviour specified eg for the suites defined in RFC 6367 3.3: When used with TLS versions prior to 1.2 (TLS 1.0 and TLS 1.1), the PRF is calculated as specified in the appropriate version of the TLS specification.
Inherit CTR, not GCM.
Nettle.CTR: Added Counter Mode. Yet another Cipher Mode. Note that Crypto.CTR falls back to a pure Pike implementation is Nettle.CTR isn't available.