boringssl/include/openssl
David Benjamin 23721e3705 Forbid reusing HMAC key without reusing the hash function.
There's no good reason to do this, and it doesn't work; HMAC checks the length
of the key and runs it through the hash function if too long. The reuse occurs
after this check.

This allows us to shave 132 bytes off HMAC_CTX as this was the only reason it
ever stored the original key. It also slightly simplifies HMAC_Init_ex's
logic.

Change-Id: Ib56aabc3630b7178f1ee7c38ef6370c9638efbab
Reviewed-on: https://boringssl-review.googlesource.com/3733
Reviewed-by: Adam Langley <agl@google.com>
2015-03-02 23:16:12 +00:00
..
aead.h More documentation fixes. 2015-01-22 19:22:33 +00:00
aes.h Add visibility rules. 2014-07-31 22:03:11 +00:00
asn1_mac.h Add visibility rules. 2014-07-31 22:03:11 +00:00
asn1.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
asn1t.h Fix Windows shared library build. 2014-10-01 02:01:53 +00:00
base64.h Various documentation fixes. 2015-01-14 21:50:50 +00:00
base.h Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
bio.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
bn.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
buf.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
bytestring.h Don't accept tag number 31 (long form identifier octets) in CBB_add_asn1. 2015-02-03 11:03:59 -08:00
chacha.h Move public headers to include/openssl/ 2014-07-14 22:42:18 +00:00
cipher.h EVP_CIPHER_CTX_cleanup cannot fail. 2015-02-23 19:44:02 +00:00
conf.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
cpu.h Never set RC4_CHAR. 2015-02-20 23:59:59 +00:00
crypto.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
des.h Various documentation fixes. 2015-01-14 21:50:50 +00:00
dh.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
digest.h Various documentation fixes. 2015-01-14 21:50:50 +00:00
dsa.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
dtls1.h Simplify DTLS epoch rewind. 2015-02-03 20:34:06 +00:00
ec_key.h Add visibility rules. 2014-07-31 22:03:11 +00:00
ec.h Unexport EC_GROUP_copy. 2015-02-27 19:43:02 +00:00
ecdh.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
ecdsa.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
engine.h Remove support for dynamic METHODs. 2015-02-06 20:56:10 +00:00
err.h Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
evp.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
ex_data.h Add visibility rules. 2014-07-31 22:03:11 +00:00
hkdf.h Implement HKDF. 2014-12-18 20:13:06 +00:00
hmac.h Forbid reusing HMAC key without reusing the hash function. 2015-03-02 23:16:12 +00:00
lhash_macros.h Remove more bits of ERR_STRING_DATA. 2015-02-10 02:10:46 +00:00
lhash.h Remove more bits of ERR_STRING_DATA. 2015-02-10 02:10:46 +00:00
md4.h Add digest_test with tests for all existing EVP_MDs. 2014-11-06 01:49:03 +00:00
md5.h Readd MD4. 2014-08-26 21:51:48 +00:00
mem.h Various documentation fixes. 2015-01-14 21:50:50 +00:00
modes.h Add visibility rules. 2014-07-31 22:03:11 +00:00
obj_mac.h Renegerate OID outputs. 2014-12-04 22:13:50 +00:00
obj.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
objects.h Move public headers to include/openssl/ 2014-07-14 22:42:18 +00:00
opensslfeatures.h Readd MD4. 2014-08-26 21:51:48 +00:00
opensslv.h Move public headers to include/openssl/ 2014-07-14 22:42:18 +00:00
ossl_typ.h Move public headers to include/openssl/ 2014-07-14 22:42:18 +00:00
pem.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
pkcs7.h Move public headers to include/openssl/ 2014-07-14 22:42:18 +00:00
pkcs8.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
pkcs12.h Move public headers to include/openssl/ 2014-07-14 22:42:18 +00:00
poly1305.h Always write the Poly1305 tag to an aligned buffer. 2015-01-14 23:38:25 +00:00
pqueue.h Export pqueue functions. 2014-09-03 21:38:19 +00:00
rand.h Convert all zero-argument functions to '(void)' 2014-08-21 01:06:07 +00:00
rc4.h Never set RC4_CHAR. 2015-02-20 23:59:59 +00:00
rsa.h Reset all the error codes. 2015-02-11 23:12:08 +00:00
safestack.h Rename safe_stack.h to safestack.h. 2015-02-20 23:33:48 +00:00
sha.h Various documentation fixes. 2015-01-14 21:50:50 +00:00
srtp.h Store SRTP_PROTECTION_PROFILES as const. 2015-01-14 22:10:08 +00:00
ssl2.h Move public headers to include/openssl/ 2014-07-14 22:42:18 +00:00
ssl3.h Rename cutthrough to False Start. 2015-02-17 20:51:22 +00:00
ssl23.h Reformat SSL/TLS headers. 2015-01-26 20:23:09 +00:00
ssl.h Add tests for installing the certificate on the early callback. 2015-02-25 21:22:35 +00:00
stack_macros.h Add sk_deep_copy and its macro. 2015-02-13 10:59:10 -08:00
stack.h Add sk_deep_copy and its macro. 2015-02-13 10:59:10 -08:00
thread.h Also export some deprecated functions. 2014-08-01 10:33:29 -07:00
time_support.h Various documentation fixes. 2015-01-14 21:50:50 +00:00
tls1.h Reformat SSL/TLS headers. 2015-01-26 20:23:09 +00:00
type_check.h Move public headers to include/openssl/ 2014-07-14 22:42:18 +00:00
x509_vfy.h Update API to use (char *) for email addresses and hostnames. 2015-02-13 11:00:48 -08:00
x509.h Add support for reading PKCS#7 data from PEM files. 2015-02-27 21:02:38 +00:00
x509v3.h Update API to use (char *) for email addresses and hostnames. 2015-02-13 11:00:48 -08:00