diff --git a/library/ssl_cli.c b/library/ssl_cli.c
index 07e15c4..c3c28c7 100644
--- a/library/ssl_cli.c
+++ b/library/ssl_cli.c
@@ -2378,7 +2378,7 @@
     /* We don't need the peer's public key anymore. Free it. */
     mbedtls_pk_free( peer_pk );
 #else
-    mbedtls_x509_crt_pk_release( ssl->session_negotiate->peer_cert, peer_pk );
+    mbedtls_x509_crt_pk_release( ssl->session_negotiate->peer_cert );
 #endif /* MBEDTLS_SSL_KEEP_PEER_CERTIFICATE */
 
     return( ret );
@@ -2509,7 +2509,7 @@
      * operations like ECDHE. */
     mbedtls_pk_free( peer_pk );
 #else
-    mbedtls_x509_crt_pk_release( ssl->session_negotiate->peer_cert, peer_pk );
+    mbedtls_x509_crt_pk_release( ssl->session_negotiate->peer_cert );
 #endif /* MBEDTLS_SSL_KEEP_PEER_CERTIFICATE */
 
     return( ret );
@@ -2837,8 +2837,7 @@
             mbedtls_ssl_send_alert_message( ssl, MBEDTLS_SSL_ALERT_LEVEL_FATAL,
                                             MBEDTLS_SSL_ALERT_MSG_HANDSHAKE_FAILURE );
 #if defined(MBEDTLS_SSL_KEEP_PEER_CERTIFICATE)
-            mbedtls_x509_crt_pk_release( ssl->session_negotiate->peer_cert,
-                                         peer_pk );
+            mbedtls_x509_crt_pk_release( ssl->session_negotiate->peer_cert );
 #endif /* MBEDTLS_SSL_KEEP_PEER_CERTIFICATE */
             return( MBEDTLS_ERR_SSL_PK_TYPE_MISMATCH );
         }
@@ -2862,8 +2861,7 @@
                 ret = MBEDTLS_ERR_SSL_CRYPTO_IN_PROGRESS;
 #endif
 #if defined(MBEDTLS_SSL_KEEP_PEER_CERTIFICATE)
-            mbedtls_x509_crt_pk_release( ssl->session_negotiate->peer_cert,
-                                         peer_pk );
+            mbedtls_x509_crt_pk_release( ssl->session_negotiate->peer_cert );
 #endif /* MBEDTLS_SSL_KEEP_PEER_CERTIFICATE */
             return( ret );
         }
@@ -2874,8 +2872,7 @@
          * operations like ECDHE. */
         mbedtls_pk_free( peer_pk );
 #else
-        mbedtls_x509_crt_pk_release( ssl->session_negotiate->peer_cert,
-                                     peer_pk );
+        mbedtls_x509_crt_pk_release( ssl->session_negotiate->peer_cert );
 #endif /* MBEDTLS_SSL_KEEP_PEER_CERTIFICATE */
     }
 #endif /* MBEDTLS_KEY_EXCHANGE__WITH_SERVER_SIGNATURE__ENABLED */
