Separate psk and psk_identity buffers free

Sometimes, psk_identity buffer can't released because psk buffer is NULL.
So, separate it.
diff --git a/library/ssl_tls.c b/library/ssl_tls.c
index 236e52d..036876c 100644
--- a/library/ssl_tls.c
+++ b/library/ssl_tls.c
@@ -7741,10 +7741,14 @@
     if( conf->psk != NULL )
     {
         mbedtls_zeroize( conf->psk, conf->psk_len );
-        mbedtls_zeroize( conf->psk_identity, conf->psk_identity_len );
         mbedtls_free( conf->psk );
-        mbedtls_free( conf->psk_identity );
         conf->psk_len = 0;
+    }
+
+    if( conf->psk_identity != NULL )
+    {
+        mbedtls_zeroize( conf->psk_identity, conf->psk_identity_len );
+        mbedtls_free( conf->psk_identity );
         conf->psk_identity_len = 0;
     }
 #endif