Simplify the stack reservation Use the newly introduced sk_TYPE_new_reserve API to simplify the reservation of stack as creating it. Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4592)
diff --git a/ssl/ssl_cert.c b/ssl/ssl_cert.c index 43b084d..7b89608 100644 --- a/ssl/ssl_cert.c +++ b/ssl/ssl_cert.c
@@ -463,15 +463,11 @@ STACK_OF(X509_NAME) *ret; X509_NAME *name; - ret = sk_X509_NAME_new_null(); + ret = sk_X509_NAME_new_reserve(NULL, num); if (ret == NULL) { SSLerr(SSL_F_SSL_DUP_CA_LIST, ERR_R_MALLOC_FAILURE); return NULL; } - if (!sk_X509_NAME_reserve(ret, num)) { - sk_X509_NAME_free(ret); - return NULL; - } for (i = 0; i < num; i++) { name = X509_NAME_dup(sk_X509_NAME_value(sk, i)); if (name == NULL) {
diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c index 0df69b4..4435efd 100644 --- a/ssl/ssl_lib.c +++ b/ssl/ssl_lib.c
@@ -164,14 +164,12 @@ dane_final(&to->dane); to->dane.flags = from->dane.flags; to->dane.dctx = &to->ctx->dane; - to->dane.trecs = sk_danetls_record_new_null(); + to->dane.trecs = sk_danetls_record_new_reserve(NULL, num); if (to->dane.trecs == NULL) { SSLerr(SSL_F_SSL_DANE_DUP, ERR_R_MALLOC_FAILURE); return 0; } - if (!sk_danetls_record_reserve(to->dane.trecs, num)) - return 0; for (i = 0; i < num; ++i) { danetls_record *t = sk_danetls_record_value(from->dane.trecs, i);