aboutsummaryrefslogtreecommitdiff
path: root/openssl/crypto/conf/conf_def.c
diff options
context:
space:
mode:
Diffstat (limited to 'openssl/crypto/conf/conf_def.c')
-rw-r--r--openssl/crypto/conf/conf_def.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/openssl/crypto/conf/conf_def.c b/openssl/crypto/conf/conf_def.c
index e3ffeb21e..faca9aeb5 100644
--- a/openssl/crypto/conf/conf_def.c
+++ b/openssl/crypto/conf/conf_def.c
@@ -585,7 +585,11 @@ static int str_copy(CONF *conf, char *section, char **pto, char *from)
CONFerr(CONF_F_STR_COPY, CONF_R_VARIABLE_HAS_NO_VALUE);
goto err;
}
- BUF_MEM_grow_clean(buf, (strlen(p) + buf->length - (e - from)));
+ if (!BUF_MEM_grow_clean(buf,
+ (strlen(p) + buf->length - (e - from)))) {
+ CONFerr(CONF_F_STR_COPY, ERR_R_MALLOC_FAILURE);
+ goto err;
+ }
while (*p)
buf->data[to++] = *(p++);