Hi,
  I traced through the code where the leaks occur and the structures
seem to be being freed up appropriately. There could be the chance that
purify was wrongly reporting it as a memory leak but the VC6 shows the
same leaks as well. I am quite sure that the leak is in openssl code and
I am working on finding a fix. But it sure looks complicated right now.

Thanks,
Amit.

Cristina Nita wrote:
> 
> I noticed them too, unfortunately I don't know how to get
> read of them.
> 
> I would like to get read of them.
> 
> thanks,
> 
> -- Cristina
> 
> Amit Chopra wrote:
> 
> > Hi,
> >    I have noticed a couple of  memory leaks.  I am pasting parts of the
> > purify call stack.
> > I am using openssl-0.9.4. How can I get rid of these leaks ? Is there a
> > cleanup function?
> >
> > Purify stack :
> > [W] MLK: Memory leak of 332 bytes from 1 block allocated in
> > CRYPTO_malloc
> >         Distribution of leaked blocks
> >         Allocation location
> >             malloc         [dbgheap.c:129]
> >             CRYPTO_malloc  [mem.c:198]
> >             ERR_get_state  [err.c:561]
> >
> >                     /* ret == the error state, if NULL, make a new one
> > */
> >                     if (ret == NULL)
> >                         {
> >              =>         ret=(ERR_STATE *)Malloc(sizeof(ERR_STATE));
> >                         if (ret == NULL) return(&fallback);
> >                         ret->pid=pid;
> >                         ret->top=0;
> >                         ret->bottom=0;
> >
> >             ERR_clear_error [err.c:284]
> >             ssl3_accept    [s3_srvr.c:116]
> >             ssl3_read_bytes [s3_pkt.c:654]
> >             ssl3_read      [s3_lib.c:1034]
> >             SSL_read       [ssl_lib.c:633]
> >             DoSSLRead(ssl_st *,char *,int,int&) [sbssl.cpp:142]
> >
> > Purify stack:
> > [W] MLK: Memory leak of 12 bytes from 1 block allocated in CRYPTO_malloc
> >         Distribution of leaked blocks
> >         Allocation location
> >             malloc         [dbgheap.c:129]
> >             CRYPTO_malloc  [mem.c:198]
> >             lh_insert      [lhash.c:196]
> >
> >                     rn=getrn(lh,data,&hash);
> >
> >                     if (*rn == NULL)
> >                         {
> >              =>         if ((nn=(LHASH_NODE
> > *)Malloc(sizeof(LHASH_NODE))) == NULL)
> >                             {
> >                             lh->error++;
> >                             return(NULL);
> >                             }
> >
> >             ERR_get_state  [err.c:572]
> >             ERR_clear_error [err.c:284]
> >             ssl3_accept    [s3_srvr.c:116]
> >             ssl3_read_bytes [s3_pkt.c:654]
> >             ssl3_read      [s3_lib.c:1034]
> >             SSL_read       [ssl_lib.c:633]
> >
> > Thanks,
> > Amit.
> > ______________________________________________________________________
> > OpenSSL Project                                 http://www.openssl.org
> > User Support Mailing List                    [EMAIL PROTECTED]
> > Automated List Manager                           [EMAIL PROTECTED]
> ______________________________________________________________________
> OpenSSL Project                                 http://www.openssl.org
> User Support Mailing List                    [EMAIL PROTECTED]
> Automated List Manager                           [EMAIL PROTECTED]
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to