checkpoint progress: add macro definitions for BIO_CTRL_DGRAM_SET_CONNECTED, BIO_CTRL_DGRAM_SET_PEER, WOLFSSL_MULTI_LABEL_WILDCARDS, WOLFSSL_MULTI_LABEL_WILDCARDS, NID_id_GostR3410_2001, NID_id_GostR3410_2012_256, NID_id_GostR3410_2012_512; fix flag arithmetic in wolfSSL_X509_check_host(); add compat macros for i2d_X509_PUBKEY, BIO_new_dgram.

This commit is contained in:
Daniel Pouzzner
2024-05-21 12:29:33 -05:00
parent 3f921e0a32
commit 08940866c3
6 changed files with 24 additions and 21 deletions

View File

@ -343,19 +343,11 @@ int wolfSSL_BIO_read(WOLFSSL_BIO* bio, void* buf, int len)
#endif
break;
case WOLFSSL_BIO_SOCKET:
#ifdef USE_WOLFSSL_IO
/* BIO requires built-in socket support
* (cannot be used with WOLFSSL_USER_IO) */
ret = wolfIO_Recv(bio->num, (char*)buf, len, 0);
#else
ret = NOT_COMPILED_IN;
#endif
break;
case WOLFSSL_BIO_DGRAM:
#ifdef USE_WOLFSSL_IO
/* BIO requires built-in socket support
* (cannot be used with WOLFSSL_USER_IO) */
ret = wolfIO_RecvDgram(bio->num, (char*)buf, len, 0);
ret = wolfIO_Recv(bio->num, (char*)buf, len, 0);
#else
ret = NOT_COMPILED_IN;
#endif
@ -733,19 +725,11 @@ int wolfSSL_BIO_write(WOLFSSL_BIO* bio, const void* data, int len)
#endif
break;
case WOLFSSL_BIO_SOCKET:
#ifdef USE_WOLFSSL_IO
/* BIO requires built-in socket support
* (cannot be used with WOLFSSL_USER_IO) */
ret = wolfIO_Send(bio->num, (char*)data, len, 0);
#else
ret = NOT_COMPILED_IN;
#endif
break;
case WOLFSSL_BIO_DGRAM:
#ifdef USE_WOLFSSL_IO
/* BIO requires built-in socket support
* (cannot be used with WOLFSSL_USER_IO) */
ret = wolfIO_SendDgram(bio->num, (char*)data, len, 0);
ret = wolfIO_Send(bio->num, (char*)data, len, 0);
#else
ret = NOT_COMPILED_IN;
#endif

View File

@ -13419,11 +13419,15 @@ int wolfSSL_X509_check_host(WOLFSSL_X509 *x, const char *chk, size_t chklen,
return WOLFSSL_FAILURE;
}
if (flags == WOLFSSL_NO_WILDCARDS) {
if (flags & WOLFSSL_NO_WILDCARDS) {
WOLFSSL_MSG("X509_CHECK_FLAG_NO_WILDCARDS not yet implemented");
return WOLFSSL_FAILURE;
}
if (flags == WOLFSSL_NO_PARTIAL_WILDCARDS) {
if (flags & WOLFSSL_NO_PARTIAL_WILDCARDS) {
WOLFSSL_MSG("X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS not yet implemented");
return WOLFSSL_FAILURE;
}
if (flags & WOLFSSL_MULTI_LABEL_WILDCARDS) {
WOLFSSL_MSG("X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS not yet implemented");
return WOLFSSL_FAILURE;
}

View File

@ -168,7 +168,9 @@
#define BIO_C_SET_WRITE_BUF_SIZE 136
#define BIO_C_MAKE_BIO_PAIR 138
#define BIO_CTRL_DGRAM_QUERY_MTU 40
#define BIO_CTRL_DGRAM_SET_CONNECTED 32
#define BIO_CTRL_DGRAM_QUERY_MTU 40
#define BIO_CTRL_DGRAM_SET_PEER 44
#define BIO_FP_TEXT 0x00
#define BIO_NOCLOSE 0x00

View File

@ -214,6 +214,7 @@ typedef STACK_OF(ACCESS_DESCRIPTION) AUTHORITY_INFO_ACCESS;
#define SSL_CTX_set_ecdh_auto wolfSSL_CTX_set_ecdh_auto
#define i2d_PUBKEY wolfSSL_i2d_PUBKEY
#define i2d_X509_PUBKEY wolfSSL_i2d_X509_PUBKEY
#define d2i_PUBKEY wolfSSL_d2i_PUBKEY
#define d2i_PUBKEY_bio wolfSSL_d2i_PUBKEY_bio
#define d2i_PublicKey wolfSSL_d2i_PublicKey
@ -649,6 +650,7 @@ typedef WOLFSSL_X509_NAME_ENTRY X509_NAME_ENTRY;
#define X509_CHECK_FLAG_ALWAYS_CHECK_SUBJECT WOLFSSL_ALWAYS_CHECK_SUBJECT
#define X509_CHECK_FLAG_NO_WILDCARDS WOLFSSL_NO_WILDCARDS
#define X509_CHECK_FLAG_NO_PARTIAL_WILDCARDS WOLFSSL_NO_PARTIAL_WILDCARDS
#define X509_CHECK_FLAG_MULTI_LABEL_WILDCARDS WOLFSSL_MULTI_LABEL_WILDCARDS
#define X509_VP_FLAG_DEFAULT WOLFSSL_VPARAM_DEFAULT
#define X509_VP_FLAG_OVERWRITE WOLFSSL_VPARAM_OVERWRITE
@ -799,6 +801,7 @@ wolfSSL_X509_STORE_set_verify_cb((WOLFSSL_X509_STORE *)(s), (WOLFSSL_X509_STORE_
#define BIO_set_write_buffer_size wolfSSL_BIO_set_write_buffer_size
#define BIO_f_ssl wolfSSL_BIO_f_ssl
#define BIO_new_socket wolfSSL_BIO_new_socket
#define BIO_new_dgram wolfSSL_BIO_new_dgram
#define BIO_new_connect wolfSSL_BIO_new_connect
#define BIO_new_accept wolfSSL_BIO_new_accept
#define BIO_set_conn_port wolfSSL_BIO_set_conn_port

View File

@ -633,6 +633,7 @@ struct WOLFSSL_X509_STORE {
#define WOLFSSL_ALWAYS_CHECK_SUBJECT 0x1
#define WOLFSSL_NO_WILDCARDS 0x2
#define WOLFSSL_NO_PARTIAL_WILDCARDS 0x4
#define WOLFSSL_MULTI_LABEL_WILDCARDS 0x8
#if defined(OPENSSL_EXTRA) || defined(WOLFSSL_WPAS_SMALL)
#define WOLFSSL_USE_CHECK_TIME 0x2
@ -1493,10 +1494,15 @@ WOLFSSL_API int wolfSSL_dtls_free_peer(void* addr);
WOLFSSL_API int wolfSSL_dtls_set_peer(WOLFSSL* ssl, void* peer, unsigned int peerSz);
WOLFSSL_API int wolfSSL_dtls_get_peer(WOLFSSL* ssl, void* peer, unsigned int* peerSz);
#if defined(WOLFSSL_SCTP) && defined(WOLFSSL_DTLS)
WOLFSSL_API int wolfSSL_CTX_dtls_set_sctp(WOLFSSL_CTX* ctx);
WOLFSSL_API int wolfSSL_dtls_set_sctp(WOLFSSL* ssl);
#endif
#if (defined(WOLFSSL_SCTP) || defined(WOLFSSL_DTLS_MTU)) && \
defined(WOLFSSL_DTLS)
WOLFSSL_API int wolfSSL_CTX_dtls_set_mtu(WOLFSSL_CTX* ctx, unsigned short);
WOLFSSL_API int wolfSSL_dtls_set_mtu(WOLFSSL* ssl, unsigned short);
#endif
#ifdef WOLFSSL_SRTP

View File

@ -864,6 +864,10 @@ extern const WOLFSSL_ObjectInfo wolfssl_object_info[];
#define NID_X9_62_prime_field 406 /* 1.2.840.10045.1.1 */
#endif /* OPENSSL_EXTRA */
#define NID_id_GostR3410_2001 811
#define NID_id_GostR3410_2012_256 979
#define NID_id_GostR3410_2012_512 980
enum ECC_TYPES
{
ECC_PREFIX_0 = 160,