Commit 7a908204 authored by Paul Yang's avatar Paul Yang Committed by Rich Salz
Browse files

Simplify the stack reservation



Use the newly introduced sk_TYPE_new_reserve API to simplify the
reservation of stack as creating it.

Reviewed-by: default avatarTim Hudson <tjh@openssl.org>
Reviewed-by: default avatarRich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/4592)
parent 689c1788
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -336,14 +336,12 @@ int ASYNC_init_thread(size_t max_size, size_t init_size)
        return 0;
    }

    pool->jobs = sk_ASYNC_JOB_new_null();
    pool->jobs = sk_ASYNC_JOB_new_reserve(NULL, init_size);
    if (pool->jobs == NULL) {
        ASYNCerr(ASYNC_F_ASYNC_INIT_THREAD, ERR_R_MALLOC_FAILURE);
        OPENSSL_free(pool);
        return 0;
    }
    if (!sk_ASYNC_JOB_reserve(pool->jobs, init_size))
        goto err;

    pool->max_size = max_size;

+6 −6
Original line number Diff line number Diff line
@@ -201,11 +201,11 @@ static GENERAL_NAMES *v2i_issuer_alt(X509V3_EXT_METHOD *method,
                                     X509V3_CTX *ctx,
                                     STACK_OF(CONF_VALUE) *nval)
{
    GENERAL_NAMES *gens = sk_GENERAL_NAME_new_null();
    const int num = sk_CONF_VALUE_num(nval);
    GENERAL_NAMES *gens = sk_GENERAL_NAME_new_reserve(NULL, num);
    int i;

    if (gens == NULL || !sk_GENERAL_NAME_reserve(gens, num)) {
    if (gens == NULL) {
        X509V3err(X509V3_F_V2I_ISSUER_ALT, ERR_R_MALLOC_FAILURE);
        sk_GENERAL_NAME_free(gens);
        return NULL;
@@ -283,8 +283,8 @@ static GENERAL_NAMES *v2i_subject_alt(X509V3_EXT_METHOD *method,
    const int num = sk_CONF_VALUE_num(nval);
    int i;

    gens = sk_GENERAL_NAME_new_null();
    if (gens == NULL || !sk_GENERAL_NAME_reserve(gens, num)) {
    gens = sk_GENERAL_NAME_new_reserve(NULL, num);
    if (gens == NULL) {
        X509V3err(X509V3_F_V2I_SUBJECT_ALT, ERR_R_MALLOC_FAILURE);
        sk_GENERAL_NAME_free(gens);
        return NULL;
@@ -380,8 +380,8 @@ GENERAL_NAMES *v2i_GENERAL_NAMES(const X509V3_EXT_METHOD *method,
    const int num = sk_CONF_VALUE_num(nval);
    int i;

    gens = sk_GENERAL_NAME_new_null();
    if (gens == NULL || !sk_GENERAL_NAME_reserve(gens, num)) {
    gens = sk_GENERAL_NAME_new_reserve(NULL, num);
    if (gens == NULL) {
        X509V3err(X509V3_F_V2I_GENERAL_NAMES, ERR_R_MALLOC_FAILURE);
        sk_GENERAL_NAME_free(gens);
        return NULL;
+2 −2
Original line number Diff line number Diff line
@@ -102,8 +102,8 @@ static STACK_OF(POLICYINFO) *r2i_certpol(X509V3_EXT_METHOD *method,
        return NULL;
    }

    pols = sk_POLICYINFO_new_null();
    if (pols == NULL || !sk_POLICYINFO_reserve(pols, num)) {
    pols = sk_POLICYINFO_new_reserve(NULL, num);
    if (pols == NULL) {
        X509V3err(X509V3_F_R2I_CERTPOL, ERR_R_MALLOC_FAILURE);
        goto err;
    }
+2 −2
Original line number Diff line number Diff line
@@ -244,8 +244,8 @@ static void *v2i_crld(const X509V3_EXT_METHOD *method,
    const int num = sk_CONF_VALUE_num(nval);
    int i;

    crld = sk_DIST_POINT_new_null();
    if (crld == NULL || !sk_DIST_POINT_reserve(crld, num))
    crld = sk_DIST_POINT_new_reserve(NULL, num);
    if (crld == NULL)
        goto merr;
    for (i = 0; i < num; i++) {
        DIST_POINT *point;
+2 −2
Original line number Diff line number Diff line
@@ -77,8 +77,8 @@ static void *v2i_EXTENDED_KEY_USAGE(const X509V3_EXT_METHOD *method,
    const int num = sk_CONF_VALUE_num(nval);
    int i;

    extku = sk_ASN1_OBJECT_new_null();
    if (extku == NULL || !sk_ASN1_OBJECT_reserve(extku, num)) {
    extku = sk_ASN1_OBJECT_new_reserve(NULL, num);
    if (extku == NULL) {
        X509V3err(X509V3_F_V2I_EXTENDED_KEY_USAGE, ERR_R_MALLOC_FAILURE);
        sk_ASN1_OBJECT_free(extku);
        return NULL;
Loading