From 9f5a3c4a0ae949fa8c0ca969e4af600bb0ed8555 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Manuel=20P=C3=A9gouri=C3=A9-Gonnard?= Date: Sat, 7 Sep 2013 18:09:43 +0200 Subject: [PATCH] Fix possible memory error. --- library/ssl_srv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/library/ssl_srv.c b/library/ssl_srv.c index 5bedcadce..7608d789e 100644 --- a/library/ssl_srv.c +++ b/library/ssl_srv.c @@ -134,7 +134,7 @@ static int ssl_load_session( ssl_session *session, if( p + cert_len > end ) return( POLARSSL_ERR_SSL_BAD_INPUT_DATA ); - session->peer_cert = polarssl_malloc( cert_len ); + session->peer_cert = polarssl_malloc( sizeof( x509_cert ) ); if( session->peer_cert == NULL ) return( POLARSSL_ERR_SSL_MALLOC_FAILED ); @@ -143,8 +143,8 @@ static int ssl_load_session( ssl_session *session, if( ( ret = x509parse_crt( session->peer_cert, p, cert_len ) ) != 0 ) { + x509_free( session->peer_cert ); polarssl_free( session->peer_cert ); - free( session->peer_cert ); session->peer_cert = NULL; return( ret ); }