Is anyone else seeing this? I just downloaded 5.5.1 from both cryptopp.com
and sourceforge, and simple_ptr in smartptr.h is correct at both locations.
----- Original Message -----
From: "EricD" <[EMAIL PROTECTED]>
To: "Crypto++ Users" <[EMAIL PROTECTED]>
Sent: Monday, June 04, 2007 11:53 AM
Subject: Re: symmetric cipher - visual C++ error
>
> that code is exactly as I downloaded it from 5.5.1.
>
> I also am running into another error. I attempt to run a batch build
> of cryptlib from the cryptest project. every time I get enough errors
> that I don't have any hope of getting cryptlib.lib. Is there a
> special trick to creating this library?
>
> On Jun 2, 10:10 pm, "Wei Dai" <[EMAIL PROTECTED]> wrote:
>> Where did this error come from? The class name of simple_ptr in my copy
>> of
>> smartptr.h is spelled correctly.
>>
>>
>>
>> ----- Original Message -----
>> From: "EricD" <[EMAIL PROTECTED]>
>> To: "Crypto++ Users" <[EMAIL PROTECTED]>
>> Sent: Friday, June 01, 2007 1:59 PM
>> Subject: Re: symmetric cipher - visual C++ error
>>
>> > I caught it about 30 min. after I posted that...thanks to that error I
>> > now know C++ a lot more than I want to
>>
>> > On Jun 1, 4:46 pm, "Jeffrey Walton" <[EMAIL PROTECTED]> wrote:
>> >> Hi Shane,
>>
>> >> Good catch. I wasted about 4 hours on a fat fingered typo like that -
>> >> trying to figure out what I was doing wrong with the library...
>>
>> >> Jeff
>>
>> >> On 6/1/07, Shane Kirk <[EMAIL PROTECTED]> wrote:
>>
>> >> > The template class name is "simple_prt", but the constructor is
>> >> > "simple_ptr". I could see how this would cause your error. Unless of
>> >> > course it was simply a typo in your email.
>>
>> >> > -Shane
>>
>> >> > --- [EMAIL PROTECTED] wrote:
>>
>> >> > From: EricD <[EMAIL PROTECTED]>
>> >> > To: Crypto++ Users <[EMAIL PROTECTED]>
>> >> > Subject: symmetric cipher - visual C++ error
>> >> > Date: Fri, 01 Jun 2007 12:25:22 -0700
>>
>> >> > I am trying to run a symmetric cipher with visual C++ express 2005,
>> >> > and keep getting an error linked to smartptr.h of the crypto++
>> >> > library. I encounter the errors C2590 ('simple_ptr' : only a
>> >> > constructor can have a base/member initializer list) and C2523
>> >> > ('CryptoPP::simple_prt<T>::~simple_ptr' : destructor tag mismatch).
>> >> > They reference this code:
>>
>> >> > template <class T> class simple_prt
>> >> > {
>> >> > public:
>> >> > simple_ptr() : m_p(NULL) {} //error C2590
>> >> > ~simple_ptr() {delete m_p;} //error C2523
>> >> > T *m_p;
>> >> > };
>>
>> >> > I am pretty sure C2523 will dissapear if C2590 is resolved, but the
>> >> > errors are within the crypto library...and I am at a loss.
>>
>> >> > I have run the code with and without sp1, on windows vista and 2000,
>> >> > and have tried the vista patch for visual C++ as well.
>>
>> >> > If it helps, below is the full program which shows what my goal is
>> >> > for
>> >> > this code.
>>
>> >> > // PreCompiled Header
>> >> > #include "StdAfx.h"
>>
>> >> > // Includes all required Crypto++
>> >> > // Block Cipher Headers
>> >> > #include "SymmetricCipher.h"
>>
>> >> > // C Runtime Includes
>> >> > #include <iostream>
>> >> > #include <iomanip>
>>
>> >> > // Crypto++ Includes
>> >> > // #include "cryptlib.h"
>> >> > #include "crypto++/modes.h" // xxx_Mode< >
>> >> > #include "crypto++/filters.h" // StringSource and
>> >> > // StreamTransformation
>>
>> >> > // Cipher Modes
>> >> > //
>> >> > // #define CIPHER_MODE CBC_CTS_Mode
>> >> > #define CIPHER_MODE CBC_Mode
>> >> > // #define CIPHER_MODE CFB_FIPS_Mode
>> >> > // #define CIPHER_MODE CFB_Mode
>> >> > // #define CIPHER_MODE CTR_Mode
>> >> > // #define CIPHER_MODE ECB_Mode
>> >> > // #define CIPHER_MODE OFB_Mode
>>
>> >> > // Ciphers
>> >> > //
>> >> > #define CIPHER AES
>> >> > // #define CIPHER Blowfish
>> >> > // #define CIPHER BTEA
>> >> > // #define CIPHER Camellia
>> >> > // #define CIPHER CAST128
>> >> > // #define CIPHER CAST256
>> >> > // #define CIPHER DES
>> >> > // #define CIPHER DES_EDE2
>> >> > // #define CIPHER DES_EDE3
>> >> > // #define CIPHER DES_XEX3
>> >> > // #define CIPHER GOST
>> >> > // #define CIPHER IDEA
>> >> > // #define CIPHER MARS
>> >> > // #define CIPHER RC2
>> >> > // #define CIPHER RC5
>> >> > // #define CIPHER RC6
>> >> > // #define CIPHER Rijndael
>> >> > // #define CIPHER SAFER_K
>> >> > // #define CIPHER SAFER_SK
>> >> > // #define CIPHER Serpent
>> >> > // #define CIPHER SHACAL2
>> >> > // #define CIPHER SHARK
>> >> > // #define CIPHER SKIPJACK
>> >> > // #define CIPHER ThreeWay
>> >> > // #define CIPHER Twofish
>> >> > // #define CIPHER XTEA
>>
>> >> > int main(int argc, char* argv[]) {
>>
>> >> > try
>> >> > {
>> >> > // Key and IV setup
>> >> > byte key[ CryptoPP::CIPHER::DEFAULT_KEYLENGTH ],
>> >> > iv[ CryptoPP::CIPHER::BLOCKSIZE ];
>>
>> >> > ::memset( key, 0x01, CryptoPP::CIPHER::DEFAULT_KEYLENGTH );
>> >> > ::memset( iv, 0x01, CryptoPP::CIPHER::BLOCKSIZE );
>>
>> >> > // Message M
>> >> > std::string PlainText = "Yoda said, Do or Do Not. There is no
>> >> > try.";
>>
>> >> > // Cipher Text Sink
>> >> > std::string CipherText;
>>
>> >> > // Encryptor
>> >> > CryptoPP::CIPHER_MODE<CryptoPP::CIPHER>::Encryption
>> >> > Encryptor( key, sizeof(key), iv );
>>
>> >> > // Encryption
>> >> > CryptoPP::StringSource( PlainText, true,
>> >> > new CryptoPP::StreamTransformationFilter( Encryptor,
>> >> > new CryptoPP::StringSink( CipherText )
>> >> > ) // StreamTransformationFilter
>> >> > ); // StringSource
>>
>> >> > ///////////////////////////////////////
>> >> > // DMZ //
>> >> > ///////////////////////////////////////
>>
>> >> > // Recovered Text Sink
>> >> > std::string RecoveredText;
>>
>> >> > // Decryptor
>> >> > CryptoPP::CIPHER_MODE<CryptoPP::CIPHER>::Decryption
>> >> > Decryptor( key, sizeof(key), iv );
>>
>> >> > // Decryption
>> >> > CryptoPP::StringSource( CipherText, true,
>> >> > new CryptoPP::StreamTransformationFilter( Decryptor,
>> >> > new CryptoPP::StringSink( RecoveredText )
>> >> > ) // StreamTransformationFilter
>> >> > ); // StringSource
>>
>> >> > //////////////////////////////////////////
>> >> > // Output //
>> >> > //////////////////////////////////////////
>>
>> >> > std::cout << "Algorithm:" << std::endl;
>> >> > std::cout << " " << Encryptor.AlgorithmName() << std::endl;
>> >> > std::cout << "Minimum Key Size:" << std::endl;
>> >> > std::cout << " " << Encryptor.MinKeyLength() << " bytes" <<
>> >> > std::endl;
>> >> > std::cout << std::endl;
>>
>> >> > std::cout << "Plain Text (" << PlainText.length() << " bytes)"
>> >> > << std::endl;
>> >> > std::cout << " '" << PlainText << "'" << std::endl;
>> >> > std::cout << std::endl;
>>
>> >> > std::cout << "Cipher Text Size:" << std::endl;
>> >> > std::cout << " " << CipherText.size() << " bytes" << std::endl;
>> >> > std::cout << std::endl;
>>
>> >> > std::cout << "Recovered Text:" << std::endl;
>> >> > std::cout << " '" << RecoveredText << "'" << std::endl;
>> >> > std::cout << std::endl;
>> >> > }
>> >> > catch( CryptoPP::Exception& e)
>> >> > {
>> >> > std::cerr << e.what() << std::endl;
>> >> > }
>>
>> >> > catch(...)
>> >> > {
>> >> > std::cerr << "Unknown Error" << std::endl;
>> >> > }
>>
>> >> > return 0;
>> >> > }- Hide quoted text -
>>
>> >> - Show quoted text -- Hide quoted text -
>>
>> - Show quoted text -
>
>
> >
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the "Crypto++ Users"
Google Group.
To unsubscribe, send an email to [EMAIL PROTECTED]
More information about Crypto++ and this group is available at
http://www.cryptopp.com.
-~----------~----~----~----~------~----~------~--~---