diff --git a/library/error.c b/library/error.c
index 151ca4e..490a040 100644
--- a/library/error.c
+++ b/library/error.c
@@ -441,6 +441,8 @@
             mbedtls_snprintf( buf, buflen, "SSL - The alert message received indicates a non-fatal error" );
         if( use_ret == -(MBEDTLS_ERR_SSL_INVALID_VERIFY_HASH) )
             mbedtls_snprintf( buf, buflen, "SSL - Couldn't set the hash for verifying CertificateVerify" );
+        if( use_ret == -(MBEDTLS_ERR_SSL_ASYNC_IN_PROGRESS) )
+            mbedtls_snprintf( buf, buflen, "SSL - Asynchronous operation is not completed yet" );
 #endif /* MBEDTLS_SSL_TLS_C */
 
 #if defined(MBEDTLS_X509_USE_C) || defined(MBEDTLS_X509_CREATE_C)
diff --git a/library/ssl_tls.c b/library/ssl_tls.c
index 9482723..9626fa7 100644
--- a/library/ssl_tls.c
+++ b/library/ssl_tls.c
@@ -6399,6 +6399,23 @@
 }
 #endif
 
+#if defined(MBEDTLS_SSL_ASYNC_PRIVATE_C)
+void mbedtls_ssl_conf_async_private_cb(
+    mbedtls_ssl_config *conf,
+    mbedtls_ssl_async_sign_t *f_async_sign,
+    mbedtls_ssl_async_decrypt_t *f_async_decrypt,
+    mbedtls_ssl_async_resume_t *f_async_resume,
+    mbedtls_ssl_async_cancel_t *f_async_cancel,
+    void *connection_ctx )
+{
+    conf->f_async_sign_start = f_async_sign;
+    conf->f_async_decrypt_start = f_async_decrypt;
+    conf->f_async_resume = f_async_resume;
+    conf->f_async_cancel = f_async_cancel;
+    conf->p_async_connection_ctx = connection_ctx;
+}
+#endif /* MBEDTLS_SSL_ASYNC_PRIVATE_C */
+
 /*
  * SSL get accessors
  */
@@ -7332,6 +7349,15 @@
     }
 #endif /* MBEDTLS_X509_CRT_PARSE_C && MBEDTLS_SSL_SERVER_NAME_INDICATION */
 
+#if defined(MBEDTLS_SSL_ASYNC_PRIVATE_C)
+    if( conf->f_async_cancel != NULL &&
+        handshake->p_async_operation_ctx != NULL )
+    {
+        conf->f_async_cancel( conf->p_async_connection_ctx,
+                              handshake->p_async_operation_ctx );
+    }
+#endif /* MBEDTLS_SSL_ASYNC_PRIVATE_C */
+
 #if defined(MBEDTLS_SSL_PROTO_DTLS)
     mbedtls_free( handshake->verify_cookie );
     mbedtls_free( handshake->hs_msg );
diff --git a/library/version_features.c b/library/version_features.c
index 49bba11..7152e70 100644
--- a/library/version_features.c
+++ b/library/version_features.c
@@ -615,6 +615,9 @@
 #if defined(MBEDTLS_SHA512_C)
     "MBEDTLS_SHA512_C",
 #endif /* MBEDTLS_SHA512_C */
+#if defined(MBEDTLS_SSL_ASYNC_PRIVATE_C)
+    "MBEDTLS_SSL_ASYNC_PRIVATE_C",
+#endif /* MBEDTLS_SSL_ASYNC_PRIVATE_C */
 #if defined(MBEDTLS_SSL_CACHE_C)
     "MBEDTLS_SSL_CACHE_C",
 #endif /* MBEDTLS_SSL_CACHE_C */
