openssl/crypto
Rich Salz b1498c98f3 Don't call memcpy if len is zero.
Prevent undefined behavior in CRYPTO_cbc128_encrypt: calling this function
with the 'len' parameter being 0 would result in a memcpy where the source
and destination parameters are the same, which is undefined behavior.
Do same for AES_ige_encrypt.

Reviewed-by: Andy Polyakov <appro@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/2671)
2017-02-20 19:17:53 -05:00
..
aes Don't call memcpy if len is zero. 2017-02-20 19:17:53 -05:00
asn1 Fix a slightly confusing if condition in a2i_ASN1_INTEGER. 2017-02-17 09:54:25 -05:00
async Further improvements to ASYNC_WAIT_CTX_clear_fd 2017-02-13 15:29:43 +00:00
bf Remove/rename some old files. 2016-06-01 11:29:57 -04:00
bio Fix VC warnings about unary minus to an unsigned type. 2017-01-15 22:21:07 +01:00
blake2 Fix some extra or missing whitespaces... 2017-01-25 09:06:34 +00:00
bn Fix typo in x86_64-mont5.pl CFI directives 2017-02-17 10:32:13 +01:00
buffer Check for errors allocating the error strings. 2016-07-20 19:20:53 +02:00
camellia Remove trailing whitespace from some files. 2016-10-10 23:36:21 +01:00
cast Remove trailing whitespace from some files. 2016-10-10 23:36:21 +01:00
chacha x86_64 assembly pack: Win64 SEH face-lift. 2017-02-06 08:21:42 +01:00
cmac Copyright consolidation 06/10 2016-05-17 14:51:04 -04:00
cms Set EVP_PKEY_CTX in SignerInfo 2017-01-08 01:42:49 +00:00
comp Fix zlib BIO_METHOD for latest BIO_METHOD structure changes 2016-11-08 13:58:10 +00:00
conf Check for errors allocating the error strings. 2016-07-20 19:20:53 +02:00
ct Fix faulty free 2017-01-29 15:31:01 +01:00
des DES keys are not 7 days long. 2017-02-13 11:50:44 +01:00
dh Better check of DH parameters in TLS data 2017-01-26 10:54:01 +00:00
dsa Style 2017-01-25 09:06:34 +00:00
dso Avoid the call to OPENSSL_malloc with a negative value (then casted to unsigned) 2016-12-10 16:41:59 -05:00
ec mem leak on error path and error propagation fix 2017-02-14 10:19:50 +00:00
engine Only enable CRYPTO_3DES_ECB if that name is an existing macro 2017-01-10 14:59:39 +01:00
err In UI_OpenSSL's open(), generate an error on unknown errno 2016-12-08 13:34:08 +01:00
evp Properly zero cipher_data for ChaCha20-Poly1305 on cleanup 2017-02-15 20:00:34 -05:00
hmac Fix style issues in HMAC_size() 2016-11-04 12:09:46 +00:00
idea Remove/rename some old files. 2016-06-01 11:29:57 -04:00
include/internal Add support for parameterized SipHash 2017-02-01 14:14:36 -05:00
kdf Following the changes to HKDF to accept a mode, add some tests for this 2016-11-09 10:36:54 +00:00
lhash GH1555: Don't bump size on realloc failure 2016-09-21 10:40:27 -04:00
md2 Convert memset calls to OPENSSL_cleanse 2016-06-30 15:51:57 +01:00
md4 Remove/rename some old files. 2016-06-01 11:29:57 -04:00
md5 {md5,rc4}/asm/*-x86_64.pl: add CFI annotations. 2017-02-13 14:16:01 +01:00
mdc2 Convert mdc2 test print to internal test 2016-11-03 13:13:31 +01:00
modes Don't call memcpy if len is zero. 2017-02-20 19:17:53 -05:00
objects Add NID_auth_any and NID_kx_any NIDs. 2017-02-08 02:16:26 +00:00
ocsp Add OCSP_RESPID_match() 2016-09-22 09:27:45 +01:00
pem Fix MSBLOB format with RSA. 2016-11-17 03:53:02 +00:00
perlasm Fix a few typos 2017-02-14 15:48:51 -05:00
pkcs7 Check for errors allocating the error strings. 2016-07-20 19:20:53 +02:00
pkcs12 Simplify PKCS#12 PBE algorithm. 2016-11-15 01:23:25 +00:00
poly1305 Add support for Poly1305 in EVP_PKEY 2017-01-24 15:40:37 +01:00
rand RAND_egd_bytes: No need to check RAND_status on connection error. 2017-01-24 14:39:20 +01:00
rc2 Clean away remaining 'selftest' code 2016-11-03 13:15:40 +01:00
rc4 {md5,rc4}/asm/*-x86_64.pl: add CFI annotations. 2017-02-13 14:16:01 +01:00
rc5 Remove/rename some old files. 2016-06-01 11:29:57 -04:00
ripemd Remove trailing whitespace from some files. 2016-10-10 23:36:21 +01:00
rsa Defines and strings for special salt length values, add tests 2017-01-18 15:04:49 +00:00
seed Use _WIN32 over WIN32 for preprocessor conditional 2017-02-16 08:59:47 -05:00
sha sha/asm/*-x86_64.pl: add CFI annotations. 2017-02-15 15:43:05 +01:00
siphash Add support for parameterized SipHash 2017-02-01 14:14:36 -05:00
srp SRP code tidy. 2016-10-01 13:46:54 +01:00
stack Don't leak on an OPENSSL_realloc() failure 2016-09-21 20:27:15 +01:00
ts Add error checking, small nit on ouput 2016-10-19 06:37:42 -04:00
txt_db Rename lh_xxx,sk_xxx tp OPENSSL_{LH,SK}_xxx 2016-05-20 10:48:29 -04:00
ui UI: Use RUN_ONCE differently 2017-01-13 11:47:35 +01:00
whrlpool x86_64 assembly pack: Win64 SEH face-lift. 2017-02-06 08:21:42 +01:00
x509 Combined patch against master branch for the following issues: 2017-02-03 20:39:52 +01:00
x509v3 Fix a crash with malformed user notice policy numbers 2017-02-05 01:04:39 +01:00
alphacpuid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
arm64cpuid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
arm_arch.h Copyright consolidation 07/10 2016-05-17 14:51:26 -04:00
armcap.c crypto/armcap.c: short-circuit processor capability probe in iOS builds. 2017-02-15 23:16:23 +01:00
armv4cpuid.pl ARMv4 assembly pack: harmonize Thumb-ification of iOS build. 2017-02-15 23:16:01 +01:00
build.info Move OS-specific fopen quirks to o_fopen.c. 2016-06-22 21:51:53 +02:00
c64xpluscpuid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
cpt_err.c Check for errors allocating the error strings. 2016-07-20 19:20:53 +02:00
cryptlib.c Revert "Use memcmp() instead of CRYPTO_memcmp() when fuzzing" 2017-02-20 18:54:39 +01:00
cversion.c Copyright consolidation 08/10 2016-05-17 14:51:34 -04:00
dllmain.c Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
ebcdic.c Copyright consolidation 05/10 2016-05-17 15:38:09 -04:00
ex_data.c Combined patch against master branch for the following issues: 2017-02-03 20:39:52 +01:00
ia64cpuid.S Add final(?) set of copyrights. 2016-06-01 11:27:25 -04:00
init.c Add "random malloc failure" tooling 2017-01-12 11:27:27 -05:00
LPdir_nyi.c Remove the silly CVS markers from LPdir_*.c 2016-07-16 07:58:23 +02:00
LPdir_unix.c Remove the silly CVS markers from LPdir_*.c 2016-07-16 07:58:23 +02:00
LPdir_vms.c Copyright consolidation 05/10 2016-05-17 15:38:09 -04:00
LPdir_win.c Fix mingw build 2016-07-18 10:47:07 +01:00
LPdir_win32.c Remove the silly CVS markers from LPdir_*.c 2016-07-16 07:58:23 +02:00
LPdir_wince.c Remove the silly CVS markers from LPdir_*.c 2016-07-16 07:58:23 +02:00
mem.c Fix symbol shadow 2017-02-17 14:51:45 +01:00
mem_clr.c Fix some style issues... 2016-08-02 09:59:23 +02:00
mem_dbg.c fix crypto-mdebug build 2016-07-20 12:41:31 +01:00
mem_sec.c Prevent allocations of size 0 in sh_init, which are not possible with the default OPENSSL_zalloc, but are possible if the user has installed their own allocator using CRYPTO_set_mem_functions. If the 0-allocations succeeds, the secure heap code will later access (at least) the first byte of that space, which is technically an OOB access. This could lead to problems with some custom allocators that only return a valid pointer for subsequent free()-ing, and do not expect that the pointer is actually dereferenced. 2017-02-14 14:28:34 -05:00
mips_arch.h Remove trailing whitespace from some files. 2016-10-10 23:36:21 +01:00
o_dir.c Copyright consolidation 05/10 2016-05-17 15:38:09 -04:00
o_fips.c Copyright consolidation 04/10 2016-05-17 14:24:46 -04:00
o_fopen.c Fix a few if(, for(, while( inside code. 2016-07-20 07:21:53 -04:00
o_init.c Copyright consolidation 08/10 2016-05-17 14:51:34 -04:00
o_str.c buf2hexstr: properly deal with empty string 2016-06-21 20:55:54 +02:00
o_time.c Remove obsolete comment 2017-02-14 14:52:24 -05:00
pariscid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
ppc_arch.h GH919: Fix wrappers for two headers 2016-05-24 11:04:38 -04:00
ppccap.c Revert "Move algorithm specific ppccap code from crypto/ppccap.c" 2016-11-10 16:24:02 +01:00
ppccpuid.pl Add assembly CRYPTO_memcmp. 2016-05-19 22:33:00 +02:00
s390xcap.c Fix strict-warnings build 2016-10-18 17:09:47 +01:00
s390xcpuid.S s390x assembly pack: improve portability. 2016-06-06 11:08:04 +02:00
sparc_arch.h Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
sparccpuid.S spelling fixes, just comments and readme. 2016-08-05 19:07:30 -04:00
sparcv9cap.c crypto/sparcv9cap.c: add missing declaration. 2016-08-12 10:26:20 +02:00
threads_none.c Copyright consolidation 04/10 2016-05-17 14:24:46 -04:00
threads_pthread.c Grouped data declarations [skip ci] 2017-02-03 13:48:44 +01:00
threads_win.c Revert "Fixed deadlock in CRYPTO_THREAD_run_once for Windows" 2016-11-14 11:55:13 +00:00
uid.c Fix support for DragonFly BSD 2016-10-22 04:25:17 -04:00
vms_rms.h Copyright consolidation 09/10 2016-05-17 14:53:16 -04:00
x86_64cpuid.pl crypto/x86_64cpuid.pl: detect if kernel preserves %zmm registers. 2017-02-03 12:21:50 +01:00
x86cpuid.pl Remove trailing whitespace from some files. 2016-10-10 23:36:21 +01:00