wolfSSL 4.2.0 Compatibility Layer Expansion

wolfSSL has added in many new OpenSSL compatibility API’s in the recent release, wolfSSL 4.2.0. The compatibility layer previously was impressive with upwards of 600 hundred of the most common API used, but in the effort to make transitioning projects that currently use OpenSSL, over to using wolfSSL, we added more than 198 additional API. These API additions supported many open source projects such as building with Apache (https://www.apache.org/) and WebRTC. There were also improvements done in the last release for existing API’s and enhancements to their functionality.

There are too many new API to list all, but here are some of them:

  • SSL_CIPHER_get_id
  • SSL_CIPHER_get_rfc_name
  • SSL_get_cipher_by_value
  • X509_print_ex
  • X509_NAME_add_entry_by_NID
  • X509_time_adj
  • X509_time_adj_ex
  • DTLSv1_get_timeout
  • DTLSv1_handle_timeout
  • DTLSv1_set_initial_timeout_duration
  • SSL_CTX_set_current_time_cb
  • PEM_write_bio_RSA_PUBKEY
  • PEM_read_bio_RSA_PUBKEY
  • PEM_write_bio_PUBKEY
  • EVP_PKEY_missing_parameters
  • EVP_PKEY_cmp
  • BN_is_negative
  • BIO_set_retry_write
  • ASN1_STRING_type
  • EVP_aes_128_gcm, EVP_aes_192_gcm, EVP_aes_256_gcm
  • EVP_CIPHER_CTX_ctrl
  • EVP_PKEY_sign
  • EVP_PKEY_sign_init
  • RSA_print
  • RSA_NO_PADDING
  • RSA_PKCS1_PSS_PADDING
  • wolfSSL_EVP_CIPHER_CTX_set_iv_length
  • GENERAL_NAMES_free
  • i2a_ASN1_OBJECT
  • PKCS5_PBKDF2_HMAC
  • X509_get_ext_by_NID
  • X509V3_EXT_print
  • ASN1_STRING_print
  • GENERAL_NAME_free
  • …. (and more)

If you have a FIPS project in jeopardy with the upcoming lapse in OpenSSL support, an easy fix is to plug in wolfSSL. Let us know if your project needs any API that we are missing by contacting us at facts@wolfssl.com.