fix race condition
authorBodo Möller <bodo@openssl.org>
Thu, 19 Sep 2002 11:26:45 +0000 (11:26 +0000)
committerBodo Möller <bodo@openssl.org>
Thu, 19 Sep 2002 11:26:45 +0000 (11:26 +0000)
PR: 262

CHANGES
ssl/s3_clnt.c

diff --git a/CHANGES b/CHANGES
index dbb70cb119e05e5f391c0f7efc41eb2917eb08fa..0cfe8adc9be79fcd4575aecaebf589139ac39ec7 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1923,6 +1923,9 @@ des-cbc           3624.96k     5258.21k     5530.91k     5624.30k     5628.26k
 
  Changes between 0.9.6g and 0.9.6h  [xx XXX xxxx]
 
+  *) Fix race condition in SSLv3_client_method().
+     [Bodo Moeller]
+
   *) Reorder cleanup sequence in SSL_CTX_free(): only remove the ex_data after
      the cached sessions are flushed, as the remove_cb() might use ex_data
      contents. Bug found by Sam Varshavchik <mrsam@courier-mta.com>
index 3784e7d8c25c6b7fc94113c4f453e15a2d0ae479..ca15881eaf2713e20e887a9fe05b9789fe6be4a3 100644 (file)
@@ -178,11 +178,11 @@ SSL_METHOD *SSLv3_client_method(void)
 
        if (init)
                {
-               init=0;
                memcpy((char *)&SSLv3_client_data,(char *)sslv3_base_method(),
                        sizeof(SSL_METHOD));
                SSLv3_client_data.ssl_connect=ssl3_connect;
                SSLv3_client_data.get_ssl_method=ssl3_get_client_method;
+               init=0;
                }
        return(&SSLv3_client_data);
        }