boringssl/crypto/err
David Benjamin 17cf2cb1d2 Work around language and compiler bug in memcpy, etc.
Most C standard library functions are undefined if passed NULL, even
when the corresponding length is zero. This gives them (and, in turn,
all functions which call them) surprising behavior on empty arrays.
Some compilers will miscompile code due to this rule. See also
https://www.imperialviolet.org/2016/06/26/nonnull.html

Add OPENSSL_memcpy, etc., wrappers which avoid this problem.

BUG=23

Change-Id: I95f42b23e92945af0e681264fffaf578e7f8465e
Reviewed-on: https://boringssl-review.googlesource.com/12928
Commit-Queue: David Benjamin <davidben@google.com>
Reviewed-by: Adam Langley <agl@google.com>
2016-12-21 20:34:47 +00:00
..
asn1.errordata Align with upstream's error strings, take two. 2016-03-15 16:02:12 +00:00
bio.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
bn.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
cipher.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
CMakeLists.txt Add a run_tests target to run all tests. 2015-10-26 20:33:44 +00:00
conf.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
dh.errordata Reimplement PKCS #3 DH parameter parsing with crypto/bytestring. 2016-05-09 19:36:41 +00:00
digest.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
dsa.errordata Reimplement DSA parsing logic with crypto/asn1. 2016-02-17 00:26:01 +00:00
ec.errordata Always use Fermat's Little Theorem in ecdsa_sign_setup. 2016-06-20 17:11:42 +00:00
ecdh.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
ecdsa.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
engine.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
err_data_generate.go Make err_data_generator.go silent by default. 2016-04-18 19:42:15 +00:00
err_test.cc Don't bother sampling __func__. 2015-11-03 22:50:59 +00:00
err.c Work around language and compiler bug in memcpy, etc. 2016-12-21 20:34:47 +00:00
evp.errordata Reset crypto/evp error codes. 2016-02-26 23:34:04 +00:00
hkdf.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
obj.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
pem.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
pkcs8.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00
rsa.errordata Align with upstream's error strings, take two. 2016-03-15 16:02:12 +00:00
ssl.errordata Don't depend on the X509 code for getting public keys. 2016-12-13 21:27:31 +00:00
x509.errordata Add checks to X509_NAME_oneline() 2016-05-03 16:34:59 +00:00
x509v3.errordata Get rid of err function codes. 2015-07-16 02:02:08 +00:00