fixup! Implement wolfSSL_X509_STORE_set_default_paths

pull/8331/head
Juliusz Sosinowicz 2025-01-03 21:06:06 +01:00
parent 341ed32223
commit 40500e4f2b
2 changed files with 15 additions and 2 deletions

View File

@ -1553,6 +1553,8 @@ static int X509StoreLoadFile(WOLFSSL_X509_STORE *str,
static_buffer_init(&content, stackBuffer, FILE_BUFFER_SIZE);
#endif
WOLFSSL_MSG_EX("X509StoreLoadFile: Loading file: %s", fname);
ret = X509StoreReadFile(fname, &content, &contentLen, &type);
if (ret != WOLFSSL_SUCCESS) {
WOLFSSL_MSG("Failed to load file");
@ -1678,12 +1680,14 @@ WOLFSSL_API int wolfSSL_X509_STORE_load_locations(WOLFSSL_X509_STORE *str,
#if defined(XGETENV) && !defined(NO_GETENV)
int wolfSSL_X509_STORE_set_default_paths(WOLFSSL_X509_STORE *str)
{
int ret = WOLFSSL_FAILURE;
int ret = WC_NO_ERR_TRACE(WOLFSSL_FAILURE);
char* certDir = NULL;
char* certFile = NULL;
certDir = wc_strdup_ex(XGETENV("SSL_CERT_DIR"), DYNAMIC_TYPE_TMP_BUFFER);
WOLFSSL_ENTER("wolfSSL_X509_STORE_set_default_paths");
certFile = wc_strdup_ex(XGETENV("SSL_CERT_FILE"), DYNAMIC_TYPE_TMP_BUFFER);
certDir = wc_strdup_ex(XGETENV("SSL_CERT_DIR"), DYNAMIC_TYPE_TMP_BUFFER);
ret = wolfSSL_X509_STORE_load_locations(str, certFile, certDir);

View File

@ -62369,6 +62369,15 @@ static int test_wolfSSL_X509_STORE_load_locations(void)
ExpectIntEQ(X509_STORE_load_locations(store, NULL, certs_path),
WOLFSSL_SUCCESS);
#if defined(XGETENV) && !defined(NO_GETENV) && defined(_POSIX_C_SOURCE) && \
_POSIX_C_SOURCE >= 200112L
ExpectIntEQ(wolfSSL_CTX_UnloadCAs(ctx), WOLFSSL_SUCCESS);
/* Test with env vars */
ExpectIntEQ(setenv("SSL_CERT_FILE", client_pem_file, 1), 0);
ExpectIntEQ(setenv("SSL_CERT_DIR", certs_path, 1), 0);
ExpectIntEQ(X509_STORE_set_default_paths(store), WOLFSSL_SUCCESS);
#endif
#if defined(OPENSSL_EXTRA) || defined(DEBUG_WOLFSSL_VERBOSE)
/* Clear nodes */
ERR_clear_error();