mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-08-03 20:54:41 +02:00
compatibility mapping for STORE_CTX functions and added test case
This commit is contained in:
15
src/ssl.c
15
src/ssl.c
@@ -24387,6 +24387,21 @@ void* wolfSSL_GetDhAgreeCtx(WOLFSSL* ssl)
|
||||
* root CA. */
|
||||
return wolfSSL_PEM_read_bio_X509(bp, x, cb, u);
|
||||
}
|
||||
|
||||
|
||||
/* Copies entry into name. With it being copied freeing entry becomes the
|
||||
* callers responsibility.
|
||||
* returns 1 for success and 0 for error */
|
||||
int wolfSSL_X509_NAME_add_entry(WOLFSSL_X509_NAME* name,
|
||||
WOLFSSL_X509_NAME_ENTRY* entry, int idx, int set)
|
||||
{
|
||||
(void)name;
|
||||
(void)entry;
|
||||
(void)idx;
|
||||
(void)set;
|
||||
WOLFSSL_STUB("wolfSSL_X509_NAME_add_entry");
|
||||
return SSL_FAILURE;
|
||||
}
|
||||
#endif /* ifndef NO_CERTS */
|
||||
|
||||
#ifndef NO_CERTS
|
||||
|
14
tests/api.c
14
tests/api.c
@@ -14610,6 +14610,8 @@ static void test_wolfSSL_X509(void)
|
||||
#if defined(OPENSSL_EXTRA) && !defined(NO_CERTS) && !defined(NO_FILESYSTEM)
|
||||
X509* x509;
|
||||
BIO* bio;
|
||||
X509_STORE_CTX* ctx;
|
||||
X509_STORE* store;
|
||||
|
||||
printf(testingFmt, "wolfSSL_X509()");
|
||||
|
||||
@@ -14622,8 +14624,18 @@ static void test_wolfSSL_X509(void)
|
||||
|
||||
AssertIntEQ(i2d_X509_bio(bio, x509), SSL_SUCCESS);
|
||||
|
||||
AssertNotNull(ctx = X509_STORE_CTX_new());
|
||||
|
||||
AssertIntEQ(X509_verify_cert(ctx), SSL_FATAL_ERROR);
|
||||
|
||||
AssertNotNull(store = X509_STORE_new());
|
||||
AssertIntEQ(X509_STORE_add_cert(store, x509), SSL_SUCCESS);
|
||||
AssertIntEQ(X509_STORE_CTX_init(ctx, store, x509, NULL), SSL_SUCCESS);
|
||||
AssertIntEQ(X509_verify_cert(ctx), SSL_SUCCESS);
|
||||
|
||||
|
||||
X509_STORE_CTX_free(ctx);
|
||||
BIO_free(bio);
|
||||
X509_free(x509);
|
||||
|
||||
printf(resultFmt, passed);
|
||||
#endif
|
||||
|
@@ -307,14 +307,18 @@ typedef WOLFSSL_X509_STORE_CTX X509_STORE_CTX;
|
||||
#define X509_STORE_add_cert wolfSSL_X509_STORE_add_cert
|
||||
#define X509_STORE_set_flags wolfSSL_X509_STORE_set_flags
|
||||
#define X509_STORE_CTX_set_verify_cb wolfSSL_X509_STORE_CTX_set_verify_cb
|
||||
#define X509_STORE_CTX_free wolfSSL_X509_STORE_CTX_free
|
||||
#define X509_STORE_CTX_new wolfSSL_X509_STORE_CTX_new
|
||||
#define X509_STORE_CTX_get_chain wolfSSL_X509_STORE_CTX_get_chain
|
||||
#define X509_STORE_CTX_get_error wolfSSL_X509_STORE_CTX_get_error
|
||||
#define X509_STORE_CTX_get_error_depth wolfSSL_X509_STORE_CTX_get_error_depth
|
||||
|
||||
#define X509_NAME_add_entry wolfSSL_X509_NAME_add_entry
|
||||
#define X509_NAME_oneline wolfSSL_X509_NAME_oneline
|
||||
#define X509_get_issuer_name wolfSSL_X509_get_issuer_name
|
||||
#define X509_get_subject_name wolfSSL_X509_get_subject_name
|
||||
#define X509_verify_cert_error_string wolfSSL_X509_verify_cert_error_string
|
||||
#define X509_verify_cert wolfSSL_X509_verify_cert
|
||||
|
||||
#define X509_LOOKUP_add_dir wolfSSL_X509_LOOKUP_add_dir
|
||||
#define X509_LOOKUP_load_file wolfSSL_X509_LOOKUP_load_file
|
||||
|
@@ -2319,6 +2319,8 @@ WOLFSSL_API long wolfSSL_ctrl(WOLFSSL* ssl, int cmd, long opt, void* pt);
|
||||
WOLFSSL_API long wolfSSL_CTX_ctrl(WOLFSSL_CTX* ctx, int cmd, long opt,void* pt);
|
||||
|
||||
#ifndef NO_CERTS
|
||||
WOLFSSL_API int wolfSSL_X509_NAME_add_entry(WOLFSSL_X509_NAME* name,
|
||||
WOLFSSL_X509_NAME_ENTRY* entry, int idx, int set);
|
||||
WOLFSSL_API int wolfSSL_check_private_key(const WOLFSSL* ssl);
|
||||
WOLFSSL_API void* wolfSSL_X509_get_ext_d2i(const WOLFSSL_X509* x509,
|
||||
int nid, int* c, int* idx);
|
||||
|
Reference in New Issue
Block a user