title: openssl / valgrind
body: <p>I have an application that has to calculate the MD5 of file, I have
  used the openssl library, valgrind complains about some blocks still
  reachable.</p>
  
  <p>Compile the following code:</p>
  
  <pre><code>#include &lt;openssl/bio.h&gt;
  
  int main(int, char**)
  {
     BIO * mem = BIO_new(BIO_s_mem());
     BIO_vfree(mem);
     return 0;
  }
  </code></pre>
  
  <p>the run it using valgrind this is what I'm obtaining:</p>
  
  <pre><code>==23597== 220 bytes in 6 blocks are still reachable in loss record 1 of 1
  ==23597==    at 0x4022D78: malloc (vg_replace_malloc.c:207)
  ==23597==    by 0x432FD0D: (within /usr/lib/i686/cmov/libcrypto.so.0.9.8)
  ==23597==    by 0x433036E: CRYPTO_malloc (in /usr/lib/i686/cmov/libcrypto.so.0.9.8)
  ==23597==    by 0x43989C9: lh_new (in /usr/lib/i686/cmov/libcrypto.so.0.9.8)
  ==23597==    by 0x4332025: (within /usr/lib/i686/cmov/libcrypto.so.0.9.8)
  ==23597==    by 0x433249B: (within /usr/lib/i686/cmov/libcrypto.so.0.9.8)
  ==23597==    by 0x4332B5D: CRYPTO_new_ex_data (in /usr/lib/i686/cmov/libcrypto.so.0.9.8)
  ==23597==    by 0x438E053: BIO_set (in /usr/lib/i686/cmov/libcrypto.so.0.9.8)
  ==23597==    by 0x438E0E9: BIO_new (in /usr/lib/i686/cmov/libcrypto.so.0.9.8)
  ==23597==    by 0x80485E1: main (in /home/kalman/cxx_test/md5test/a.out)
  </code></pre>
  
  <p>anyone had same experience ?</p>