openssl/crypto
Matt Caswell 9d9e37744c Clarify logic in BIO_*printf functions
The static function dynamically allocates an output buffer if the output
grows larger than the static buffer that is normally used. The original
logic implied that |currlen| could be greater than |maxlen| which is
incorrect (and if so would cause a buffer overrun). Also the original
logic would call OPENSSL_malloc to create a dynamic buffer equal to the
size of the static buffer, and then immediately call OPENSSL_realloc to
make it bigger, rather than just creating a buffer than was big enough in
the first place. Thanks to Kevin Wojtysiak (Int3 Solutions) and Paramjot
Oberoi (Int3 Solutions) for reporting this issue.

Reviewed-by: Andy Polyakov <appro@openssl.org>
2015-04-30 23:12:39 +01:00
..
aes aes/asm/aesni-x86.pl: fix typo affecting Windows build. 2015-04-20 18:39:56 +02:00
asn1 free cleanup almost the finale 2015-04-30 17:57:32 -04:00
bf Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
bio Clarify logic in BIO_*printf functions 2015-04-30 23:12:39 +01:00
bn free cleanup almost the finale 2015-04-30 17:57:32 -04:00
buffer realloc of NULL is like malloc 2015-04-28 16:34:52 -04:00
camellia Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
cast Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
cmac Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
cms free cleanup almost the finale 2015-04-30 17:57:32 -04:00
comp remove malloc casts 2015-04-28 15:28:14 -04:00
conf remove malloc casts 2015-04-28 15:28:14 -04:00
des Sanity check DES_enc_write buffer length 2015-04-30 23:12:39 +01:00
dh free cleanup almost the finale 2015-04-30 17:57:32 -04:00
dsa free cleanup almost the finale 2015-04-30 17:57:32 -04:00
dso remove malloc casts 2015-04-28 15:28:14 -04:00
ec free cleanup almost the finale 2015-04-30 17:57:32 -04:00
ecdh free cleanup almost the finale 2015-04-30 17:57:32 -04:00
ecdsa free cleanup 12 2015-04-30 18:10:52 -04:00
engine free cleanup almost the finale 2015-04-30 17:57:32 -04:00
err realloc of NULL is like malloc 2015-04-28 16:34:52 -04:00
evp Sanity check EVP_EncodeUpdate buffer len 2015-04-30 23:12:39 +01:00
hmac free cleanup almost the finale 2015-04-30 17:57:32 -04:00
idea Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
include/internal Error checking and memory leak fixes in NISTZ256. 2015-04-27 16:21:48 +02:00
jpake free cleanup 12 2015-04-30 18:10:52 -04:00
krb5 Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
lhash remove malloc casts 2015-04-28 15:28:14 -04:00
md2 Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
md4 Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
md5 Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
mdc2 Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
modes free cleanup almost the finale 2015-04-30 17:57:32 -04:00
objects remove malloc casts 2015-04-28 15:28:14 -04:00
ocsp free cleanup 12 2015-04-30 18:10:52 -04:00
pem free cleanup almost the finale 2015-04-30 17:57:32 -04:00
perlasm Add assembly support for 32-bit iOS. 2015-04-20 15:06:22 +02:00
pkcs7 free cleanup almost the finale 2015-04-30 17:57:32 -04:00
pkcs12 free cleanup almost the finale 2015-04-30 17:57:32 -04:00
pqueue remove malloc casts 2015-04-28 15:28:14 -04:00
rand free cleanup almost the finale 2015-04-30 17:57:32 -04:00
rc2 Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
rc4 Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
rc5 Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
ripemd Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
rsa free cleanup almost the finale 2015-04-30 17:57:32 -04:00
seed Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
sha Add assembly support for 32-bit iOS. 2015-04-20 15:06:22 +02:00
srp free cleanup 12 2015-04-30 18:10:52 -04:00
stack remove malloc casts 2015-04-28 15:28:14 -04:00
store remove malloc casts 2015-04-28 15:28:14 -04:00
threads Code style: space after 'if' 2015-04-16 13:44:59 -04:00
ts free NULL cleanup 5a 2015-04-30 17:33:59 -04:00
txt_db Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
ui remove malloc casts 2015-04-28 15:28:14 -04:00
whrlpool Remove EXHEADER, TEST, APPS, links:, install: and uninstall: where relevant 2015-03-31 20:16:01 +02:00
x509 free NULL cleanup 5a 2015-04-30 17:33:59 -04:00
x509v3 free cleanup 12 2015-04-30 18:10:52 -04:00
alphacpuid.pl alphacpuid.pl: fix alignment bug. 2011-08-12 12:28:52 +00:00
arm64cpuid.pl Add assembly support to ios64-cross. 2015-01-23 15:38:41 +01:00
arm_arch.h Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
armcap.c Add assembly support for 32-bit iOS. 2015-04-20 15:06:22 +02:00
armv4cpuid.pl Add assembly support for 32-bit iOS. 2015-04-20 15:06:22 +02:00
c64xpluscpuid.pl C64x+ assembly pack: make it work with older toolchain. 2014-05-04 16:38:32 +02:00
constant_time_locl.h Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
cpt_err.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
cryptlib.c OPENSSL_NO_XXX cleanup: OPENSSL_NO_BUF_FREELISTS 2015-01-27 16:43:53 -05:00
cryptlib.h Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
crypto-lib.com Remove SSL_TASK, the DECnet Based SSL Engine 2015-03-31 21:59:43 +02:00
cversion.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
ebcdic.c Appease clang -Wempty-translation-unit 2015-04-04 17:05:49 +02:00
ex_data.c remove malloc casts 2015-04-28 15:28:14 -04:00
fips_err.h Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
fips_ers.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
ia64cpuid.S IA-64 assembler pack: fix typos and make it work on HP-UX. 2011-05-07 20:36:05 +00:00
install-crypto.com ui_compat cleanup; makefiles and vms 2015-02-06 16:49:17 -05:00
lock.c remove malloc casts 2015-04-28 15:28:14 -04:00
LPdir_nyi.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
LPdir_unix.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
LPdir_vms.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
LPdir_win.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
LPdir_win32.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
LPdir_wince.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
Makefile Add assembly support for 32-bit iOS. 2015-04-20 15:06:22 +02:00
md32_common.h Keep disclaiming 16-bit support. 2015-01-23 19:09:01 +01:00
mem.c free cleanup almost the finale 2015-04-30 17:57:32 -04:00
mem_clr.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
mem_dbg.c remove malloc casts 2015-04-28 15:28:14 -04:00
o_dir.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
o_dir.h Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
o_dir_test.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
o_fips.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
o_init.c Dead code cleanup: crypto/*.c, x509v3, demos 2015-02-02 11:08:16 -05:00
o_str.c ifdef cleanup part 3: OPENSSL_SYSNAME 2015-01-23 11:58:26 -05:00
o_str.h Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
o_time.c Re-align some comments after running the reformat script. 2015-01-22 09:20:10 +00:00
opensslconf.h.in RT3548: Remove unsupported platforms 2014-12-28 01:17:52 -05:00
pariscid.pl PA-RISC assembler pack: switch to bve in 64-bit builds. 2013-06-18 10:37:00 +02:00
ppc_arch.h Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
ppccap.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
ppccpuid.pl aesp8-ppc.pl: fix typos. 2014-06-04 08:34:18 +02:00
s390xcap.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
s390xcpuid.S Multiple assembler packs: add experimental memory bus instrumentation. 2011-04-17 12:46:00 +00:00
sparc_arch.h Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
sparccpuid.S sparccpuid.S: work around emulator bug on T1. 2013-02-11 10:39:50 +01:00
sparcv9cap.c Dead code cleanup: crypto/*.c, x509v3, demos 2015-02-02 11:08:16 -05:00
thr_id.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
uid.c Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
vms_rms.h Run util/openssl-format-source -v -c . 2015-01-22 09:20:09 +00:00
x86_64cpuid.pl x86[_64]cpuid.pl: add low-level RDSEED. 2014-02-14 17:24:12 +01:00
x86cpuid.pl Undo a90081576c 2014-08-09 08:02:20 -04:00