You should probably just upgrade to Crypto++ 5.2.1, which fixes
 all of these problems.

Thanks this is exact what we desided to do, now we got working modified version with CRYPTOPP_DLL macro for all we want to import in our applications.

Regards and thank you much for this wonderful library,
Konstantin

P.S. I found one strange thing, that disabling
CRYPTOPP_ENABLE_COMPLIANCE_WITH_FIPS_140_2
macro do not turns off the dll integrity check (MAC). Because,
in case I have dll, then the check in DoPowerUpSelfTest()
if (FIPS_140_2_ComplianceEnabled() || moduleFilename != NULL)
returns that MAC of dll is to be performed. Is it on purpose? Why?


----- Original Message ----- From: "Wei Dai" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, October 29, 2004 5:17 AM
Subject: Re: CryptoPP and STLPort



You should probably just upgrade to Crypto++ 5.2.1, which fixes all of
these problems. It would be easier to add "CRYPTOPP_DLL" where you need it
to export the algorithms you use, instead of trying to apply the fixes
back to 5.1.

On Tue, Oct 26, 2004 at 12:56:34PM +0300, Voronkov Konstantin wrote:
Wei Dai, thanks for help, now we have other problem:

P:\include\stlport\stl/_alloc.h(506) : error C2784: 'class
_STL::allocator<_Tp2> &__cdecl _STL::__stl_alloc_rebind(class
_STL::allocator<_Tp1> &,const _Tp2 *)' : could not deduce template argument
for 'class _STL::allocator<_Tp> &' from 'class Crypt
oPP::AllocatorWithCleanup<struct CryptoPP::HuffmanDecoder::CodeInfo>'


P:\include\stlport\stl/_alloc.h(505) : while compiling class-template member
function 'void __thiscall _STL::_STLP_alloc_proxy<struct
CryptoPP::HuffmanDecoder::CodeInfo *,struct
CryptoPP::HuffmanDecoder::CodeInfo,class CryptoPP::AllocatorWit


hCleanup<struct CryptoPP::HuffmanDecoder::CodeInfo> >::deallocate(struct
CryptoPP::HuffmanDecoder::CodeInfo *,unsigned int)'

P:\include\stlport\stl/_alloc.h(506) : error C2784: 'class
_STL::allocator<_Tp2> &__cdecl _STL::__stl_alloc_rebind(class
_STL::allocator<_Tp1> &,const _Tp2 *)' : could not deduce template argument
for 'class _STL::allocator<_Tp> &' from 'class Crypt


oPP::AllocatorWithCleanup<struct CryptoPP::HuffmanDecoder::CodeInfo>'

P:\include\stlport\stl/_alloc.h(505) : while compiling class-template member
function 'void __thiscall _STL::_STLP_alloc_proxy<struct
CryptoPP::HuffmanDecoder::CodeInfo *,struct
CryptoPP::HuffmanDecoder::CodeInfo,class CryptoPP::AllocatorWit


hCleanup<struct CryptoPP::HuffmanDecoder::CodeInfo> >::deallocate(struct
CryptoPP::HuffmanDecoder::CodeInfo *,unsigned int)'

P:\include\stlport\stl/_alloc.h(506) : error C2228: left of '.deallocate'
must have class/struct/union type

P:\include\stlport\stl/_alloc.h(505) : while compiling class-template member
function 'void __thiscall _STL::_STLP_alloc_proxy<struct
CryptoPP::HuffmanDecoder::CodeInfo *,struct
CryptoPP::HuffmanDecoder::CodeInfo,class CryptoPP::AllocatorWit


hCleanup<struct CryptoPP::HuffmanDecoder::CodeInfo> >::deallocate(struct
CryptoPP::HuffmanDecoder::CodeInfo *,unsigned int)'


Is there a way to solve it, please?

Regards,
Konstantin


----- Original Message ----- From: "Wei Dai" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, October 26, 2004 11:37 AM
Subject: Re: CryptoPP and STLPort



> Modify iterhash.h and rename "hash" to something else. It's conflicting
> with the use of "hash" in STLport.
>
> On Tue, Oct 26, 2004 at 10:59:41AM +0300, Voronkov Konstantin wrote:
>> Hello, All!
>>
>> We have modified CryptoPP library version 5.1.
>> We had no problem build until installed STLport-4.6.2 library.
>> Now we have next errors:
>>
>> p:\include\cryptopp\iterhash.h(99) : error C2955: 'hash' : use of >> class
>> template requires template argument list
>> p:\include\stlport\stl\_hash_fun.h(40) : see declaration of
>> 'hash'
>> p:\include\stlport\stl\_alloc.h(349) : while compiling
>> class-template member function 'void __thiscall
>> CryptoPP::IteratedHashBase2<unsigned long,struct
>> CryptoPP::EnumToType<enum CryptoPP::ByteOrder,1>,class
>> CryptoPP::HashTransformation>::Tru
>> ncatedFinal(unsigned char *,unsigned int)'
>> p:\include\cryptopp\iterhash.h(99) : error C2955: 'hash' : use of >> class
>> template requires template argument list
>> p:\include\stlport\stl\_hash_fun.h(40) : see declaration of
>> 'hash'
>> p:\include\stlport\stl\_alloc.h(349) : while compiling
>> class-template member function 'void __thiscall
>> CryptoPP::IteratedHashBase2<unsigned __int64,struct
>> CryptoPP::EnumToType<enum CryptoPP::ByteOrder,1>,class
>> CryptoPP::HashTransformation>::
>> TruncatedFinal(unsigned char *,unsigned int)'
>> p:\include\cryptopp\iterhash.h(99) : error C2955: 'hash' : use of >> class
>> template requires template argument list
>> p:\include\stlport\stl\_hash_fun.h(40) : see declaration of
>> 'hash'
>> p:\include\stlport\stl\_alloc.h(349) : while compiling
>> class-template member function 'void __thiscall
>> CryptoPP::IteratedHashBase2<unsigned long,struct
>> CryptoPP::EnumToType<enum CryptoPP::ByteOrder,0>,class
>> CryptoPP::HashTransformation>::Tru
>> ncatedFinal(unsigned char *,unsigned int)'
>>
>> We build under Visual Studio 6 sp 5.
>> Can you give any hint how to work around this problem?
>>
>> Best Regards,
>> Voronkov Konstantin
>>
>> P.S. Sorry for such kind of report. I'm asking for help if this kind >> of
>> problem
>> was reached in non-modified version and there is a solution to it.
>> We need modified version of CryptoPP, because we want link CryptoPP
>> dynamically, but unfortunatelly not all crypto aglorithms
>> are exported from CryptoPP.
>
>





Reply via email to