Explicit void pointer cast for buggy MS compiler
diff --git a/library/ssl_srv.c b/library/ssl_srv.c
index 15d14fa..aa75430 100644
--- a/library/ssl_srv.c
+++ b/library/ssl_srv.c
@@ -541,7 +541,8 @@
     if( ( curves = polarssl_malloc( our_size * sizeof( *curves ) ) ) == NULL )
         return( POLARSSL_ERR_SSL_MALLOC_FAILED );
 
-    memset( curves, 0, our_size * sizeof( *curves ) );
+	/* explicit void pointer cast for buggy MS compiler */
+    memset( (void *) curves, 0, our_size * sizeof( *curves ) );
     ssl->handshake->curves = curves;
 
     p = buf + 2;
diff --git a/library/ssl_tls.c b/library/ssl_tls.c
index edcc1c8..3f3bf11 100644
--- a/library/ssl_tls.c
+++ b/library/ssl_tls.c
@@ -4161,7 +4161,8 @@
 #endif
 
 #if defined(POLARSSL_ECDH_C) || defined(POLARSSL_ECDSA_C)
-    polarssl_free( handshake->curves );
+	/* explicit void pointer cast for buggy MS compiler */
+	polarssl_free( (void *) handshake->curves );
 #endif
 
 #if defined(POLARSSL_X509_CRT_PARSE_C) && \