I can't see what valgrind is complaining about. I think it is reporting a 
false positive. Please contact valgrind's developer/support forum and see 
if this is a bug in their product.

On Tue, Nov 02, 2004 at 10:01:28AM +0800, tikcireviva wrote:
> Hi Guys,
> 
> This is the first time I've posted an e-mail in
> 
> I've tried to compile cryptopp under my linux box, and I have also used 
> it in my little program as well.
> What I concern in here is that, when I ran my program under valgrind 
> (the memory leak checking tool). It gave me the following error messages.
> 
> ==8113== Thread 7:
> ==8113== Use of uninitialised value of size 4
> ==8113==    at 0x80A5133: CryptoPP::RawDES::RawProcessBlock(unsigned&,
> unsigned&) const (des.cpp:328)
> ==8113==    by 0x80A5304:
> CryptoPP::DES_EDE2::Base::ProcessAndXorBlock(unsigned char const*, unsigned
> char const*, unsigned char*) const (des.cpp:361)
> ==8113==    by 0x80EA250: 
> CryptoPP::BlockTransformation::ProcessBlock(unsigned
> char*) const (cryptlib.h:435)
> ==8113==    by 0x814E293: CryptoPP::CBC_Encryption::ProcessBlocks(unsigned
> char*, unsigned char const*, unsigned) (modes.cpp:169)
> ==8113==
> 
> I wonder if I am doing anything wrong during the library compilation or 
> using the cryptopp functions.
> And here is my coding and rest of the information for my linux box.
> 
> int myCrypt::encryption(unsigned char* msg,
>            unsigned int msglen,
>            unsigned char* cipherBlock,
>            unsigned int cipherSize)
> {
>        // Create Array Sink
>        ArraySink *pCipherSink = new ArraySink((byte*)cipherBlock, 
> MAX_ENCRYPT_BLOCK_SIZE);
>        if(pCipherSink == NULL)
>        {
>            printf("Cannot allocate memory for ArraySink\n");
>            return 0; // zero or -1
>        }
>        DefaultEncryptorWithMAC encryptor(m_key, pCipherSink);
> 
>        // Encrypt the msg block
>        encryptor.Put((byte*)msg, msglen);
>        encryptor.MessageEnd();
> 
>        // Read data from the sink
>        int rtnCipherSize = pCipherSink->TotalPutLength();
> 
>        // Delete encryptor and sink
>        pCipherSink = NULL;
>        delete pCipherSink;
>        return rtnCipherSize;
> }
> 
> version of Crypto++ -- 5.2.1
> 
> compiler --
> Reading specs from /usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/specs
> Configured with: ../configure --prefix=/usr --libdir=/usr/lib 
> --with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info 
> --enable-shared --enable-threads=posix --disable-checking 
> --enable-long-long --enable-__cxa_atexit --enable-clocale=gnu 
> --enable-languages=c,c++,ada,f77,objc,java,pascal 
> --host=i586-mandrake-linux-gnu --with-system-zlib
> Thread model: posix
> gcc version 3.3.2 (Mandrake Linux 10.0 3.3.2-6mdk)
> 
> operating system --
> Linux mandrake10 2.6.3-7mdk #1 Wed Mar 17 15:56:42 CET 2004 i686 unknown 
> unknown GNU/Linux
> 
> I am really appreciate yours help. Guys, please comment on it, and I 
> will be glad to have some discussion though. Thank you very much.
> 
> - tikviva
> 
> 
> 

Reply via email to