diff --git a/programs/ssl/ssl_client1.c b/programs/ssl/ssl_client1.c
index ac02aeb..1c75bc5 100644
--- a/programs/ssl/ssl_client1.c
+++ b/programs/ssl/ssl_client1.c
@@ -62,6 +62,7 @@
      */
     havege_init( &hs );
     memset( &ssn, 0, sizeof( ssl_session ) );
+    memset( &ssl, 0, sizeof( ssl_context ) );
 
     /*
      * 1. Start the connection
diff --git a/programs/ssl/ssl_client2.c b/programs/ssl/ssl_client2.c
index c27aeb8..7321fa5 100644
--- a/programs/ssl/ssl_client2.c
+++ b/programs/ssl/ssl_client2.c
@@ -92,6 +92,16 @@
     int i, j, n;
     char *p, *q;
 
+    /*
+     * Make sure memory references are valid.
+     */
+    server_fd = 0;
+    memset( &ssn, 0, sizeof( ssl_session ) );
+    memset( &ssl, 0, sizeof( ssl_context ) );
+    memset( &cacert, 0, sizeof( x509_cert ) );
+    memset( &clicert, 0, sizeof( x509_cert ) );
+    memset( &rsa, 0, sizeof( rsa_context ) );
+
     if( argc == 0 )
     {
     usage:
@@ -149,7 +159,6 @@
      * 0. Initialize the RNG and the session data
      */
     havege_init( &hs );
-    memset( &ssn, 0, sizeof( ssl_session ) );
 
     /*
      * 1.1. Load the trusted CA
@@ -157,8 +166,6 @@
     printf( "\n  . Loading the CA root certificate ..." );
     fflush( stdout );
 
-    memset( &cacert, 0, sizeof( x509_cert ) );
-
     /*
      * Alternatively, you may load the CA certificates from a .pem or
      * .crt file by calling x509parse_crtfile( &cacert, "myca.crt" ).
@@ -181,8 +188,6 @@
     printf( "  . Loading the client cert. and key..." );
     fflush( stdout );
 
-    memset( &clicert, 0, sizeof( x509_cert ) );
-
     if( strlen( opt.crt_file ) )
         ret = x509parse_crtfile( &clicert, opt.crt_file );
     else 
@@ -357,7 +362,8 @@
 
 exit:
 
-    net_close( server_fd );
+    if( server_fd )
+        net_close( server_fd );
     x509_free( &clicert );
     x509_free( &cacert );
     rsa_free( &rsa );
