Note about CRYPTO_malloc_init
authorBodo Möller <bodo@openssl.org>
Thu, 13 Jan 2000 09:18:42 +0000 (09:18 +0000)
committerBodo Möller <bodo@openssl.org>
Thu, 13 Jan 2000 09:18:42 +0000 (09:18 +0000)
INSTALL.W32

index 4f30700885e4e96ef77b7a177f7290b08030fcf6..a54ea11cb876cdab2efd3960f9175cf090038980 100644 (file)
 
  One final comment about compiling applications linked to the OpenSSL library.
  If you don't use the multithreaded DLL runtime library (/MD option) your
 
  One final comment about compiling applications linked to the OpenSSL library.
  If you don't use the multithreaded DLL runtime library (/MD option) your
- program will almost certainly crash: see the original SSLeay description
- below for more details.
-
+ program will almost certainly crash because malloc gets confused -- the
+ OpenSSL DLLs are statically linked to one version, the application must
+ not use a different one.  You might be able to work around such problems
+ by adding CRYPTO_malloc_init() to your program before any calls to the
+ OpenSSL libraries: This tells the OpenSSL libraries to use the same
+ malloc(), free() and realloc() as the application.  However there are many
+ standard library functions used by OpenSSL that call malloc() internally
+ (e.g. fopen()), and OpenSSL cannot change these; so in general you cannot
+ rely on CYRPTO_malloc_init() solving your problem, and you should
+ consistently use the multithreaded library.