summaryrefslogtreecommitdiffstats
path: root/crypto/o_fopen.c
diff options
context:
space:
mode:
authorRich Salz <rsalz@openssl.org>2018-04-03 11:31:16 -0400
committerRich Salz <rsalz@openssl.org>2018-04-03 11:31:16 -0400
commitcdb10bae3f773401e039c55965eb177a6f3fc160 (patch)
treec69b1b2bc385d3f600684cf8285b9ff80322c48f /crypto/o_fopen.c
parent29f484d00d732ea4c19a7fd3dc0440045653e79e (diff)
Set error code on alloc failures
Almost all *alloc failures now set an error code. Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/5842)
Diffstat (limited to 'crypto/o_fopen.c')
-rw-r--r--crypto/o_fopen.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/crypto/o_fopen.c b/crypto/o_fopen.c
index 9066279c37..1090a06876 100644
--- a/crypto/o_fopen.c
+++ b/crypto/o_fopen.c
@@ -71,9 +71,10 @@ FILE *openssl_fopen(const char *filename, const char *mode)
char *iterator;
char lastchar;
- newname = OPENSSL_malloc(strlen(filename) + 1);
- if (newname == NULL)
+ if ((newname = OPENSSL_malloc(strlen(filename) + 1)) == NULL) {
+ CRYPTOerr(CRYPTO_F_OPENSSL_FOPEN, ERR_R_MALLOC_FAILURE);
return NULL;
+ }
for (iterator = newname, lastchar = '\0';
*filename; filename++, iterator++) {