Hello, All!
 
I want to ask you help about heap corruption with CryptoPP dll,
 when I try to link release CryptoPP dll to debug version of applicaton.
In addition I compiled CryptoPP and mine application with STLPort
library.
 
I have problem linking release cryptoPP dll to debug
 application, the cryptoPP gives access violation on exit.
 
I exported GetNewAndDeleteForCryptoPP to override new
 and delete in cryptoPP and see that problem happens
on memory freeing. The stack looks like:
 
NTDLL! 7c901230()
NTDLL! 7c96cd80()
NTDLL! 7c960af8()
KERNEL32! 7c85e7af()
_CrtIsValidHeapPointer(const void * 0x00897918) line 1697
_free_dbg_lk(void * 0x00897918, int 1) line 1044 + 9 bytes
_free_dbg(void * 0x00897918, int 1) line 1001 + 13 bytes
free(void * 0x00897918) line 956 + 11 bytes
CRYPTOPP! 4293c49b()
72432073()
 
I'm sure that new and delete is overrided and called from CryptoPP,
 because in case I set breakpoints inside new and delete I have calls
from CryptoPP of mine overrided new and delete operators.
 
Maybe it will help you, but I noticed interesting fact, that the content
 of data to free (passed to delete function) is readable and is:
ThisObject:class CryptoPP::DL_GroupParameters_IntegerBasedImpl
 <class CryptoPP::ModExpPrecomputation, class CryptoPP::DL_FixedBasePrecomputationImpl
<class CryptoPP::Integer> >.««««««««............„...ThisObject:class
 CryptoPP::DL_GroupParameters_IntegerBasedImpl<class CryptoPP::ModExpPrecomputation,
class CryptoPP::DL_FixedBasePrecomputationImpl<class CryptoPP::Integer> >.««««««««
 
Best Regards,
Voronkov Konstantin

Reply via email to