Tried it, now I have less leaks:
Detected memory leaks!
Dumping objects ->
{3409} normal block at 0x0090A8D0, 512 bytes long.
Data: < > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
{2596} normal block at 0x008FC880, 96 bytes long.
Data: < l @ @ A > D0 A8 90 00 6C B5 40 00 EF B5 40 00 41 00 00 00
Object dump complete.
This will make it easier for me to identify my leaks.
Thanks.
----- Original Message -----
From: Bodo Moeller <[EMAIL PROTECTED]>
To: Richard Dykiel <[EMAIL PROTECTED]>;
<[EMAIL PROTECTED]>
Sent: Thursday, March 16, 2000 4:42 PM
Subject: Re: memory leaks in SSLeay_add_all_algorithms?
> Richard Dykiel <[EMAIL PROTECTED]>:
>
> > I tried the cleanup calls advised by Bodo, it works fine so far as
OpenSSL
> > is concerned; I tested the CRYPTO mem debug functions & I am now
confident
> > they'll spot my bugs.
> >
> > However I still have the following leaks reported by Win32's debugging
> > tools:
> >
> > Detected memory leaks!
> > Dumping objects ->
> > {3409} normal block at 0x0090A8D0, 512 bytes long.
> > Data: < > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00
> > {3447} normal block at 0x008C8758, 128 bytes long.
> > Data: < > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00
> > {2596} normal block at 0x008FC880, 96 bytes long.
> > Data: < , @ @ A > D0 A8 90 00 2C 9C 40 00 AF 9C 40 00 41 00 00
00
> > {49} normal block at 0x008D1DA0, 96 bytes long.
> > Data: <X L@ M@ > 58 87 8C 00 FC 4C 40 00 0B 4D 40 00 10 00 00
00
> > Object dump complete.
>
> These could be the data structures used by OpenSSL to keep track of
> allocated memory, they are not freed. Try with this patch to
> crypto/mem_dbg.c:
>
> Index: mem_dbg.c
> ===================================================================
> RCS file: /usr/local/openssl/cvs/openssl/crypto/mem_dbg.c,v
> retrieving revision 1.12
> diff -u -u -r1.12 mem_dbg.c
> --- mem_dbg.c 2000/02/11 09:47:12 1.12
> +++ mem_dbg.c 2000/03/16 21:39:25
> @@ -646,13 +646,18 @@
> ml.chunks=0;
> CRYPTO_w_lock(CRYPTO_LOCK_MALLOC2);
> lh_doall_arg(mh,(void (*)())print_leak,(char *)&ml);
> - CRYPTO_w_unlock(CRYPTO_LOCK_MALLOC2);
> if (ml.chunks != 0)
> {
> sprintf(buf,"%ld bytes leaked in %d chunks\n",
> ml.bytes,ml.chunks);
> BIO_puts(b,buf);
> }
> + else
> + {
> + lh_free(mh);
> + mh = NULL;
> + }
> + CRYPTO_w_unlock(CRYPTO_LOCK_MALLOC2);
>
> #if 0
> lh_stats_bio(mh,b);
>
______________________________________________________________________
OpenSSL Project http://www.openssl.org
User Support Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]