Commit d33d7616 authored by Richard Levitte's avatar Richard Levitte
Browse files

Don't fail when tracing is disabled



When tracing is disabled, don't generate errors, especially during
init.  Instead, just pretend the everything is fine.

Reviewed-by: default avatarMatthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
(Merged from https://github.com/openssl/openssl/pull/8475)
parent 81d61a62
Loading
Loading
Loading
Loading
+17 −16
Original line number Diff line number Diff line
@@ -287,11 +287,11 @@ int ossl_trace_init(void)
{
#ifndef OPENSSL_NO_TRACE
    trace_lock = CRYPTO_THREAD_lock_new();
    if (trace_lock != NULL)
        return 1;
    if (trace_lock == NULL)
        return 0;
#endif

    return 0;
    return 1;
}

void ossl_trace_cleanup(void)
@@ -321,15 +321,11 @@ int OSSL_trace_set_channel(int category, BIO *channel)
    if (category < 0 || category >= OSSL_TRACE_CATEGORY_NUM
        || !set_trace_data(category, &channel, NULL, NULL,
                           trace_attach_cb, trace_detach_cb))
        goto err;
        return 0;

    trace_channels[category].type = t_channel;
    return 1;

 err:
#endif

    return 0;
    return 1;
}

#ifndef OPENSSL_NO_TRACE
@@ -383,36 +379,41 @@ int OSSL_trace_set_callback(int category, OSSL_trace_cb callback, void *data)
        goto err;

    trace_channels[category].type = t_callback;
    return 1;
    goto done;

 err:
    BIO_free(channel);
    OPENSSL_free(trace_data);
#endif

    return 0;
 done:
#endif
    return 1;
}

int OSSL_trace_set_prefix(int category, const char *prefix)
{
    int rv = 1;

#ifndef OPENSSL_NO_TRACE
    if (category >= 0 || category < OSSL_TRACE_CATEGORY_NUM)
        return set_trace_data(category, NULL, &prefix, NULL,
                              trace_attach_cb, trace_detach_cb);
    rv = 0;
#endif

    return 0;
    return rv;
}

int OSSL_trace_set_suffix(int category, const char *suffix)
{
    int rv = 1;

#ifndef OPENSSL_NO_TRACE
    if (category >= 0 || category < OSSL_TRACE_CATEGORY_NUM)
        return set_trace_data(category, NULL, NULL, &suffix,
                              trace_attach_cb, trace_detach_cb);
    rv = 0;
#endif

    return 0;
    return rv;
}

#ifndef OPENSSL_NO_TRACE