boringssl/crypto
David Benjamin de12d6cd7a Mind the end of the buffer in aligned case of generic RC4 implementation.
The generic RC4 implementation may read and write just past the end of the
buffer; when input and output are aligned, it always reads an RC4_CHUNK at a
time. It appropriately masks off and preserves the excess bytes off the end, so
this can only have practical effects if it crosses a page boundary. There's an
alignment check, so that can't happen; page boundaries are always aligned. But
it makes ASan unhappy and strictly speaking is a memory error.

Instead, fall through to the generic codepath which just reads it byte by byte.
This should fix the other bot failure.

Change-Id: I3cbd3bfc6cb0537e87f3252dea12d40ffa78d590
Reviewed-on: https://boringssl-review.googlesource.com/4722
Reviewed-by: Adam Langley <agl@google.com>
2015-05-12 19:31:09 +00:00
..
aes Don't use .arch in aarch64 asm with Clang. 2015-05-05 00:28:03 +00:00
asn1 Don't set *pval to NULL in asn1_item_ex_combine_new. 2015-05-04 22:54:51 +00:00
base64 Convert base64_test to C++. 2015-04-01 19:54:13 +00:00
bio Add |BIO_up_ref| and |EVP_PKEY_up_ref|. 2015-05-05 18:30:03 +00:00
bn Require source files define __STDC_FORMAT_MACROS to use BN FMT macros. 2015-05-11 18:38:08 +00:00
buf Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
bytestring Remove unnecessary NULL checks, part 1. 2015-05-04 23:05:17 +00:00
chacha Switch nonce type in chacha_vec.c to uint32_t. 2015-02-13 13:16:59 -08:00
cipher Use EVP_AEAD_CTX in crypto/cipher/internal.h. 2015-05-11 23:37:21 +00:00
cmac Add support for CMAC (RFC 4493). 2015-05-07 21:13:41 +00:00
conf Add NCONF_load_bio. 2015-04-06 16:58:45 -07:00
des Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00
dh Convert dh_test to C++. 2015-05-11 18:47:30 +00:00
digest Replace MD5 in examples with SHA-256. 2015-04-13 20:55:48 +00:00
dsa Remove unnecessary NULL checks, part 1. 2015-05-04 23:05:17 +00:00
ec Don't report |ERR_R_MALLOC_FAILURE| on failure of |EC_KEY_new_by_curve_name|. 2015-05-09 00:05:30 +00:00
ecdh Add in missing curly braces part 2. 2015-02-11 23:14:04 +00:00
ecdsa Remove unnecessary NULL checks, part 3. 2015-05-04 23:12:04 +00:00
engine Precompute sorted array for error strings. 2015-02-09 17:35:31 -08:00
err Define compatibility function |ERR_remove_state|. 2015-05-12 19:06:18 +00:00
evp Add evp_test, loosely based on upstream's version. 2015-05-11 21:44:36 +00:00
hkdf Rename BIO_print_errors_fp back to ERR_print_errors_fp & refactor it. 2015-04-13 20:23:29 +00:00
hmac Add evp_test, loosely based on upstream's version. 2015-05-11 21:44:36 +00:00
lhash Remove more bits of ERR_STRING_DATA. 2015-02-10 02:10:46 +00:00
md4 Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00
md5 Remove explicit .hiddens from x86_64 perlasm files. 2015-02-25 21:26:16 +00:00
modes Fix invalid assert in CRYPTO_ctr128_encrypt. 2015-05-12 19:26:53 +00:00
obj Remove unnecessary NULL checks, part 4. 2015-05-04 23:13:12 +00:00
pem Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00
perlasm Add assembly support for 32-bit iOS. 2015-05-04 22:44:24 +00:00
pkcs8 Convert pkcs12_test to C++. 2015-05-11 18:51:13 +00:00
poly1305 Fix ARM Clang build. 2015-05-05 00:24:59 +00:00
rand Add no-op |RAND_load_file| function for compatibility. 2015-05-12 00:36:11 +00:00
rc4 Mind the end of the buffer in aligned case of generic RC4 implementation. 2015-05-12 19:31:09 +00:00
rsa Remove unnecessary NULL checks, part 4. 2015-05-04 23:13:12 +00:00
sha Add assembly support for 32-bit iOS. 2015-05-04 22:44:24 +00:00
stack Remove unnecessary NULL checks, part 4. 2015-05-04 23:13:12 +00:00
test Add evp_test, loosely based on upstream's version. 2015-05-11 21:44:36 +00:00
x509 Switch EVP_PKEY_dup calls to EVP_PKEY_up_ref. 2015-05-06 22:57:09 +00:00
x509v3 Remove spurious declarations of |X509V3_EXT_conf| and friends. 2015-05-05 00:22:59 +00:00
arm_arch.h
CMakeLists.txt Add file-based test framework and convert hmac_test. 2015-05-11 21:34:42 +00:00
constant_time_test.c
cpu-arm-asm.S
cpu-arm.c Support Trusty, an embedded platform. 2015-05-08 18:34:55 +00:00
cpu-intel.c Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00
cpu-x86_64-asm.pl Remove explicit .hiddens from x86_64 perlasm files. 2015-02-25 21:26:16 +00:00
cpu-x86-asm.pl Never set RC4_CHAR. 2015-02-20 23:59:59 +00:00
crypto.c Compatibility changes for wpa_supplicant and OpenSSH. 2015-04-14 20:18:28 +00:00
directory_posix.c Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00
directory_win.c Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00
directory.h
ex_data.c Remove unnecessary NULL checks, part 3. 2015-05-04 23:12:04 +00:00
header_removed.h
internal.h Support Trusty, an embedded platform. 2015-05-08 18:34:55 +00:00
mem.c Lowercase some Windows headers. 2015-03-31 22:21:42 +00:00
thread_none.c Support Trusty, an embedded platform. 2015-05-08 18:34:55 +00:00
thread_pthread.c Support Trusty, an embedded platform. 2015-05-08 18:34:55 +00:00
thread_test.c Support Trusty, an embedded platform. 2015-05-08 18:34:55 +00:00
thread_win.c Support Trusty, an embedded platform. 2015-05-08 18:34:55 +00:00
thread.c Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00
time_support.c Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00