boringssl/crypto
David Benjamin 8a58933db0 Remove the CRYPTO_EX_new callback.
This callback is never used. The one caller I've ever seen is in Android
code which isn't built with BoringSSL and it was a no-op.

It also doesn't actually make much sense. A callback cannot reasonably
assume that it sees every, say, SSL_CTX created because the index may be
registered after the first SSL_CTX is created. Nor is there any point in
an EX_DATA consumer in one file knowing about an SSL_CTX created in
completely unrelated code.

Replace all the pointers with a typedef to int*. This will ensure code
which passes NULL or 0 continues to compile while breaking code which
passes an actual function.

This simplifies some object creation functions which now needn't worry
about CRYPTO_new_ex_data failing. (Also avoids bouncing on the lock, but
it's taking a read lock, so this doesn't really matter.)

BUG=391192

Change-Id: I02893883c6fa8693682075b7b130aa538a0a1437
Reviewed-on: https://boringssl-review.googlesource.com/6625
Reviewed-by: Adam Langley <agl@google.com>
2015-12-15 21:29:46 +00:00
..
aes Fix the shared builders by exporting GCM symbols. 2015-10-26 23:26:40 +00:00
asn1 Limit depth of ASN1 parse printing. 2015-12-15 19:06:04 +00:00
base64 Add a run_tests target to run all tests. 2015-10-26 20:33:44 +00:00
bio Test for underflow before subtraction. 2015-11-11 22:20:04 +00:00
bn Re-apply 75b833cc81 2015-12-03 17:25:12 +00:00
buf Make |BUF_memdup| look for zero length, not NULL. 2015-10-06 18:11:33 -07:00
bytestring Use UINT64_C instead of OPENSSL_U64. 2015-11-16 23:18:00 +00:00
chacha Change |CRYPTO_chacha_20| to use 96-bit nonces, 32-bit counters. 2015-10-26 23:58:46 +00:00
cipher avoid clashes with libc's 'open' in e_chacha20poly1305.c 2015-11-20 20:02:23 +00:00
cmac Add a run_tests target to run all tests. 2015-10-26 20:33:44 +00:00
conf Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
curve25519 Register the *25519 tests as dependencies of all_tests. 2015-11-19 01:09:09 +00:00
des Fix shared library build on OS X. 2015-10-26 23:39:47 +00:00
dh Remove the CRYPTO_EX_new callback. 2015-12-15 21:29:46 +00:00
digest Improve crypto/digest/md32_common.h mechanism. 2015-11-04 00:01:09 +00:00
dsa Remove the CRYPTO_EX_new callback. 2015-12-15 21:29:46 +00:00
ec Remove the CRYPTO_EX_new callback. 2015-12-15 21:29:46 +00:00
ecdh Clean up |ECDH_compute_key|. 2015-10-27 17:00:25 +00:00
ecdsa Add |EC_GROUP_get0_order| to replace |EC_GROUP_get_order|. 2015-12-15 18:18:13 +00:00
engine Unwind DH_METHOD and DSA_METHOD. 2015-11-03 22:54:36 +00:00
err Limit DHE groups to 4096-bit. 2015-11-11 22:18:39 +00:00
evp Add |EC_GROUP_get0_order| to replace |EC_GROUP_get_order|. 2015-12-15 18:18:13 +00:00
hkdf Add a run_tests target to run all tests. 2015-10-26 20:33:44 +00:00
hmac Remove condition which always evaluates to true (size_t >= 0). 2015-11-11 22:20:19 +00:00
lhash Add a run_tests target to run all tests. 2015-10-26 20:33:44 +00:00
md4 Improve crypto/digest/md32_common.h mechanism. 2015-11-04 00:01:09 +00:00
md5 Improve crypto/digest/md32_common.h mechanism. 2015-11-04 00:01:09 +00:00
modes Use UINT64_C instead of OPENSSL_U64. 2015-11-16 23:18:00 +00:00
obj Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
pem Fix all sign/unsigned warnings with Clang and GCC. 2015-10-27 22:48:00 +00:00
perlasm Get rid of all compiler version checks in perlasm files. 2015-10-28 19:33:04 +00:00
pkcs8 Check for overflow when parsing a CBS with d2i_*. 2015-11-16 23:17:42 +00:00
poly1305 Remove stl_compat.h. 2015-11-11 22:19:36 +00:00
rand Don't abort in |init_once| if |fcntl| returns ENOSYS 2015-12-15 18:10:40 +00:00
rc4 Fix a couple more signed/unsigned compares. 2015-10-27 16:07:26 -07:00
rsa Remove the CRYPTO_EX_new callback. 2015-12-15 21:29:46 +00:00
sha Use UINT64_C in sha512.c table. 2015-12-15 20:30:10 +00:00
stack Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
test Remove stl_compat.h. 2015-11-11 22:19:36 +00:00
x509 Remove the CRYPTO_EX_new callback. 2015-12-15 21:29:46 +00:00
x509v3 Become partially -Wmissing-variable-declarations-clean. 2015-11-12 20:09:20 +00:00
CMakeLists.txt Add X25519 and Ed25519 support. 2015-11-17 21:56:12 +00:00
constant_time_test.c
cpu-arm-asm.S
cpu-arm.c Allow |CRYPTO_is_NEON_capable| to be known at compile time, if possible. 2015-11-19 00:15:11 +00:00
cpu-intel.c
crypto.c Make CRYPTO_library_init use a CRYPTO_once_t. 2015-11-19 18:05:22 +00:00
directory_posix.c
directory_win.c
directory.h
ex_data.c Remove the CRYPTO_EX_new callback. 2015-12-15 21:29:46 +00:00
header_removed.h
internal.h Remove the CRYPTO_EX_new callback. 2015-12-15 21:29:46 +00:00
mem.c Fix some typos in license headers. 2015-07-29 19:23:51 +00:00
refcount_c11.c
refcount_lock.c
refcount_test.c
thread_none.c
thread_pthread.c Make sure pthread_once() succeeds. 2015-11-17 21:44:40 +00:00
thread_test.c
thread_win.c
thread.c
time_support.c