mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2026-01-29 10:30:08 +01:00
fixes, coddling, and suppressions for clang-tidy complaints:
examples/pem/pem.c: fix stdio stream leaks. src/ssl.c and src/ssl_load.c: suppress concurrency-mt-unsafe around getenv(). getenv() is threadsafe as long as no threads putenv() or setenv(). wolfssl/openssl/asn1.h: add parentheses to fix bugprone-macro-parentheses in ASN1_EX_TEMPLATE_TYPE(), and suppress misfiring bugprone-macro-parentheses around IMPLEMENT_ASN1_FUNCTIONS().
This commit is contained in:
@@ -23984,7 +23984,7 @@ int wolfSSL_RAND_seed(const void* seed, int len)
|
||||
*/
|
||||
const char* wolfSSL_RAND_file_name(char* fname, unsigned long len)
|
||||
{
|
||||
#if !defined(NO_FILESYSTEM) && defined(XGETENV)
|
||||
#if !defined(NO_FILESYSTEM) && defined(XGETENV) && !defined(NO_GETENV)
|
||||
char* rt;
|
||||
|
||||
WOLFSSL_ENTER("wolfSSL_RAND_file_name");
|
||||
@@ -23995,6 +23995,7 @@ const char* wolfSSL_RAND_file_name(char* fname, unsigned long len)
|
||||
|
||||
XMEMSET(fname, 0, len);
|
||||
|
||||
/* // NOLINTBEGIN(concurrency-mt-unsafe) */
|
||||
if ((rt = XGETENV("RANDFILE")) != NULL) {
|
||||
if (len > XSTRLEN(rt)) {
|
||||
XMEMCPY(fname, rt, XSTRLEN(rt));
|
||||
@@ -24004,6 +24005,7 @@ const char* wolfSSL_RAND_file_name(char* fname, unsigned long len)
|
||||
rt = NULL;
|
||||
}
|
||||
}
|
||||
/* // NOLINTEND(concurrency-mt-unsafe) */
|
||||
|
||||
/* $RANDFILE was not set or is too large, check $HOME */
|
||||
if (rt == NULL) {
|
||||
@@ -24011,6 +24013,7 @@ const char* wolfSSL_RAND_file_name(char* fname, unsigned long len)
|
||||
|
||||
WOLFSSL_MSG("Environment variable RANDFILE not set");
|
||||
|
||||
/* // NOLINTBEGIN(concurrency-mt-unsafe) */
|
||||
if ((rt = XGETENV("HOME")) == NULL) {
|
||||
#ifdef XALTHOMEVARNAME
|
||||
if ((rt = XGETENV(XALTHOMEVARNAME)) == NULL) {
|
||||
@@ -24023,6 +24026,7 @@ const char* wolfSSL_RAND_file_name(char* fname, unsigned long len)
|
||||
return NULL;
|
||||
#endif
|
||||
}
|
||||
/* // NOLINTEND(concurrency-mt-unsafe) */
|
||||
|
||||
if (len > XSTRLEN(rt) + XSTRLEN(ap)) {
|
||||
fname[0] = '\0';
|
||||
|
||||
@@ -5099,7 +5099,7 @@ int wolfSSL_CTX_use_RSAPrivateKey(WOLFSSL_CTX* ctx, WOLFSSL_RSA* rsa)
|
||||
int wolfSSL_CTX_set_default_verify_paths(WOLFSSL_CTX* ctx)
|
||||
{
|
||||
int ret;
|
||||
#ifdef XGETENV
|
||||
#if defined(XGETENV) && !defined(NO_GETENV)
|
||||
char* certDir = NULL;
|
||||
char* certFile = NULL;
|
||||
word32 flags = 0;
|
||||
@@ -5109,7 +5109,8 @@ int wolfSSL_CTX_set_default_verify_paths(WOLFSSL_CTX* ctx)
|
||||
|
||||
WOLFSSL_ENTER("wolfSSL_CTX_set_default_verify_paths");
|
||||
|
||||
#ifdef XGETENV
|
||||
#if defined(XGETENV) && !defined(NO_GETENV)
|
||||
/* // NOLINTBEGIN(concurrency-mt-unsafe) */
|
||||
certDir = wc_strdup_ex(XGETENV("SSL_CERT_DIR"), DYNAMIC_TYPE_TMP_BUFFER);
|
||||
certFile = wc_strdup_ex(XGETENV("SSL_CERT_FILE"), DYNAMIC_TYPE_TMP_BUFFER);
|
||||
flags = WOLFSSL_LOAD_FLAG_PEM_CA_ONLY;
|
||||
@@ -5133,6 +5134,7 @@ int wolfSSL_CTX_set_default_verify_paths(WOLFSSL_CTX* ctx)
|
||||
ret = 0;
|
||||
}
|
||||
}
|
||||
/* // NOLINTEND(concurrency-mt-unsafe) */
|
||||
else
|
||||
#endif
|
||||
|
||||
@@ -5157,7 +5159,7 @@ int wolfSSL_CTX_set_default_verify_paths(WOLFSSL_CTX* ctx)
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef XGETENV
|
||||
#if defined(XGETENV) && !defined(NO_GETENV)
|
||||
XFREE(certFile, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
XFREE(certDir, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user