compatibility functions for X509

This commit is contained in:
Jacob Barthelmeh 2016-11-11 11:15:12 -07:00
parent 0d7c259282
commit fed4ed40a9
5 changed files with 46 additions and 5 deletions

View File

@ -5685,6 +5685,30 @@ int wolfSSL_CTX_SetTmpDH_file(WOLFSSL_CTX* ctx, const char* fname, int format)
/* put SSL type in extra for now, not very common */
#ifndef NO_CERTS
void* wolfSSL_X509_get_ext_d2i(const WOLFSSL_X509* x509,
int nid, int* c, int* idx)
{
WOLFSSL_STUB("wolfSSL_X509_get_ext_d2i");
(void)x509;
(void)nid;
(void)c;
(void)idx;
return NULL;
}
int wolfSSL_X509_digest(const WOLFSSL_X509* x509, const WOLFSSL_EVP_MD* digest,
unsigned char* buf, unsigned int* len)
{
WOLFSSL_STUB("wolfSSL_X509_digest");
(void)x509;
(void)digest;
(void)buf;
(void)len;
return SSL_FAILURE;
}
int wolfSSL_use_PrivateKey(WOLFSSL* ssl, WOLFSSL_EVP_PKEY* pkey)
{
WOLFSSL_STUB("wolfSSL_use_PrivateKey");
@ -7051,6 +7075,12 @@ int wolfSSL_DTLS_SetCookieSecret(WOLFSSL* ssl,
#endif /* WOLFSSL_DTLS && !NO_WOLFSSL_SERVER */
#ifdef OPENSSL_EXTRA
WOLFSSL_METHOD* wolfSSLv23_method(void) {
WOLFSSL_STUB("SSLv23_method");
return NULL;
}
#endif /* OPENSSL_EXTRA */
/* client only parts */
#ifndef NO_WOLFSSL_CLIENT
@ -19387,7 +19417,7 @@ void WOLFSSL_ERR_remove_thread_state(void* pid)
}
/***TBD ***/
void wolfSSL_ERR_print_errors_fp(XFILE *fp)
void wolfSSL_print_all_errors_fp(XFILE *fp)
{
(void)fp;
}

View File

@ -2278,11 +2278,13 @@ static void test_wolfSSL_certs(void)
SSL_use_PrivateKey
SSL_use_PrivateKey_ASN1
SSL_use_RSAPrivateKey_ASN1
SSL_X509_digest
SSL_X509_get_ext_d2i
*/
SSL_free(ssl);
SSL_CTX_free(ctx);
wolfSSL_FreeX509(x509);
X509_free(x509);
printf(resultFmt, passed);
#endif /* defined(OPENSSL_EXTRA) && !defined(NO_CERTS) */

View File

@ -53,7 +53,6 @@
extern "C" {
#endif
typedef char WOLFSSL_EVP_MD;
typedef char WOLFSSL_EVP_CIPHER;
#ifndef NO_MD5

View File

@ -101,7 +101,7 @@ typedef WOLFSSL_X509_STORE_CTX X509_STORE_CTX;
strncpy(buf, "Not Implemented, SSLv2 only", len)
/* @TODO */
#define ERR_print_errors_fp(file)
#define ERR_print_errors_fp(file) wolfSSL_print_all_errors_fp((file))
/* at the moment only returns ok */
#define SSL_get_verify_result(ctx) X509_V_OK
@ -117,6 +117,7 @@ typedef WOLFSSL_X509_STORE_CTX X509_STORE_CTX;
#define SSL_use_PrivateKey_ASN1 wolfSSL_use_PrivateKey_ASN1
#define SSL_use_RSAPrivateKey_ASN1 wolfSSL_use_RSAPrivateKey_ASN1
#define SSLv23_method wolfSSLv23_method
#define SSLv3_server_method wolfSSLv3_server_method
#define SSLv3_client_method wolfSSLv3_client_method
#define TLSv1_server_method wolfTLSv1_server_method
@ -211,6 +212,9 @@ typedef WOLFSSL_X509_STORE_CTX X509_STORE_CTX;
#define SSL_SESSION_get_master_key wolfSSL_SESSION_get_master_key
#define SSL_SESSION_get_master_key_length wolfSSL_SESSION_get_master_key_length
#define SSL_X509_NAME_get_text_by_NID wolfSSL_X509_NAME_get_text_by_NID
#define SSL_X509_get_ext_d2i wolfSSL_X509_get_ext_d2i
#define SSL_X509_digest wolfSSL_X509_digest
#define X509_free wolfSSL_X509_free
#define OPENSSL_free wolfSSL_OPENSSL_free

View File

@ -118,6 +118,7 @@ typedef struct WOLFSSL_ASN1_BIT_STRING WOLFSSL_ASN1_BIT_STRING;
#define WOLFSSL_ASN1_UTCTIME WOLFSSL_ASN1_TIME
typedef char WOLFSSL_EVP_MD;
typedef struct WOLFSSL_EVP_PKEY {
int type; /* openssh dereference */
int save_type; /* openssh dereference */
@ -242,6 +243,7 @@ WOLFSSL_API WOLFSSL_METHOD *wolfSSLv23_client_method_ex(void* heap);
WOLFSSL_API WOLFSSL_METHOD *wolfDTLSv1_2_client_method_ex(void* heap);
WOLFSSL_API WOLFSSL_METHOD *wolfDTLSv1_2_server_method_ex(void* heap);
#endif
WOLFSSL_API WOLFSSL_METHOD *wolfSSLv23_method(void);
WOLFSSL_API WOLFSSL_METHOD *wolfSSLv3_server_method(void);
WOLFSSL_API WOLFSSL_METHOD *wolfSSLv3_client_method(void);
WOLFSSL_API WOLFSSL_METHOD *wolfTLSv1_server_method(void);
@ -1894,6 +1896,10 @@ WOLFSSL_API char* wolfSSL_ASN1_TIME_to_string(WOLFSSL_ASN1_TIME* time,
#ifdef OPENSSL_EXTRA
#ifndef NO_CERTS
WOLFSSL_API void* wolfSSL_X509_get_ext_d2i(const WOLFSSL_X509* x509,
int nid, int* c, int* idx);
WOLFSSL_API int wolfSSL_X509_digest(const WOLFSSL_X509* x509,
const WOLFSSL_EVP_MD* digest, unsigned char* buf, unsigned int* len);
WOLFSSL_API int wolfSSL_use_certificate(WOLFSSL* ssl, WOLFSSL_X509* x509);
WOLFSSL_API int wolfSSL_use_certificate_ASN1(WOLFSSL* ssl, unsigned char* der,
int derSz);
@ -2063,7 +2069,7 @@ WOLFSSL_API void WOLFSSL_ERR_remove_thread_state(void*);
WOLFSSL_API unsigned long wolfSSL_ERR_peek_last_error_line(const char **file, int *line);
#ifndef NO_FILESYSTEM
WOLFSSL_API void wolfSSL_ERR_print_errors_fp(XFILE *fp);
WOLFSSL_API void wolfSSL_print_all_errors_fp(XFILE *fp);
#endif
WOLFSSL_API long wolfSSL_CTX_clear_options(WOLFSSL_CTX*, long);