boringssl/crypto/fipsmodule
David Benjamin d94682dce5 Remove ex_data's dup hook.
The only place it is used is EC_KEY_{dup,copy} and no one calls that
function on an EC_KEY with ex_data. This aligns with functions like
RSAPublicKey_dup which do not copy ex_data. The logic is also somewhat
subtle in the face of malloc errors (upstream's PR 3323).

In fact, we'd even changed the function pointer signature from upstream,
so BoringSSL-only code is needed to pass this pointer in anyway. (I
haven't switched it to CRYPTO_EX_unused because there are some callers
which pass in an implementation anyway.)

Note, in upstream, the dup hook is also used for SSL_SESSIONs when those
are duplicated (for TLS 1.2 ticket renewal or TLS 1.3 resumption). Our
interpretation is that callers should treat those SSL_SESSIONs
equivalently to newly-established ones. This avoids every consumer
providing a dup hook and simplifies the interface.

(I've gone ahead and removed the TODO(fork). I don't think we'll be able
to change this API. Maybe introduce a new one, but it may not be worth
it? Then again, this API is atrocious... I've never seen anyone use argl
and argp even.)

BUG=21

Change-Id: I6c9e9d5a02347cb229d4c084c1e85125bd741d2b
Reviewed-on: https://boringssl-review.googlesource.com/16344
Reviewed-by: Adam Langley <agl@google.com>
Commit-Queue: Adam Langley <agl@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
2017-05-23 22:43:59 +00:00
..
aes Convert aes_test to GTest. 2017-05-23 22:33:25 +00:00
bn Remove filename argument to x86 asm_init. 2017-05-12 14:58:27 +00:00
cipher AES-GCM is not defined for empty nonces. 2017-05-23 22:36:06 +00:00
des Move des/ to crypto/fipsmodule/ 2017-05-02 19:21:02 +00:00
digest Be less clever about .rel.ro avoidance. 2017-04-07 15:20:26 +00:00
ec Remove ex_data's dup hook. 2017-05-23 22:43:59 +00:00
ecdsa Tidy up FIPS module dependencies. 2017-05-05 23:10:24 +00:00
hmac
md4
md5 Remove filename argument to x86 asm_init. 2017-05-12 14:58:27 +00:00
modes Remove filename argument to x86 asm_init. 2017-05-12 14:58:27 +00:00
rand Have a single function for FIPS test failures. 2017-05-18 20:33:55 +00:00
rsa Remove ex_data's dup hook. 2017-05-23 22:43:59 +00:00
sha Remove filename argument to x86 asm_init. 2017-05-12 14:58:27 +00:00
bcm.c Have a single function for FIPS test failures. 2017-05-18 20:33:55 +00:00
CMakeLists.txt Convert aes_test to GTest. 2017-05-23 22:33:25 +00:00
delocate.h Move ec/ and ecdsa/ into fipsmodule/ 2017-05-04 20:27:23 +00:00
FIPS.md Inject FIPS hash without running module. 2017-04-12 23:09:38 +00:00
intcheck1.png
intcheck2.png Inject FIPS hash without running module. 2017-04-12 23:09:38 +00:00
intcheck3.png
is_fips.c Move OPENSSL_ASAN to base.h. 2017-05-16 20:16:52 +00:00