boringssl/crypto/fipsmodule/ec
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
..
asm
ec_key.c Remove ex_data's dup hook. 2017-05-23 22:43:59 +00:00
ec_montgomery.c
ec_test.cc Add FIPS-compliant key generation that calls check_fips for RSA and EC. 2017-05-17 16:30:48 +00:00
ec.c
example_mul.c
internal.h
oct.c Tidy up FIPS module dependencies. 2017-05-05 23:10:24 +00:00
p224-64.c Add missing #includes of delocate.h. 2017-05-05 22:41:30 +00:00
p256-64.c
p256-x86_64_test.cc
p256-x86_64_tests.txt
p256-x86_64-table.h
p256-x86_64.c
p256-x86_64.h
simple.c
util-64.c
wnaf.c